为 Teams 会议阶段生成应用

“共享到阶段”允许用户将应用从正在进行的会议中的会议侧面板共享到会议阶段。 与被动屏幕共享相比,这种共享是交互式和协作的。

若要调用共享到阶段,用户可以选择会议侧面板右上角的 “共享到舞台 ”图标。 “共享到阶段 ”图标是 Teams 客户端的本机图标,选择该图标会将整个应用共享到会议阶段。

会议阶段应用的应用清单设置

若要将应用共享到会议阶段,必须在 应用清单中配置上下文和 RSC 权限:

  1. context按如下所示更新应用清单中的 属性:

    "context": [
      "meetingSidePanel",
      "meetingStage"
    ]
    
  2. 通过配置 authorization 属性以及 字段中的 resourceSpecificnametype 来获取 RSC 权限,如下所示:

    "authorization": {
      "permissions": {
        "resourceSpecific": [
          {
            "name": "MeetingStage.Write.Chat",
            "type": "Delegated"
          }
        ]
      }
    }
    

高级共享到阶段 API

在许多情况下,将整个应用共享到会议阶段并不像共享应用的特定部分那样有用:

  1. 对于集思广益或白板应用,用户可能需要在会议中共享特定的板,而不是与所有板共享整个应用。

  2. 对于医疗应用,医生可能只想与患者共享屏幕上的 X 射线,而不是将所有患者记录或结果等共享整个应用。

  3. 用户可能希望一次共享来自单个内容提供商的内容, (例如 YouTube) 而不是在舞台上共享整个视频目录。

为了在这些情况下帮助用户,我们在 Microsoft Teams JavaScript 客户端库中发布了 API (TeamsJS) ,使你能够从会议侧面板中的按钮以编程方式调用共享以暂存应用的特定部分。

下图显示了 Teams 桌面客户端中的“共享到暂存”选项:

屏幕截图显示了共享到会议的 Stageview。

使用以下 API 共享应用的特定部分:

方法 说明
将应用内容共享到演示区域 从会议中的会议侧面板将应用的特定部分共享到会议阶段。 TeamsJS 库
获取应用内容演示区域共享状态 获取会议演示区域应用共享状态的信息。 TeamsJS 库
获取应用内容演示区域共享功能 获取应用共享到会议演示区域的功能。 TeamsJS 库

将应用内容共享到演示区域

shareAppContentToStage API 能够帮助将应用的特定部分共享到会议演示区域。 可以通过 TeamsJS 库获取 API。

先决条件

appContentUrl 必须允许 validDomains manifest.json内的数组,否则 API 返回 501 错误。

查询参数

下表列出了查询参数:

类型 必需 说明
callback 字符串 回调包含 error 和 result 两个参数。 该 错误 可以包含 SdkError 类型的错误,也可以在共享成功时包含 null。 如果共享成功, 则结果 可以包含 true 值,或者在共享失败时为 null。
appContentURL 字符串 将共享到演示区域上的 URL。

示例

const appContentUrl = "https://www.bing.com/";

microsoftTeams.meeting.shareAppContentToStage((err, result) => {
    if (result) {
        // handle success
    }
    if (err) {
        // handle error
    }
}, appContentUrl);

响应代码

下表列出了响应代码:

响应代码 说明
500 内部错误。
501 当前上下文中不支持 API。
1000 应用没有允许共享到阶段的适当权限。

获取应用内容演示区域共享状态 API

通过 getAppContentStageSharingState API,可以提取有关在会议舞台上共享的应用的信息。

查询参数

下表包含查询参数:

类型 必需 说明
callback 字符串 回调包含 error 和 result 两个参数。 如果出现错误, 该错误 可以包含 SdkError 类型的错误,也可以在共享成功时包含 null。 当共享成功时,结果可以包含对象;如果发生错误,则 结果 可以包含 IAppContentStageSharingState null。

示例

microsoftTeams.meeting.getAppContentStageSharingState((err, result) => {
    if (result.isAppSharing) {
        // Indicates if app is sharing content on the meeting stage.
    }
});

getAppContentStageSharingState API 的 JSON 响应正文为:

{
  "isAppSharing": true
}

响应代码

下表列出了响应代码:

响应代码 说明
500 内部错误。
501 当前上下文中不支持 API。
1000 应用没有允许共享到阶段的适当权限。

获取应用内容演示区域共享功能 API

通过 getAppContentStageSharingCapabilities API,可以提取应用的功能,以便将应用内容共享到会议阶段。 应用需要调用 getAppContentStageSharingCapabilities API 来启用或禁用会议侧面板中会议参与者的自定义共享暂存按钮。 如果会议参与者无权将应用内容共享到会议阶段,则必须禁用或隐藏“共享到阶段”按钮。

应用共享功能取决于会议中的租户用户类型和参与者角色。

  • 用户类型:租户内、来宾和外部用户类型参与者可以共享应用以暂存,还可以查看在舞台上共享的应用并与之交互。 匿名用户无法查看、共享在舞台上共享的应用或与之交互。 有关详细信息,请参阅 会议中的用户类型。

  • 用户角色:在会议中具有演示者和组织者用户角色的参与者可以共享应用以暂存。 与会者不会启用“暂存共享”按钮,并且无法共享要暂存的应用。 有关详细信息,请参阅 Teams 会议中的用户角色。

查询参数

下表包含查询参数:

类型 必需 说明
callback 字符串 回调包含 error 和 result 两个参数。 该 错误 可以包含 SdkError 类型的错误,也可以在共享成功时包含 null。 当共享成功时,结果可以包含对象,如果发生错误,则结果可以包含 IAppContentStageSharingCapabilities null。

示例

microsoftTeams.meeting.getAppContentStageSharingCapabilities((err, result) => {
    if (result.doesAppHaveSharePermission) {
        // Indicates if the meeting participant has permission to share content to the meeting stage.
    }
});

getAppContentStageSharingCapabilities API 的 JSON 响应正文为:

{
   "doesAppHaveSharePermission":true
} 

响应代码

下表列出了响应代码:

响应代码 说明
500 内部错误。
501 当前上下文中不支持 API。
1000 应用没有权限允许共享到暂存。

生成会议中文档签名应用

可以生成会议内应用,使会议参与者能够实时对文档进行签名。 它有助于在单个会话中查看和签名文档。 参与者可以使用其当前租户标识对文档进行签名。

可以使用会议内签名应用来:

  • 添加在会议期间要审阅的文档。
  • 共享要审阅到main阶段的文档。
  • 使用签名者的标识对文档进行签名。

参与者可以查看和签署文档,例如购买协议和采购订单。

显示会议内文档签名应用的屏幕截图

会议期间可能会涉及以下参与者角色:

  • 文档创建者:此角色可以添加自己的文档进行审阅和签名。
  • 签名者:此角色可以对审阅的文档进行签名。
  • 读者:此角色可以查看添加到会议的文档。

按用户类型分类的功能兼容性

下表提供了用户类型,并列出了每个用户都可以在会议中访问的功能:

用户类型 计划会议或即时日历会议 一对一通话 群组呼叫 计划的频道会议
租户内 演示者或组织者可以在会议阶段启动、查看应用并与之交互。

与会者只能查看和交互。
演示者或组织者可以在会议舞台上启动、查看应用并与之交互。

与会者只能查看和交互。
演示者或组织者可以在会议舞台上启动、查看应用并与之交互。

与会者只能查看和交互。
演示者或组织者可以在会议舞台上启动、查看应用并与之交互。

与会者只能查看和交互。
Guest 演示者或组织者可以在会议阶段启动、查看应用并与之交互。

与会者只能查看和交互。
演示者或组织者可以在会议舞台上启动、查看应用并与之交互。

与会者只能查看和交互。
演示者或组织者可以在会议舞台上启动、查看应用并与之交互。

与会者只能查看和交互。
演示者或组织者可以在会议舞台上启动、查看应用并与之交互。

与会者只能查看和交互。
联合或外部 演示者可以在会议阶段启动、查看应用并与之交互。

与会者只能查看和交互。
不可用 不可用 演示者可以在会议舞台上启动、查看应用并与之交互。

与会者只能查看和交互。
匿名 演示者可以在会议舞台上启动、查看应用并与之交互。

与会者只能查看和交互。
不可用 不可用 不可用

代码示例

示例名称 Description .NET Node.js 清单
会议阶段示例 此示例应用在会议阶段显示一个用于协作的选项卡。 此示例还对协作阶段视图使用实时共享 SDK。 View View View
会议内通知 演示如何使用机器人实现会议内通知。 View View View
会议内文档签名 此示例应用演示如何实现文档签名 Teams 应用。 包括将特定应用内容共享到阶段、Teams SSO 和特定于用户的 Stageview。 View NA NA

分步指南

按照 分步指南 生成会议内文档签名应用。

另请参阅