
Предыдущие заметки про настройку ejabberd 1, 2 и 3.
ejabberd позволяет создать заранее подготовленные списки контактов, доступные определённым группам пользователей. Так как наш сервер настраивается под корпоративные нужды, это было бы кстати. Приходит новый человек, подключается к серверу, а у него в списке контактов уже есть все, кто ему может понадобиться, да ещё и по отделам сгруппированные.
Чтобы сделать такие предопределённые списки, нужно подключить модуль mod_shared_roster:
{modules, [ {mod_shared_roster, [} ]}.

Настраиваются общие списки только через веб интерфейс:
http://company.ru:5280/admin/
Далее в меню выбираем: Виртуальные хосты — company.ru — Общие контакты
Вводим название группы для отображения в веб-интерфейсе. Например «admins» и жмём добавить. Точно так же добавляем группы для других отделов.

Теперь заходим в любую из созданных нами групп и начинаем заполнять её.
Название
Название группы, которое будет отображаться в списке контактов jabber-клиента.
Описание
Как написано в документации по mod_shared_roster, это значение ни на что не влияет.

Члены
Список контактов, которые должны отображаться в этой группе. Каждый JID указывается на новой строке. Можно указывать контакты из любых доменов, а не только из того, для которого настраивается ростер.
Видимые группы
Список групп, которые будут отображаться для редактируемой группы. Т. е. если сейчас мы редактируем группу PHP, то в этом списке надо перечислить группы, которые должны отображаться у контактов, перечисленных в графе «Члены». В качестве имени группы указывается название, данное группе при её создании.
После окончания настройки, клиенты должны переподключиться, чтобы получить эти изменения.
В связке с LDAP, правильные клиенты (такие как MDC) показывают имя и фамилию человека. Psi и SIM у меня показывали только JID, да ещё сохраняли это отображение в моём ростере.
Теперь у каждого нашего сотрудника есть контакты всех других сотрудников. Осталось только постучаться…