Condividi tramite


Integrazione con TelecomManager

Questo documento descrive come integrare TelecomManager con l'applicazione Android.

Prerequisiti

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.

TelecomManagerL'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 OnHoldla 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);

Passaggi successivi