Teams 会議ステージ用のアプリを構築する

[ステージに共有] を使用すると、ユーザーは進行中の会議の会議側パネルから会議ステージにアプリを共有できます。 この共有は、パッシブ画面共有と比較して対話型で共同作業が可能です。

共有をステージに呼び出すには、ユーザーは会議側パネルの右上にある [ Share to Stage]\(ステージに共有 \) アイコンを選択できます。 [ステージに共有 ] アイコンは Teams クライアントにネイティブであり、アプリ全体を会議ステージに共有することを選択します。

会議ステージのアプリのアプリ マニフェスト設定

アプリを会議ステージに共有するには、 アプリ マニフェストでコンテキストと RSC アクセス許可を構成する必要があります。

  1. アプリ マニフェストの context プロパティを次のように更新します。

    "context": [
      "meetingSidePanel",
      "meetingStage"
    ]
    
  2. プロパティと typename フィールドの と をauthorization次のように構成して、RSC のアクセス許可をresourceSpecific取得します。

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

高度な共有からステージング API

アプリ全体を会議ステージに共有すると、アプリの特定の部分を共有するほど役に立たないシナリオは多数あります。

  1. ブレーンストーミング アプリまたはホワイトボード アプリの場合、ユーザーは会議で特定のボードを共有し、アプリ全体をすべてのボードと共有したい場合があります。

  2. 医療アプリの場合、医師は画面上の X 線だけを患者と共有し、アプリ全体をすべての患者の記録や結果と共有したい場合があります。

  3. ユーザーは、一度に 1 つのコンテンツ プロバイダー (YouTube など) からコンテンツを共有し、ビデオ カタログ全体をステージに共有することができます。

このようなシナリオでユーザーを支援するために、Microsoft Teams JavaScript クライアント ライブラリ (TeamsJS) 内の API をリリースしました。これにより、会議側パネルのボタンからアプリの特定の部分のステージに共有をプログラムで呼び出すことができます。

次の図は、Teams デスクトップ クライアントの [ステージへの共有] オプションを示しています。

会議のステージビューへの共有を示すスクリーンショット。

アプリの特定の部分を共有するには、次の API を使用します。

メソッド 説明 ソース
アプリ コンテンツをステージに共有する 会議の会議側パネルから、アプリの特定の部分を会議ステージに共有します。 TeamsJS ライブラリ
アプリ コンテンツ ステージの共有状態を取得する 会議ステージでアプリの共有状態に関する情報を取得します。 TeamsJS ライブラリ
アプリ コンテンツ ステージの共有機能を取得する 共有のためのアプリの機能を会議ステージに取得します。 TeamsJS ライブラリ

アプリ コンテンツをステージに共有する API

shareAppContentToStage API を使用すると、アプリの特定の部分を会議ステージに対して共有できます。 API は TeamsJS ライブラリを介して使用できます。

前提条件

appContentUrl は、manifest.json内の配列で validDomains 許可する必要があります。それ以外の場合、API は 501 エラーを返します。

クエリ パラメーター

次の表に、クエリ パラメーターを示します。

必須 説明
callback String はい コールバックには、エラーと結果という 2 つのパラメーターが含まれています。 このエラーには、SdkError 型のエラーまたは共有が成功した場合は null を含めることができます。 成功した共有がある場合は true 値、共有が失敗した場合は null を含めることができます。
appContentURL String はい ステージ上で共有される 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 String はい コールバックには、エラーと結果という 2 つのパラメーターが含まれています。 エラーには、エラーの場合は 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 を使用すると、アプリのコンテンツを会議ステージに共有するためのアプリの機能をフェッチできます。 アプリは API を呼び出して、 getAppContentStageSharingCapabilities 会議側パネルで会議参加者のカスタム共有をステージ ボタンに有効または無効にする必要があります。 会議参加者がアプリ コンテンツを会議ステージに共有するアクセス許可がない場合は、[ステージ間共有] ボタンを無効または非表示にする必要があります。

アプリ共有機能は、テナント ユーザーの種類と会議の参加者ロールによって異なります。

  • ユーザーの種類: テナント内、ゲスト、および外部のユーザーの種類の参加者は、ステージにアプリを共有したり、ステージで共有されているアプリを表示したり操作したりできます。 匿名ユーザーは、ステージで共有されているアプリを表示、共有、または操作できません。 詳細については、「会議のユーザーの種類」を参照してください。

  • ユーザー ロール: 会議で発表者と開催者のユーザー ロールを持つ参加者は、アプリをステージに共有できます。 出席者には、[ステージへの共有] ボタンが有効になっており、アプリをステージに共有することはできません。 詳細については、「Teams 会議のユーザー ロール」を参照してください。

クエリ パラメーター

次の表に、クエリ パラメーターを示します。

必須 説明
callback String はい コールバックには、エラーと結果という 2 つのパラメーターが含まれています。 このエラーには、SdkError 型のエラーまたは共有が成功した場合は null を含めることができます。 結果には、共有が成功した場合はオブジェクト、エラーの場合は null を含 IAppContentStageSharingCapabilities めることができます。

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 アプリには、共有のステージングを許可するアクセス許可がありません。

会議内ドキュメント署名アプリを構築する

会議参加者がリアルタイムでドキュメントに署名できるようにするための会議内アプリを構築できます。 1 つのセッションでドキュメントのレビューと署名を容易にします。 参加者は、現在のテナント ID を使用してドキュメントに署名できます。

会議内署名アプリを使用すると、次のことができます。

  • 会議中に確認するドキュメントを追加します。
  • メインステージにレビューするドキュメントを共有します。
  • 署名者の ID を使用してドキュメントに署名します。

参加者は、購買契約や発注書などのドキュメントを確認して署名できます。

会議中のドキュメント署名アプリを示すスクリーンショット

会議中には、次の参加者ロールが関与する場合があります。

  • ドキュメント作成者: このロールは、レビューおよび署名する独自のドキュメントを追加できます。
  • 署名者: このロールは、レビューされたドキュメントに署名できます。
  • 閲覧者: このロールは、会議に追加されたドキュメントを表示できます。

ユーザーの種類別の機能の互換性

次の表に、ユーザーの種類と、各ユーザーが会議でアクセスできる機能の一覧を示します。

ユーザーの種類 スケジュールされた会議またはインスタント 予定表会議 1 対 1 の呼び出し グループ呼び出し スケジュールされたチャネル会議
テナント内 発表者または開催者は、会議ステージでアプリを開始、表示、操作できます。

出席者は、表示と対話のみが可能です。
発表者または開催者は、会議ステージでアプリを開始、表示、操作できます。

出席者は、表示と対話のみが可能です。
発表者または開催者は、会議ステージでアプリを開始、表示、操作できます。

出席者は、表示と対話のみが可能です。
発表者または開催者は、会議ステージでアプリを開始、表示、操作できます。

出席者は、表示と対話のみが可能です。
Guest 発表者または開催者は、会議ステージでアプリを開始、表示、操作できます。

出席者は、表示と対話のみが可能です。
発表者または開催者は、会議ステージでアプリを開始、表示、操作できます。

出席者は、表示と対話のみが可能です。
発表者または開催者は、会議ステージでアプリを開始、表示、操作できます。

出席者は、表示と対話のみが可能です。
発表者または開催者は、会議ステージでアプリを開始、表示、操作できます。

出席者は、表示と対話のみが可能です。
フェデレーションまたは外部 発表者は、会議ステージでアプリを開始、表示、操作できます。

出席者は、表示と対話のみが可能です。
使用不可 使用不可 発表者は、会議ステージでアプリを開始、表示、操作できます。

出席者は、表示と対話のみが可能です。
匿名 発表者は、会議ステージでアプリを開始、表示、操作できます。

出席者は、表示と対話のみが可能です。
使用不可 使用不可 使用不可

コード サンプル

サンプルの名前 説明 .NET Node.js マニフェスト
会議ステージのサンプル このサンプル アプリは、コラボレーションの会議ステージのタブを示しています。 このサンプルでは、コラボレーション Stageview にライブ共有 sdk も使用します。 表示 表示 表示
会議中の通知 ボットを使用して会議内通知を実装する方法を示します。 表示 表示 表示
会議内ドキュメントの署名 このサンプル アプリでは、Teams アプリに署名するドキュメントを実装する方法を示します。 ステージへの特定のアプリ コンテンツの共有、Teams SSO、ユーザー固有のステージ ビューが含まれます。 表示 該当なし 該当なし

ステップ バイ ステップのガイド

詳細 なガイド に従って、会議内ドキュメント署名アプリを作成します。

関連項目