共用方式為


與 TelecomManager 整合

本文件說明如何整合 TelecomManager 與 Android 應用程式。

必要條件

TelecomManager 整合

重要

此 Azure 通訊服務功能目前處於預覽狀態。

提供的預覽 API 並無服務等級協定。 建議您不要將其用於生產工作負載。 有些功能可能不受支援,或是在功能上有所限制。

如需詳細資訊,請參閱 Microsoft Azure 預覽版增補使用規定

TelecomManagerAzure 通訊服務 Android SDK 整合會處理與其他 VoIP 和 PSTN 呼叫應用程式的互動,這些應用程式也與整合TelecomManager

設定 TelecomConnectionService

新增 TelecomConnectionService 至您的應用程式 AndroidManifest.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();
Call call = callAgent.join(context, locator, joinCallOptions);

設定音訊輸出裝置

啟用 App 的 TelecomManager 整合時,只有透過電信管理員 API 選取音訊輸出裝置。

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

設定通話繼續行為

當呼叫與其他通話中斷時,例如內送 PSTN 通話,ACS 呼叫會放置 OnHold。 您可以設定 PSTN 通話自動結束通話後會發生什麼情況,或等候使用者要求通話繼續。

telecomManagerOptions.setResumeCallAutomatically(true);

下一步