次の方法で共有


TelecomManager との統合

この記事では、TelecomManager を Android アプリケーションと統合する方法について説明します。

[前提条件]

TelecomManager の統合

重要

Azure Communication Services のこの機能は、現在プレビュー段階にあります。 プレビュー段階の機能は一般公開されており、新規および既存の Microsoft のすべてのお客様が使用できます。

プレビューの API と SDK は、サービス レベル アグリーメントなしに提供されます。 運用環境のワークロードには使用しないことをお勧めします。 特定の機能がサポートされていないか、機能が制約されている可能性があります。

詳しくは、Microsoft Azure プレビューの追加使用条件に関するページをご覧ください。

TelecomManager Azure Communication Services Android SDK の統合により、他の音声 over IP (VoIP) および公衆交換電話網 (PSTN) 通話アプリとの対話が処理され、 TelecomManagerとも統合されます。

TelecomConnectionService を構成する

アプリ TelecomConnectionServiceAndroidManifest.xmlを追加します。

<application>
  ...
  <service
      android:name="com.azure.android.communication.calling.TelecomConnectionService"
      android:permission="android.permission.BIND_TELECOM_CONNECTION_SERVICE"
      android:exported="true">
      <intent-filter>
          <action android:name="android.telecom.ConnectionService" />
      </intent-filter>
  </service>
</application>

TelecomManagerOptions を使用して呼び出しエージェントを初期化する

TelecomManagerOptionsの構成済みインスタンスを使用すると、CallAgentを有効にしてTelecomManagerを作成できます。

CallAgentOptions options = new CallAgentOptions();
TelecomManagerOptions telecomManagerOptions = new TelecomManagerOptions("<your app's phone account id>");
options.setTelecomManagerOptions(telecomManagerOptions);

CallAgent callAgent = callClient.createCallAgent(context, credential, options).get();
all call = callAgent.join(context, locator, joinCallOptions);

オーディオ出力デバイスを構成する

アプリに対して TelecomManager 統合が有効になっている場合、音声出力デバイスは Telecom Manager API 経由でのみ選択する必要があります。

call.setTelecomManagerAudioRoute(android.telecom.CallAudioState.ROUTE_SPEAKER);

通話再開の動作を構成する

別の通話により通話が中断されるとき、たとえば着信 PSTN 通話の場合、Azure Communication Services 通話は保留状態になりますOnHold。 PSTN 通話が自動的に再開通話を超えるとどうなるかを構成したり、ユーザーが通話の再開を要求するのを待ったりすることができます。

telecomManagerOptions.setResumeCallAutomatically(true);

次のステップ