Телефонный протокол SIMPLE (SIP instant messaging and presence leveraging extensions) – это протокол сессий и мгновенных сообщений, используемый для установления и управления телефонными вызовами в IP-сети. Он основан на протоколе SIP (Session Initiation Protocol) и расширяет его функциональность, добавляя возможности обмена мгновенными сообщениями и определения наличия пользователя (presence).
Протокол SIMPLE позволяет пользователям передавать мгновенные сообщения, а также узнавать, доступен ли другой пользователь для связи. Он также поддерживает функции установления вызовов, переадресации, конференц-связи и другие возможности, которые обычно связаны с телефонной коммуникацией.
Преимущества телефонного протокола SIMPLE включают простоту и эффективность использования. Он предоставляет широкий набор функций для связи и определения наличия, а также обеспечивает возможность интеграции со сторонними приложениями и сервисами.
Телефонный протокол SIMPLE широко используется в VoIP-системах и IP-телефонии для организации телефонных вызовов, обмена мгновенными сообщениями и определения наличия пользователей.
Как и XMPP, SIMPLE, в отличие от подавляющего числа существующих протоколов для передачи мгновенных сообщений и уведомления о присутствии, является открытым стандартом. Также одной из важных особенностей протокола является возможность использования списков присутствия (presence lists), взятых из других приложений.
В SIMPLE SIP применяется для:
- отправки коротких сообщений, аналогичных SMS;
- установления сеанса обмена мгновенными сообщениями в реальном времени для двоих и более участников списка присутствия;
- для обновления статуса присутствия участников списка присутствия.
В 2006 году IETF поручил рабочей группе под названием SIMPLE Working Group определить набор профилей и расширений стандарта SIP, предназначенных для системы мгновенной передачи сообщений и уведомления о присутствии.
Ключевые компоненты протокола уже успели получить достаточно широкое распространение, наиболее известен Microsoft Windows Messenger.
SIMPLE – не единственный IM-протокол, разработанный внутри IETF. Например, таковым является XMPP.
Спецификации присутствия протокола SIMPLE можно разбить на:
Механизм ядра протокола. Он обеспечивает фактические расширения SIP для подписок, уведомлений и публикаций. RFC 3265 определяет методы SUBSCRIBE и NOTIFY. Метод SUBSCRIBE позволяет подписываться на событие на сервере, сервер отвечает с помощью метода NOTIFY, всякий раз, когда происходит событие. RFC 3856 определяет, каким образом использовать SUBSCRIBE/NOTIFY для определения присутствия. Определены две модели: модель end-to-end — каждый Пользовательский Агент самостоятельно осуществляет подписку на информацию о присутствии — и централизованная модель. Последняя вводит понятие сервера присутствия. Все подписки обрабатываются этим сервером. Сообщение PUBLISH (RFC 3903) позволяет Пользовательским Агентам сообщать серверу присутствия о состоянии их подписки.
Документы присутствия. Информация о присутствии кодируется в документы XML, которые переносятся в теле соответствующих SIP-сообщений. RFC 3863 и RFC 4479 описывают эту процедуру, RFC 4480 (RPID), RFC 4481, RFC 4482 (CPID) и другие — описывают содержание и форматы документов присутствия.
Privacy, policy and provisioning. Если используется централизованная модель, Пользовательские Агенты нуждаются в способе определить, кто может подписаться и на какую часть информации об их присутствии. RFC 4745 и RFC 5025 определяют структуру для политики авторизации, контролируя доступ к определенным данным приложения. Протокол XCAP (RFC 4825), поддерживаемый HTML, позволяет Пользовательским Агентам сообщать свои правила определения присутствия серверу XCAP, который контролирует объём информации, отображаемой сервером присутствия. RFC 3857 и RFC 3858 определяют событие «watcher info». Пользовательские Агенты могут подписаться на это событие, чтобы быть проинформированными о том, кто подписывается на получение информации об их присутствии.
SIP определяет два режима передачи мгновенных сообщений:
Страничный режим использует SIP-метод MESSAGE, как определено в RFC 3428. Этот способ не устанавливает сессий.
Режим Сессии. Протокол Message Session Relay (Реле Сессий Сообщений) (RFC 4975, RFC 4976) определяет текстовый протокол, используемый для обмена содержимым произвольного размера между пользователями в любое время. Сессия MSRP настраивается путём обмена определенной информацией, такой, как MSRP URI, внутри SDP- и SIP-сигнализации.