Azure Communication Services Calling SDK を使用すると、Teams ユーザー デバイスで音声とビデオによる通信操作を行うことができます。 このページでは、プラットフォームとブラウザーのサポート情報を含め、通話機能について詳しく説明します。 JavaScript の使用をすぐに開始するには、通話のクイックスタートに関するページをご覧ください。
Calling SDK の主な機能は次のとおりです。
- アドレス指定 - Azure Communication Services は、Microsoft Entra のユーザー ID を使用して通信エンドポイントをアドレス指定します。 クライアントは、Microsoft Entra ID を使用してサービスに対する認証を行い、相互に通信します。 これらの ID は、通話に接続されているユーザーが誰なのか (名簿) をクライアントが可視化できるようにする通話 API で使用されます。 これらは、Microsoft Graph API でも使用されます。
- 暗号化 - Calling SDK によってトラフィックが暗号化され、送信中の改ざんを防ぎます。
- デバイス管理とメディア - Calling SDK は、オーディオ デバイスとビデオ デバイスへのバインド機能、通信データプレーンを介した効率的な送信のためのコンテンツのエンコード機能、指定した出力デバイスおよび出力ビューへのコンテンツのレンダリング機能を提供します。 画面とアプリケーションの共有用 API も用意されています。
- 通知 - Calling SDK から API が提供され、通話の着信がクライアントに通知されるようになります。 アプリがフォアグラウンドで実行されていない状況では、ポップアップ通知を起動して ("トースト")、通話の着信をユーザーに通知するというパターンを使用できます。
呼び出し機能
次の一覧は、一対一のボイス オーバー IP 通話 (VoIP) またはグループ VoIP 通話に参加するときに、Azure Communication Services Calling SDK で現在使用できる機能のセットを示しています。
| 機能のグループ | 機能 | JavaScript | Windows | Java (Android) | Objective-C (iOS) |
|---|---|---|---|---|---|
| コア機能 | Teams ユーザーへの一対一の通話を行う | ✔️ | ✔️ | ✔️ | ✔️ |
| Azure Communication Services ユーザーへの一対一の通話を行う | ❌ | ❌ | ❌ | ❌ | |
| 3 人以上の Teams ユーザーでグループ通話を行う (最大 350 ユーザー) | ✔️ | ✔️ | ✔️ | ✔️ | |
| 2 人の Teams ユーザーによる一対一の通話を 3 人以上の Teams ユーザーによるグループ通話に昇格させる | ✔️ | ✔️ | ✔️ | ✔️ | |
| 開始後にグループ通話に参加する | ❌ | ❌ | ❌ | ❌ | |
| 別の VoIP 参加者を招待して、進行中のグループ通話に参加させる | ✔️ | ✔️ | ✔️ | ✔️ | |
| オーディオ テスト サービスを使用して、マイク、スピーカー、およびカメラをテストする (8:echo123 に通話することで利用可能) | ✔️ | ✔️ | ✔️ | ✔️ | |
| Teams の外部アクセス構成を優先して電話をかける | ✔️ | ✔️ | ✔️ | ✔️ | |
| Teams のゲスト アクセス構成を優先して電話をかける | ✔️ | ✔️ | ✔️ | ✔️ | |
| 通話中の制御 | ビデオをオンまたはオフにする | ✔️ | ✔️ | ✔️ | ✔️ |
| マイクをミュート/ミュート解除する | ✔️ | ✔️ | ✔️ | ✔️ | |
| カメラを切り替える | ✔️ | ✔️ | ✔️ | ✔️ | |
| ローカルの保留/保留解除 | ✔️ | ✔️ | ✔️ | ✔️ | |
| 通話中の主要話者のインジケーター | ✔️ | ✔️ | ✔️ | ✔️ | |
| 通話用のスピーカー デバイスを選択する | ✔️ | ✔️ | ❌ 2 | ❌ 2 | |
| 通話用のマイクを選択する | ✔️ | ✔️ | ❌ 2 | ❌ 2 | |
| 参加者の状態のインジケーター アイドル状態、初期メディア、接続中、接続、保留中、ロビー、切断 |
✔️ | ✔️ | ✔️ | ✔️ | |
| 通話の状態のインジケーター 初期メディア、着信、接続中、呼び出し中、接続、保留、切断中、切断 |
✔️ | ✔️ | ✔️ | ✔️ | |
| ミュートされている参加者を示す | ✔️ | ✔️ | ✔️ | ✔️ | |
| 通話を終了する参加者の理由を示す | ✔️ | ✔️ | ✔️ | ✔️ | |
| 画面共有 | アプリケーション内から画面全体を共有する | ✔️ | ✔️1 | ✔️1 | ✔️1 |
| (実行中のアプリケーションの一覧から) 特定のアプリケーションを共有する | ✔️ | ✔️1 | ❌ | ❌ | |
| 開いているタブの一覧から Web ブラウザー タブを共有する | ✔️ | ✔️ | ✔️ | ✔️ | |
| 画面共有ストリームを受信する | ❌ | ❌ | ❌ | ❌ | |
| "コンテンツのみ" モードでコンテンツを共有する | ✔️ | ✔️ | ✔️ | ✔️ | |
| "コンテンツのみ" 画面共有エクスペリエンスのコンテンツを含むビデオ ストリームを受信する | ✔️ | ✔️ | ✔️ | ✔️ | |
| "スタンドアウト" モードでコンテンツを共有する | ❌ | ❌ | ❌ | ❌ | |
| "スタンドアウト" 画面共有エクスペリエンスのコンテンツを含むビデオ ストリームを受信する | ❌ | ❌ | ❌ | ❌ | |
| "横に並べて表示" モードでコンテンツを共有する | ❌ | ❌ | ❌ | ❌ | |
| "横に並べて表示" 画面共有エクスペリエンスのコンテンツを含むビデオ ストリームを受信する | ❌ | ❌ | ❌ | ❌ | |
| "レポーター" モードでコンテンツを共有する | ❌ | ❌ | ❌ | ❌ | |
| "レポーター" 画面共有エクスペリエンスのコンテンツを含むビデオ ストリームを受信する | ❌ | ❌ | ❌ | ❌ | |
| 画面共有中にシステム オーディオを共有する | ✔️ | ❌ | ❌ | ❌ | |
| Roster | 参加者の一覧表示 | ✔️ | ✔️ | ✔️ | ✔️ |
| Azure Communication Services ユーザーを追加する | ❌ | ❌ | ❌ | ❌ | |
| Teams ユーザーを追加する | ✔️ | ✔️ | ✔️ | ✔️ | |
| Teams の外部アクセス構成を適用して Teams ユーザーを追加する | ✔️ | ✔️ | ✔️ | ✔️ | |
| Teams のゲスト アクセス構成を適用して Teams ユーザーを追加する | ✔️ | ✔️ | ✔️ | ✔️ | |
| 電話番号を追加する | ✔️ | ✔️ | ✔️ | ✔️ | |
| 参加者の削除 | ✔️ | ✔️ | ✔️ | ✔️ | |
| ロビーにいる参加者を Teams 会議に参加させる | ✔️ | ✔️ | ✔️ | ✔️ | |
| ロビーから Teams 会議に参加する | ✔️ | ✔️ | ✔️ | ✔️ | |
| 情報バリアを適用して Teams ユーザーを追加する | ✔️ | ✔️ | ✔️ | ✔️ | |
| デバイスの管理 | オーディオまたはビデオを使用するアクセス許可を求める | ✔️ | ✔️ | ✔️ | ✔️ |
| カメラの一覧を取得する | ✔️ | ✔️ | ✔️ | ✔️ | |
| カメラを設定する | ✔️ | ✔️ | ✔️ | ✔️ | |
| 選択したカメラを取得する | ✔️ | ✔️ | ✔️ | ✔️ | |
| マイクの一覧を取得する | ✔️ | ✔️ | ✔️ | ✔️ | |
| マイクを設定する | ✔️ | ✔️ | ✔️ | ✔️ | |
| 選択したマイクを取得する | ✔️ | ✔️ | ✔️ | ✔️ | |
| スピーカーの一覧を取得する | ✔️ | ✔️ | ✔️ | ✔️ | |
| スピーカーを設定する | ✔️ | ✔️ | ✔️ | ✔️ | |
| 選択したスピーカーを取得する | ✔️ | ✔️ | ✔️ | ✔️ | |
| ビデオのレンダリング | 複数の場所で 1 つのビデオをレンダリングする (ローカル カメラまたはリモート ストリーム) | ✔️ | ✔️ | ✔️ | ✔️ |
| スケーリング モードを設定または更新する | ✔️ | ✔️ | ✔️ | ✔️ | |
| リモート ビデオ ストリームをレンダリングする | ✔️ | ✔️ | ✔️ | ✔️ | |
| 集合モードのビデオ ストリームの表示 | ✔️ | ❌ | ❌ | ❌ | |
| 大きなギャラリー ビューを表示する | ❌ | ❌ | ❌ | ❌ | |
| Teams メディア ボットからのビデオ ストリームを受信する | ❌ | ❌ | ❌ | ❌ | |
| "カメラからのコンテンツ" の調整されたストリームを受信する | ❌ | ❌ | ❌ | ❌ | |
| スポットライトからビデオ ストリームを追加および削除する | ✔️ | ✔️ | ✔️ | ✔️ | |
| スポットライト用にビデオ ストリームの選択を許可する | ✔️ | ✔️ | ✔️ | ✔️ | |
| ビデオ効果 | 背景ぼかし | ✔️ | ✔️ | ✔️ | ✔️ |
| カスタム背景画像 | ✔️ | ❌ | ❌ | ❌ | |
| レコーディングと文字起こし | Teams クラウドの記録を管理する | ❌ | ❌ | ❌ | ❌ |
| クラウドに記録されている通話の情報を受信する | ✔️ | ✔️ | ✔️ | ✔️ | |
| Teams のクラウド レコーディングに明示的に同意する | ✔️ | ❌ | ❌ | ❌ | |
| Teams の文字起こしの管理 | ❌ | ❌ | ❌ | ❌ | |
| 文字起こしされている通話の情報を受信する | ✔️ | ✔️ | ✔️ | ✔️ | |
| Teams の文字起こしに明示的に同意する | ✔️ | ❌ | ❌ | ❌ | |
| Teams のクローズド キャプションを管理する | ✔️ | ✔️ | ✔️ | ✔️ | |
| コンプライアンス記録のサポート | ✔️ | ✔️ | ✔️ | ✔️ | |
| エンゲージメント | 手の上げ下げ | ✔️ | ✔️ | ✔️ | ✔️ |
| 他の参加者の手の上げ下げを示す | ✔️ | ✔️ | ✔️ | ✔️ | |
| リアクションをトリガーする | ❌ | ❌ | ❌ | ❌ | |
| 他の参加者のリアクションを示す | ❌ | ❌ | ❌ | ❌ | |
| 統合 | Teams のサード パーティ製アプリケーションの制御 | ❌ | ❌ | ❌ | ❌ |
| PowerPoint Live のストリームを受信する | ❌ | ❌ | ❌ | ❌ | |
| Whiteboard のストリームを受信する | ❌ | ❌ | ❌ | ❌ | |
| ポーリングを操作する | ❌ | ❌ | ❌ | ❌ | |
| Q&A を操作する | ❌ | ❌ | ❌ | ❌ | |
| 高度な通話ルーティング | 通話を開始して、転送ルールを適用するユーザー操作を追加する | ✔️ | ✔️ | ✔️ | ✔️ |
| 通話転送ルールを読み取り、構成する | ❌ | ❌ | ❌ | ❌ | |
| 通話を開始して、同時着信を適用するユーザー操作を追加する | ✔️ | ✔️ | ✔️ | ✔️ | |
| 同時着信を読み取り、構成する | ❌ | ❌ | ❌ | ❌ | |
| 通話を開始して、"応答不可" ステータスを適用するユーザー操作を追加する | ✔️ | ✔️ | ✔️ | ✔️ | |
| 参加者を保留にすると、保留音が再生される | ✔️ | ❌ | ❌ | ❌ | |
| Teams ユーザーが Teams クライアントを保留にすると、保留音が再生される | ✔️ | ✔️ | ✔️ | ✔️ | |
| 通話を保留にする | ❌ | ❌ | ❌ | ❌ | |
| 保留にされる | ✔️ | ✔️ | ✔️ | ✔️ | |
| 通話をユーザーに転送する | ✔️ | ✔️ | ✔️ | ✔️ | |
| ユーザーまたは通話に転送される | ✔️ | ✔️ | ✔️ | ✔️ | |
| 通話を別の通話に転送する | ✔️ | ✔️ | ✔️ | ✔️ | |
| 通話をボイスメールに転送する | ✔️ | ✔️ | ✔️ | ✔️ | |
| ボイスメールに転送される | ✔️ | ✔️ | ✔️ | ✔️ | |
| 進行中の通話をマージする | ❌ | ❌ | ❌ | ❌ | |
| 通話を開始して、共有回線構成を適用するユーザー操作を追加する | ✔️ | ✔️ | ✔️ | ✔️ | |
| Teams ユーザーの代わりに通話を開始する | ❌ | ❌ | ❌ | ❌ | |
| 共有回線構成を読み取り、構成する | ❌ | ❌ | ❌ | ❌ | |
| Teams 自動応答から通話を受信する | ✔️ | ✔️ | ✔️ | ✔️ | |
| Teams 自動応答に通話を転送する | ✔️ | ✔️ | ✔️ | ✔️ | |
| Teams 通話キューから通話を受信する | ✔️ | ✔️ | ✔️ | ✔️ | |
| Teams 通話キューからの通話を転送する | ✔️ | ✔️ | ✔️ | ✔️ | |
| Teams 通話ポリシー | "プライベート通話を行う" を適用する | ✔️ | ✔️ | ✔️ | ✔️ |
| [Cloud recording for calling](通話のクラウド レコーディング) の設定を適用する | 使用できる API がありません | 使用できる API がありません | 使用できる API がありません | 使用できる API がありません | |
| [Transcription](文字起こし) の設定を適用する | 使用できる API がありません | 使用できる API がありません | 使用できる API がありません | 使用できる API がありません | |
| [組織内のユーザーに対する通話転送と同時呼び出し] の設定を適用する | ✔️ | ✔️ | ✔️ | ✔️ | |
| [外部の電話番号に対する通話転送と同時呼び出し] の設定を適用する | ✔️ | ✔️ | ✔️ | ✔️ | |
| [着信通話のルーティングのためにボイスメールを利用] の設定を適用する | ✔️ | ✔️ | ✔️ | ✔️ | |
| [着信通話を通話グループにルーティング可能] の設定を適用する | ✔️ | ✔️ | ✔️ | ✔️ | |
| [着信通話と発信通話の代理を許可] の設定を適用する | ✔️ | ✔️ | ✔️ | ✔️ | |
| [有料通話のバイパスを防止して PSTN 経由で通話を送信] の設定を適用する | ❌ | ❌ | ❌ | ❌ | |
| [保留音] の設定を適用する | ❌ | ❌ | ❌ | ❌ | |
| [Busy on busy when in a call](通話中は通話中として対応) の設定を適用する | ❌ | ❌ | ❌ | ❌ | |
| [Real-time captions in Teams calls](Teams 通話のリアルタイム キャプション) の設定を適用する | 使用できる API がありません | 使用できる API がありません | 使用できる API がありません | 使用できる API がありません | |
| [Spam filtering](スパム フィルタ-) の設定を適用する | ✔️ | ✔️ | ✔️ | ✔️ | |
| [SIP devices can be used for calls](通話で SIP デバイスの使用を許可する) の設定を適用する | ✔️ | ✔️ | ✔️ | ✔️ | |
| DevOps | Azure メトリック | ✔️ | ✔️ | ✔️ | ✔️ |
| Azure Monitor | ✔️ | ✔️ | ✔️ | ✔️ | |
| Azure Communication Services のインサイト機能 | ✔️ | ✔️ | ✔️ | ✔️ | |
| Azure Communication Services の音声およびビデオ通話イベント | ❌ | ❌ | ❌ | ❌ | |
| Teams の通話分析 | ✔️ | ✔️ | ✔️ | ✔️ | |
| Teams のリアルタイム分析 | ❌ | ❌ | ❌ | ❌ |
- 画面共有機能は未加工メディアを使用して実現できます。未加工メディアの追加方法については、クイックスタート ガイドをご覧ください。
- 通話 SDK には明示的な API が含まれていないため、これを実現するには、OS (Android および iOS) API を使用する必要があります。
ストリーミング、タイムアウト、プラットフォーム、ブラウザーのサポートについては、Communication Services Calling SDK の概要で説明されています。
次のステップ
詳細については、次の記事を参照してください。