Integrace s TelecomManagerem
Tento dokument popisuje, jak integrovat TelecomManager s vaší aplikací pro Android.
Požadavky
- Účet Azure s aktivním předplatným. Vytvoření účtu zdarma
- Nasazený prostředek komunikační služby. Vytvořte prostředek komunikační služby.
- Přístupový token uživatele pro povolení volajícího klienta. Další informace najdete v tématu Vytváření a správa přístupových tokenů.
- Volitelné: Dokončením rychlého startu přidáte do aplikace hlasové hovory.
Integrace TelecomManageru
Důležité
Tato funkce služeb Azure Communication Services je aktuálně ve verzi Preview.
Rozhraní API a sady SDK verze Preview jsou poskytovány bez smlouvy o úrovni služeb. Doporučujeme je nepoužívat pro produkční úlohy. Některé funkce nemusí být podporované nebo můžou mít omezené možnosti.
Další informace najdete v dodatečných podmínkách použití pro verze Preview Microsoft Azure.
TelecomManager
Integrace v sadě Azure Communication Services Android SDK zpracovává interakci s jinými aplikacemi pro volání VoIP a voláním do veřejné telefonní sítě, které jsou také integrované s TelecomManager
.
Konfigurace TelecomConnectionService
Přidání TelecomConnectionService
do aplikace 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>
Inicializace agenta volání pomocí TelecomManagerOptions
S nakonfigurovanou instancí můžeme vytvořit povolenou CallAgent
TelecomManager
instanciTelecomManagerOptions
.
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);
Konfigurace výstupního zvukového zařízení
Pokud je pro aplikaci povolená integrace TelecomManageru, musí být výstupní zvukové zařízení vybráno pouze prostřednictvím rozhraní API pro telekomunikační správce.
call.setTelecomManagerAudioRoute(android.telecom.CallAudioState.ROUTE_SPEAKER);
Konfigurace chování obnovení volání
Když je hovor přerušen jiným voláním, například příchozí volání do veřejné telefonní sítě, je hovor služby ACS umístěn OnHold
. Můžete nakonfigurovat, co se stane po automatickém volání do veřejné telefonní sítě, nebo můžete počkat, až uživatel požádá o obnovení hovoru.
telecomManagerOptions.setResumeCallAutomatically(true);