Как разделить Присутствие среди Ресурсов?

Я занимаюсь разработкой кроссплатформенного приложения, которое поддерживает XMPP (ejabberd). Как я могу разделить присутствие среди ресурсов?

Пожалуйста, рассмотрите следующий сценарий:

Пользователь A зарегистрирован на трех устройствах: ПК, Android и iOS. Пользователь А, использующий Android, устанавливает свое присутствие как "прочь". Как я могу установить (синхронизировать) другие ресурсы для "отсутствия" (и отправки разделов присутствия)?

Я пытаюсь решить эту проблему, используя протокол XMPP / сервер ejabberd; не добавляя логику к клиентам.

1 ответ

Решение

Вам не нужно синхронизировать присутствие среди вашего ресурса. То, что вам нужно, это правила отображения от других ваших клиентов.

Например, если у пользователя есть три разных ресурса, вы можете решить:

  • Для отображения наиболее доступных ресурсов из трех.
  • Для отображения самого последнего.
  • Для отображения с наивысшим приоритетом.

Таким образом, вам не нужно синхронизировать их, так как вы потеряете точность. Просто определите правила отображения своего присутствия в зависимости от цели вашего клиентского приложения.

Другие вопросы по тегам