Получить список подписанных групп пользователем с помощью ejabberd API

В настоящее время я разрабатываю систему чата для нашего приложения, используя ejabberd API.

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

Я могу получить только список групп, которые пользователь занимал, но не подписался, используя API get_room_users.

Моя ссылка: https://docs.ejabberd.im/developer/ejabberd-api/admin-api/

Мой вопрос:

  1. Как получить список подписанной группы по имени пользователя?

  2. Нужно ли регистрировать всех подписчиков в группе, чтобы использовать API get_room_users?


person Mohamad Raziman Md Dom    schedule 04.06.2018    source источник


Ответы (1)


  1. Как получить список подписанной группы по имени пользователя?

Нет команды для получения этой информации.

  1. Нужно ли регистрировать всех подписчиков в группе, чтобы использовать API get_room_users?

Я думаю, вы имеете в виду get_room_occupants. Ну а если вы сделаете подписчиков комнаты еще и участниками комнаты, то можно использовать get_room_affiliations, например:

$ ejabberdctl get_room_affiliations room1 conference.localhost
user2   localhost       member
user1   localhost       owner
person Badlop    schedule 20.06.2018
comment
Привет, Бадлоп, спасибо за ответ. Я могу получить всех подписчиков, если знаю имя комнаты, но мне нужно получить только имя пользователя. Но я уже решил эту проблему через несколько дней после публикации здесь с другим подходом. - person Mohamad Raziman Md Dom; 07.07.2018
comment
@MohamadRazimanMdDom, можете ли вы поделиться своим подходом? У меня тоже такое же требование - person WantIt; 10.07.2020