Как создать android.telecom.Conference из экземпляров android.telecom.Connection - PullRequest
0 голосов
/ 10 января 2019

После Android. Создание руководства по вызову , я смог обработать входящие и исходящие вызовы VoIP; в основном, следуя руководству и реализуя необходимые функции обратного вызова и функции, теперь мое приложение прекрасно интегрируется со встроенным приложением для телефона - например, теперь аудио VoIP не накладывается на звук родного телефонного звонка.

Мой следующий шаг - заставить конференцию работать, используя ту же экосистему Android с самостоятельным вызовом. Вот где это действительно сложно, так как нет документации по этому вопросу. Вот что я делаю:

  1. Реализовано android.telecom.ConnectionService через MyConnectionService и обработано onCreated* обратных вызовов для предоставления MyConnection экземпляров (подклассов `android.telecom.Connection)

  2. Обработка android.telecom.ConnectionService. onConference путем создания экземпляра MyConference (подкласс `android.telecom.Conference)

  3. Вызов Connection.setConferenceables с экземплярами MyConnection, с помощью которых можно создать MyConference.

Однако недостающее звено, по-видимому, является функцией merge или conference, вызываемой для объекта MyConnection, который, в свою очередь, должен вызывать MyConnectionService. onConference.

.

Просматривая исходный код Android, я вижу, что android.telecom.Call имеет функцию .conference, которая отсутствует android.telecom.Connection.

Кроме того, есть [IConnectionService][2] с функцией .conference, которая должна запускать весь поток конференции / слияния, но это только внутренний (скрытый интерфейс API).

Итак, мой вопрос: как создать конференцию из двух или более android.telecom.Connection активных экземпляров?

...