В сегодняшней статье расскажем о том, как организовать внутрикорпоративный чат на базе нашей IP-АТС Asterisk при помощи модуля XMPP. Данный функционал будет особенно полезен компаниям, которые используют UCP (User Control Panel). Все примеры в данной статье будут приводиться на FreePBX 13.
Настройка корпоративного чата
Модуль носит название известного протокола XMPP (Extensible Messaging and Presence Protocol) – протокол обмена электронными сообщениями и информацией о состоянии присутствия, основанный на XML. Если коротко, то XMPP предоставляет возможность любому желающему организовать собственный XMPP - сервер для обмена мгновенными сообщениями, регистрировать на нём пользователей и взаимодействовать с другими серверами. Надо отметить, что с развитием протокола, стала также доступна передача голоса, видео и файлов.
Как было сказано ранее, протокол XMPP позволяет организовать некий сервер для обмена электронной информацией. Собственно, модуль FreePBX 13 XMPP делает ровно тоже самое. Настройка модуля очень простая и имеет всего одну опцию.
Чтобы попасть в модуль, необходимо с главной страницы перейти по следующему пути: Admin -> XMPP, перед вами откроется следующее окно:
Как видно, нам доступна только одна строчка - Domain, это имя XMPP сервера, с которым будут ассоциироваться наши пользователи. Создадим новый домен merionet.
Данный домен мы создаем в тестовых целях, но рекомендуем убедиться, что адрес, который вы здесь объявите, будет иметь формат FQDN и разрешен для использования вашей IP-АТС. Не забывайте нажимать Submit и Apply Config. На этом настройка XMPP сервера завершена, далее необходимо зарегистрировать пользователей.
Обмен мгновенными сообщениями
Для того, чтобы настроить XMPP пользователей используется модуль User Management, попасть в него можно также из вкладки Admin.
Мы позаботились и заранее создали несколько новых пользователей, которым теперь нужно предоставить им возможность обмениваться сообщениями по XMPP. Сразу отметим, что существует множество XMPP клиентов и настройка в них практически не отличается, но в данной статье мы покажем как организовать внутрикорпоративный чат прямо из UCP. Для этого, сначала пользователю необходимо разрешить доступ в UCP. Выбираем нужного пользователя (например 1021) и во вкладке UCP, напротив опции Allow Login ставим Yes, как показано на рисунках ниже.
Далее переходим на вкладку XMPP и выбираем Yes напротив опции Enabled - этим действием мы включили поддержку XMPP. Данную процедуру проводим для всех пользователей, которым хотим разрешить использование чата.
Если всё было сделано верно, то при заходе в UCP панель под учётными данными созданного пользователя, мы увидим вот такой значок:
При нажатии на этот значок откроется список доступных пользователей.
Теперь можно начинать чат. В нашем случае, мы вошли в систему под пользователем 1021 и будем переписываться с 1022. На рисунке ниже представлен пример переписки.
Кириллица также отображается без проблем
При нажатии на зелёный круг рядом со значком XMPP, пользователь может изменить статус своего присутствия . Если например, 1022 выставит статус DND, то это отобразится у остальных пользователей в корпоративном чате.
Таким образом, мы организовали простейший корпоративный чат с отображением статусов присутствия пользователей прямо в web-браузере.