Microsoft добавляет XMPP в Messenger


В качестве приятного и несколько неожиданного изменения поведения Microsoft добавила поддержку XXPP в Windows Live Messenger, что позволяет вам разрабатывать собственные клиенты. Есть ли какие-то препятствия, о которых следует знать?

Microsoft

Microsoft до сих пор держала Windows Messenger при себе. Он действительно создал API, который позволил писать надстройки, но на самом деле общение с Messenger было вопросом взлома его методов связи или поиска какого-либо способа передачи данных с помощью хостинга клиента. Теперь он выполнил свое обещание, данное на Build, по поддержке протокола XMPP.

XMPP — это открытый стандарт, унаследованный от протокола Jabber. В настоящее время Google Talk и Facebook Chat поддерживают XMPP вместе с рядом других чат-сервисов. Только Messenger оставался закрытым для других сервисов, не поддерживая XMPP.

Теперь поддержка XMPP в Messenger стала реальностью, и вы можете начать создавать приложения, которые обмениваются данными через сеть Messenger, то есть свои собственные клиенты Messenger.

Однако не все так открыто, как кажется. Вероятно, этого и следовало ожидать, учитывая, что это Microsoft. В нем реализован настраиваемый уровень OAuth 2.0, который необходимо реализовать для получения доступа к учетной записи. Это разумно, но также означает, что разработчики должны зарегистрироваться и получить идентификатор приложения и токен доступа. Чтобы получить их, вам необходимо зарегистрироваться — другими словами, Microsoft имеет возможность контролировать доступ к службам обмена сообщениями. Это стандартная процедура для использования практически любого «Live» API от Microsoft.

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

В настоящее время поддерживаются следующие спецификации XMPP:

  • RFC6120: XMPP: Ядро
  • RFC6121: XMPP: мгновенный обмен сообщениями и присутствие. Управление составом не поддерживается.
  • XEP-0054: vcard-temp. Служба Messenger XMPP поддерживает получение vCard, но не поддерживает обновление vCards.
  • XEP-0085: Уведомления о состоянии чата
  • XEP-0203: отложенная доставка

На GitHub есть образцы кода и хорошая документация для начала работы.


Добавить комментарий