Integrazione con TelecomManager
Questo documento descrive come integrare TelecomManager con l'applicazione Android.
Prerequisiti
- Un account Azure con una sottoscrizione attiva. Creare un account gratuitamente.
- Una risorsa di Servizi di comunicazione distribuita. Creare una risorsa di Servizi di comunicazione.
- Token di accesso utente per abilitare il client chiamante. Per altre informazioni, vedere Creare e gestire i token di accesso.
- Facoltativo: Completare la guida introduttiva per aggiungere chiamate vocali all'applicazione
Integrazione di TelecomManager
Importante
Questa funzionalità di Servizi di comunicazione di Azure è attualmente in anteprima.
Le API di anteprima e gli SDK vengono forniti senza un contratto di servizio. È consigliabile non usarli per i carichi di lavoro di produzione. Alcune funzionalità potrebbero non essere supportate o potrebbero avere funzionalità limitate.
Per altre informazioni, vedere Condizioni per l'utilizzo supplementari per le anteprime di Microsoft Azure.
TelecomManager
L'integrazione nella Servizi di comunicazione di Azure Android SDK gestisce l'interazione con altre app voIP e chiamate PSTN integrate anche con TelecomManager
.
ConfigurareTelecomConnectionService
Aggiungere TelecomConnectionService
all'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>
Inizializzare l'agente di chiamata con TelecomManagerOptions
Con l'istanza configurata di TelecomManagerOptions
, è possibile creare con CallAgent
TelecomManager
abilitato.
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);
Configurare il dispositivo di output audio
Quando l'integrazione di TelecomManager è abilitata per l'app, il dispositivo di output audio deve essere selezionato solo tramite l'API di gestione telecomunicazioni.
call.setTelecomManagerAudioRoute(android.telecom.CallAudioState.ROUTE_SPEAKER);
Configurare il comportamento di ripresa delle chiamate
Quando la chiamata viene interrotta con un'altra chiamata, ad esempio la chiamata PSTN in ingresso, viene inserita OnHold
la chiamata ACS. È possibile configurare ciò che accade quando la chiamata PSTN viene ripresa automaticamente o attendere che l'utente richieda la ripresa delle chiamate.
telecomManagerOptions.setResumeCallAutomatically(true);