Android - протокол SIP

SIP означает (протокол инициирования сеанса). Это протокол, который позволяет приложениям легко настраивать исходящие и входящие голосовые вызовы без необходимости напрямую управлять сеансами, связью на транспортном уровне, записью или воспроизведением звука.

Приложения

Вот некоторые из распространенных приложений SIP.

  • Видео-конференция
  • Мгновенное сообщение

Требования

Вот требования для разработки приложения SIP -

  • ОС Android должна быть 2.3 или выше.
  • У вас должно быть подключение для передачи данных или WIFI
  • Для использования этой услуги у вас должна быть учетная запись SIP.

Классы SIP

Вот сводка классов, которые включены в Android SIP API:

Старший Нет Класс и описание
1

SipAudioCall

Обрабатывает аудиозвонки через Интернет через SIP

2

SipErrorCode

Определяет коды ошибок, возвращаемые во время действий SIP

3

SipManager

Предоставляет API-интерфейсы для задач SIP, таких как инициирование подключений SIP, и обеспечивает доступ к связанным службам SIP.

4

SipProfile

Определяет профиль SIP, включая информацию об учетной записи SIP, домене и сервере.

5

SipSession

Представляет сеанс SIP, связанный с диалоговым окном SIP, или автономную транзакцию вне диалогового окна.

Функции SIP

SIP выполняет следующие основные функции.

  • SIP позволяет определять местоположение пользователя
  • SIP предоставляет механизм для управления вызовами
  • SIP обеспечивает согласование функций, так что все стороны в вызове могут согласиться на поддерживаемые ими функции.

Компоненты SIP

SIP состоит из двух основных компонентов, которые перечислены ниже.

  • Клиент пользовательского агента (UAC)
  • Сервер пользовательского агента (UAS)

ОАК

UAC или User Agent Client - это те конечные пользователи, которые генерируют запросы и отправляют их на сервер. Эти запросы генерируются клиентскими приложениями, запущенными в их системах.

UAS

UAS или User Agent Server - это те системы, которые получают запрос, сгенерированный UAC. UAS обрабатывает эти запросы, а затем в соответствии с запросами генерирует соответствующие ответы.

SipManager

SipManager - это API Android для задач SIP, таких как инициирование подключений SIP, и предоставляет доступ к связанным службам SIP. Этот класс является отправной точкой для любых действий SIP. Вы можете получить его экземпляр с помощью newInstance ().

SipManager имеет множество функций для управления задачами SIP. Некоторые функции перечислены ниже.

Старший Нет Класс и описание
1

close(String localProfileUri)

Закрывает указанный профиль, чтобы не совершать / принимать звонки

2

getCallId(Intent incomingCallIntent)

Получает идентификатор вызова из указанного намерения трансляции входящего вызова

3

isOpened(String localProfileUri)

Проверяет, открыт ли указанный профиль в сервисе SIP для совершения и / или приема звонков

4

isSipWifiOnly(Context context)

Возвращает true, если SIP доступен только по WIFI.

5

isRegistered(String localProfileUri)

Проверяет, успешно ли SIP-сервис зарегистрировал профиль у SIP-провайдера (указанного в профиле) для приема звонков

6

isVoipSupported(Context context)

Возвращает true, если система поддерживает VOIP API на основе SIP.

7

takeAudioCall(Intent incomingCallIntent, SipAudioCall.Listener listener)

Создает SipAudioCall для ответа на входящий звонок

8

unregister(SipProfile localProfile, SipRegistrationListener listener)

Вручную отменяет регистрацию профиля у соответствующего SIP-провайдера для прекращения приема дальнейших вызовов