Клиентские несовместимости XMPP - PullRequest
1 голос
/ 27 апреля 2009

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

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

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

Ответы [ 2 ]

1 голос
/ 27 апреля 2009

Вы строите проприетарное решение, просто оно может быть не полностью с нуля, и это не обязательно плохо. Но, пожалуйста, не называйте это службой XMPP, если вы не собираетесь поддерживать клиенты XMPP. Вы получите ту же реакцию, что и на «веб-сайте», для которого требуется ваш собственный браузер.

Что касается функций, о которых можно договориться, посмотрите Согласование функций , и вы можете сойти с ума, сказав, что ваш сервер не имеет определенной функции для других клиентов, но тайно поддерживает ее в своем собственном , Это на самом деле не блокирует попытки что-либо предпринять, поэтому это довольно плохое решение.

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

И, кроме того, не должно быть никаких сообщений, которые вызывают проблемы с вашим веб-сайтом, равно как не может быть URL-адреса, вызывающего его проблемы, или комбинации запросов и т. Д.

0 голосов
/ 27 апреля 2009

Не уверен во всех ваших требованиях, но, похоже, вы могли бы использовать функции XMPP для pubsub или pep. Это расширения XMPP, которые позволяют создавать специализированные полезные нагрузки, к которым можно обращаться от пользователя к уровню пользователя (протокол личных событий XEP-0163). Если это просто общее уведомление для всех, кто заинтересован, то PubSub (XEP-0060) может быть тем, что вам нужно.

Эти протоколы обеспечивают безопасность доступа к узлам pubsub и не будут затронуты стандартными сообщениями чата, так как это другой протокол.

...