Partilhar via


Integração com TelecomManager

Este artigo descreve como integrar o TelecomManager com a sua aplicação Android.

Pré-requisitos

Integração TelecomManager

Importante

Esta funcionalidade dos Serviços de Comunicação do Azure está atualmente em pré-visualização. Os recursos na visualização estão disponíveis publicamente e podem ser usados por todos os clientes novos e existentes da Microsoft.

As APIs e SDKs de visualização são fornecidos sem um contrato de nível de serviço. Recomendamos que você não os use para cargas de trabalho de produção. Determinadas funcionalidades podem não ser suportadas ou recursos podem ser restringidos.

Para obter mais informações, veja Termos Suplementares de Utilização para Pré-visualizações 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 de voz sobre IP (VoIP) e PSTN (rede telefônica pública comutada) que também se integram ao TelecomManager.

Configurar TelecomConnectionService

Adicionar TelecomConnectionService à sua Aplicação 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 dispositivo de saída de áudio

Quando a integração TelecomManager está habilitada para o aplicativo, o dispositivo de saída de áudio deve ser selecionado apenas via 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, uma chamada PSTN de entrada, uma chamada dos Serviços de Comunicação do Azure é iniciada OnHold. Você pode configurar o que acontece quando a chamada PSTN termina: retome automaticamente a chamada ou espere que o usuário solicite a retomada da chamada.

telecomManagerOptions.setResumeCallAutomatically(true);

Próximos passos