Compartilhar via


Integrar com o TelecomManager

Este documento descreve como integrar o TelecomManager ao seu aplicativo Android.

Pré-requisitos

Integração do TelecomManager

Importante

Este recurso dos Serviços de Comunicação do Azure estão atualmente em versão prévia. Os recursos em versão prévia estão disponíveis publicamente e podem ser usados por todos os clientes novos e existentes da Microsoft.

Versões prévias das APIs e dos SDKs são fornecidas sem um contrato de nível de serviço. É recomendável que você não as use para cargas de trabalho de produção. Alguns recursos podem não ter suporte ou recursos podem ser restritos.

Para obter mais informações, consulte Termos de Uso Complementares de Versões Prévias do Microsoft Azure.

O SDK do Android para integração do TelecomManager nos Serviços de Comunicação do Azure se encarrega da interação com outros Aplicativos de chamadas VoIP e PSTN que também são integrados com o TelecomManager.

Configurar TelecomConnectionService

Adicionar TelecomConnectionService ao seu aplicativo 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>

Inicializar agente de chamada com TelecomManagerOptions

Com a instância configurada de TelecomManagerOptions, podemos criar o CallAgent com TelecomManager habilitado.

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);

Configurar o dispositivo de saída de áudio

Quando a integração do TelecomManager estiver habilitada para o Aplicativo, o dispositivo de saída de áudio deverá ser selecionado apenas por meio da API do gerenciador de telecomunicações.

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

Configurar o comportamento de retomada de chamada

Quando a chamada é interrompida por outra chamada, por exemplo, uma chamada PSTN sendo recebida, a chamada do ACS é colocada OnHold. Você pode configurar o que acontece após o término de uma chamada PSTN: retomar automaticamente a chamada ou aguardar o usuário solicitar a retomada.

telecomManagerOptions.setResumeCallAutomatically(true);

Próximas etapas