你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

在 Teams 互操作性聊天中启用使用 UI 库共享的文件

在 Teams 互操作性聊天(“互操作聊天”)中,我们可以在 Azure 通信服务最终用户与 Teams 用户之间启用文件共享。 请注意,“互操作聊天”不同于 Azure 通信服务聊天。 如果要在 Azure 通信服务聊天中启用文件共享,请参阅在 Azure 通信服务聊天中使用 UI 库添加文件共享。 目前,Azure 通信服务最终用户只能接受来自 Teams 用户的文件附件。 有关详细信息,请参阅 UI 库用例

重要

文件分享功能随 CallWithChat 复合组件一起提供,无需其他设置。

下载代码

GitHub 上访问本教程的代码。

先决条件

背景

首先,我们需要了解 Teams 互操作性聊天当前必须是 Teams 会议的一部分。 Teams 用户创建联机会议时,将创建一个聊天会话并将其与会议相关联。 若要使 Azure 通信服务最终用户能够加入聊天并开始发送/接收消息,会议参与者(Teams 用户)需要先允许他们加入通话。 否则,他们无权访问聊天。

一旦 Azure 通信服务最终用户被允许加入通话,他们就可以开始与通话中的其他参与者聊天。 在本教程中,我们将了解内联图像在互操作性聊天中的工作原理。

概述

与向 UI 库添加内联图像支持的方式类似,我们需要创建 CallWithChat 复合组件。 让我们按照 storybook 页面中的基本示例创建 ChatWithChat 复合组件。

在示例代码中,它需要 CallWithChatExampleProps,这定义为以下代码片段:

export type CallWithChatExampleProps = {
  // Props needed for the construction of the CallWithChatAdapter
  userId: CommunicationUserIdentifier;
  token: string;
  displayName: string;
  endpointUrl: string;
  locator: TeamsMeetingLinkLocator | TeamsMeetingIdLocator | CallAndChatLocator;

  // Props to customize the CallWithChatComposite experience
  fluentTheme?: PartialTheme | Theme;
  compositeOptions?: CallWithChatCompositeOptions;
  callInvitationURL?: string;
};

为了能够为会议聊天启动复合组件,我们需要通过 TeamsMeetingLinkLocatorTeamsMeetingIdLocator,如下所示:

{ "meetingLink": "<TEAMS_MEETING_LINK>" }

{ "meetingId": "<TEAMS_MEETING_ID>", "passcode": "<TEAMS_MEETING_PASSCODE>"}

这就是你需要的全部 - 无需进行其他设置即可使 Azure 通信服务最终用户能够从 Teams 用户接收文件附件!

权限

从 Teams 客户端共享文件时,Teams 用户可以选择将文件权限设置为:

  • “所有人”
  • “组织中的人员”
  • “当前在此聊天中的人员”
  • “具有现有访问权限的人员”
  • “你选择的人员”

具体而言,UI 库目前仅支持“任何人”和“你选择的人员”(带电子邮件地址),不支持所有其他权限。 如果 Teams 用户发送了具有不受支持的权限的文件,则在 Azure 通信服务最终用户单击聊天线程中的文件附件时,可能会提示他们进入登录页或拒绝访问。

列出文件权限的 Teams 客户端的屏幕截图。

此外,Teams 用户的租户管理员可能会对文件共享施加限制,包括禁用某些文件访问权限或完全禁用文件共享选项。

运行代码

我们运行 npm run start,然后你应该就能够通过 localhost:3000 访问示例应用了,如以下屏幕截图所示:

Azure 通信服务 UI 库的屏幕截图。

只需单击位于底部的聊天按钮即可显示聊天面板,现在如果 Teams 用户发送一些文件,你应会看到类似于以下屏幕截图的内容:

Teams 客户端正在发送一个文件的屏幕截图。

正在接收一个文件的 Azure 通信服务 UI 库的屏幕截图。

现在,如果用户单击文件附件卡,则会打开一个新选项卡,如下所示,用户可以在其中下载文件:

显示文件内容的 Sharepoint 网页。

后续步骤

你可能还想要: