У меня есть несколько отделов на нашем рабочем месте. Всякий раз, когда мы регистрируем нового сотрудника, нам необходимо зарегистрировать этого сотрудника в этом отделе, чтобы все остальные сотрудники отдела могли видеть его / ее, а также общаться с ним / ней.
Какой должен быть лучший способ сделать это? я должен использовать MUC или группы общего списка. Я хочу сделать это с помощью сценария PHP .. как я могу это сделать?
Перейдите к WebAdmin ejabberd -> vhost -> Shared Roster Groups -> и создайте группу «отдела1» с отображаемыми группами: отдел1.
Затем вы можете добавить учетные записи в эту группу, вызвав эту команду, например:
$ ejabberdctl srg_user_add user1 localhost department1 localhost
Попробуйте, проверьте, работает ли он как хотите, и позже вы сможете увидеть, как вызывать эту команду с помощью PHP. Если вы включите ejabberd_xmlrpc, вы можете делать запросы XML-RPC к ejabberd. Или, если вы устанавливаете mod_rest (из git-репозитория ejabberd-contrib), вы можете использовать вызовы ReST.
Других решений пока нет …