Какие модули XEP или eJabberd наиболее подходят для условного и немедленного изменения группы пользователей, на которую подписан пользователь?

Представьте, что база данных, подключенная к серверу XMPP, хранит пользователей, а также хранит дополнительный столбец данных (назовем его dataId) для каждого пользователя. Столбец данных может принимать три значения: 1, 2 или 3.

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

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

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


person evianpring    schedule 19.07.2017    source источник


Ответы (1)


Вы можете ознакомиться с XEP-0140. Это похоже на списки, за исключением того, что все пользователи в общей группе списков смогут видеть всех других пользователей в группе. Вы можете создать несколько общих групп реестра и легко переключать пользователя между ними, добавляя или удаляя пользователя из группы. Вы также можете иметь вложенные группы. Вы можете посмотреть пример использования групп общего списка для разных случаев здесь, используя ejabberd .

person The Maverick    schedule 27.07.2017