Поделиться через


Интеграция с TelecomManager

В этом документе описывается интеграция TelecomManager с приложением Android.

Необходимые компоненты

Интеграция TelecomManager

Внимание

Эта функция Службы коммуникации Azure сейчас доступна в предварительной версии.

Предварительные версии API и пакеты SDK предоставляются без соглашения об уровне обслуживания. Рекомендуется не использовать их для рабочих нагрузок. Некоторые функции могут не поддерживаться или могут иметь ограниченные возможности.

Дополнительные сведения см . в дополнительных условиях использования для предварительных версий Microsoft Azure.

TelecomManagerИнтеграция с пакетом SDK для Android Службы коммуникации Azure обрабатывает взаимодействие с другими вызовами VoIP и ТСОП, которые также интегрируются с TelecomManagerприложениями.

Настройка TelecomConnectionService

Добавление TelecomConnectionService в приложение 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>

Инициализация агента вызова с помощью TelecomManagerOptions

С настроенным экземпляром TelecomManagerOptionsможно создать с TelecomManager включеннымCallAgent.

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

Настройка устройства вывода звука

Если интеграция TelecomManager включена для приложения, устройство вывода звука должно быть выбрано только через API диспетчера телекоммуникаций.

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

Настройка поведения возобновления вызова

При прерванном вызове с другим вызовом, например входящий вызов ТСОП, вызов ACS помещается OnHold. Вы можете настроить то, что происходит после автоматического вызова ТСОП или ожидать, пока пользователь запрашивает возобновление звонка.

telecomManagerOptions.setResumeCallAutomatically(true);

Следующие шаги