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-провайдера для прекращения приема дальнейших вызовов |