Integrera med TelecomManager
Det här dokumentet beskriver hur du integrerar TelecomManager med ditt Android-program.
Förutsättningar
- Ett Azure-konto med en aktiv prenumeration. Skapa ett konto utan kostnad.
- En distribuerad Communication Services-resurs. Skapa en Communication Services-resurs.
- En användaråtkomsttoken för att aktivera den anropande klienten. Mer information finns i Skapa och hantera åtkomsttoken.
- Valfritt: Slutför snabbstarten för att lägga till röstsamtal i ditt program
TelecomManager-integrering
Viktigt!
Den här funktionen i Azure Communication Services är för närvarande i förhandsversion.
Förhandsversions-API:er och SDK:er tillhandahålls utan ett serviceavtal. Vi rekommenderar att du inte använder dem för produktionsarbetsbelastningar. Vissa funktioner kanske inte stöds, eller så kan de ha begränsade funktioner.
Mer information finns i Kompletterande användningsvillkor för Förhandsversioner av Microsoft Azure.
TelecomManager
Integrering i Azure Communication Services Android SDK hanterar interaktion med andra VoIP- och PSTN-samtalsappar som också är integrerade med TelecomManager
.
Konfigurera TelecomConnectionService
Lägg till TelecomConnectionService
i din app 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>
Initiera samtalsagenten med TelecomManagerOptions
Med konfigurerad instans av TelecomManagerOptions
kan vi skapa CallAgent
med TelecomManager
aktiverat.
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);
Konfigurera ljudutdataenhet
När TelecomManager-integrering är aktiverat för appen måste ljudutdataenheten endast väljas via TELECOM Manager-API:et.
call.setTelecomManagerAudioRoute(android.telecom.CallAudioState.ROUTE_SPEAKER);
Konfigurera beteende för återupptagning av samtal
När samtalet avbryts med andra samtal, till exempel inkommande PSTN-samtal, placeras OnHold
ACS-anropet . Du kan konfigurera vad som händer när PSTN-anropet är över återuppta-anropet automatiskt eller vänta tills användaren begär att samtalet återupptas.
telecomManagerOptions.setResumeCallAutomatically(true);