Как получить список приватных комнат, используя ejabberd (используя их API и / или используя XML)? - PullRequest
1 голос
/ 25 сентября 2019

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

<iq from='hag66@shakespeare.lit/pda'
    id='zb8q41f4'
    to='chat.shakespeare.lit'
    type='get'>
  <query xmlns='http://jabber.org/protocol/disco#items'/>
</iq>

XEP-0045 - Обнаружение комнат

Однако мне нужносписок всех комнат, независимо от того, являются ли они общедоступными или закрытыми, а если нет, то нет.

Есть предложения, особенно через XML?

1 Ответ

1 голос
/ 26 сентября 2019

Они не являются публичными.Я знаю, что используя этот код выше, я не должен получить этот список.Мне нужен способ получения личных.

Когда администратор MUC запрашивает список комнат, он получает все комнаты, включая частные.

Вы можететакже получите полный список комнат с помощью этой команды ejabberd:

$ ejabberdctl muc_online_rooms muc.localhost
privateroomcreatedbyuser1@muc.localhost
privateroomcreatedbyuser3@muc.localhost
publicroomcreatedbyuser1@muc.localhost
publicroomcreatedbyuser3@muc.localhost

Эти команды могут быть выполнены с вызовами XML-RPC или ReST, если вы включите соответствующие модули.

...