Compartilhar via


Integrar com o TelecomManager

Este artigo 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.

TelecomManager A integração no SDK do Android dos Serviços de Comunicação do Azure lida com a interação com outros aplicativos de chamada VoIP (Voz sobre IP) e Rede Telefônica Pública Comutada (PSTN) que também se integram com TelecomManager.

Configurar TelecomConnectionService

Adicionar TelecomConnectionService ao 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();
all 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 uma chamada é interrompida por outra chamada, por exemplo, chamada PSTN de entrada, a chamada dos Serviços de Comunicação do Azure é feita 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