2014-11-19 3 views
0

Я создаю веб-XMPP клиент для подключения к серверу XMPP ejabberd и у меня есть следующая проблема:Строфа XMPP получения строфы только с полным JID

  • Мой клиент может отправлять сообщения только в порядке.
  • Проблема в том, когда я пытаюсь получать сообщения. Я получаю только строфы, направленные на мой полный JID, который включает в себя ресурс, который я использую, поэтому я не получаю stanzas, направленные на мой домен user @, но я получаю строфы, отправленные на мой домен @ domain/resource.

Это не идеальная ситуация, поскольку другие клиенты, с которыми мне нужно общаться, работают с голыми JID.

У меня мало опыта работы со Strophe, поэтому, возможно, кто-то с большим опытом может проиллюстрировать, что я делаю неправильно. Заранее спасибо!

ответ

1

Вы проверили, установлен ли ваш сервер xmpp для настройки сообщений для всех ресурсов?

OpenFire предлагает объект с именем route.all-resources, который будет отправлять сообщения всем ресурсам для человека.

Кроме того, вы можете настроить приоритет своего ресурса, так как только ресурс с наивысшим приоритетом будет иметь отправленное ему сообщение (если сообщение не указывает ресурс).

Вот пример настройки вашего приоритета ресурсов 10 с Strophe.js

connection.send($pres().c("priority").t("10"));

This article описывает предполагаемое поведение, а также this answer из соответствующего вопроса может помочь вам понять, что происходит.