Использования Openfire в Elastix
Openfire отключена по умолчанию в Elastix.
Это делается для того, чтобы бы пользователь не активировал ее, предпочтительно остаться выключенным, чтобы она не использовала ресурсы излишне.
Если мы хотим активировать, мы должны щелкнуть по ссылке, которая показана в следующем рисунке.
Экран активации Openfire. Первая вещь, которую мы увидим- это экран, где нас попросят выбрать язык.
Затем мы должны определить доменное имя сервера.
Это должно быть тем же самым, которое было сконфигурировано в сетевых параметрах.
Openfire устанавливают конфигурацию доменного имени сервера
Затем мы выбираем базу данных, где Openfire будет сохранять настройки и информацию, которую он должен постоянно сохранять благодаря своей работе. Мы можем использовать стандартный двигатель базы данных (например, MySQL) или мы можем использовать встроенную базу данных, включенных в Openfire, что позволит упростить конфигурацию задачи, если мы не видим никаких преимуществ в использовании стандартного двигателя.
В большинстве случаев удобно выбрать встроенную базу данных.
Затем мы сконфигурируем, где потребители Openfire будут сохранены.
Здесь очень интересная опция — поддержка LDAP.
Openfire устанавливают пользовательскую системную конфигурацию хранения
Для завершения, мы настроим учетную запись Openfire администрации. С этого счета мы можем войти в веб-интерфейс Openfire и администрировать его параметры работы
Конфигурация учетной записи администратора
После Openfire активизируется, мы можем войти в консоли администрирования, создать несколько пользователей и начать работу с мгновенными сообщениями в Elastix. Первое, что мы сделаем, зайдем в консоль администрирования с правами администратора, используя пароль, который настроили ранее.
Вход в консоль администрирования Openfire
Первое что мы увидим, это экран, подобный следующему.

Начальный экран в веб-интерфейсе администрирования Openfire.
Openfire устанавливают пользовательскую системную конфигурацию хранения
Для завершения, мы настроим учетную запись Openfire администрации. С этого счета мы можем войти в веб-интерфейс Openfire и администрировать его параметры работы
Конфигурация учетной записи администратора
После Openfire активизируется, мы можем войти в консоли администрирования, создать несколько пользователей и начать работу с мгновенными сообщениями в Elastix. Первое, что мы сделаем, зайдем в консоль администрирования с правами администратора, используя пароль, который настроили ранее.
Вход в консоль администрирования Openfire
Первое что мы увидим, это экран, подобный следующему.
Начальный экран в веб-интерфейсе администрирования Openfire.
Первая вещь, которую мы ходим сделать, это создать нового пользователя мгновенного обмена сообщениями. Мы можем сделать, это в меню, Users/Groups -> Create New User . Параметры для входа достаточно интуитивные, пример показан на следующем рисунке.
Создание нового пользователя мгновенного обмена сообщениями
После создания учетной записи пользователя, он может теперь войти от своего IM клиента.
Опенфайр рассчитывает с plugin, который позволяет нам интеграцию с Asterisk.
Благодаря этому plugin, мы можем выполнить некоторые задачи телефонной интеграции от обменивающегося сообщениями клиента, как например генерирование вызова, будучи уведомленным, когда вызов вводит телефон, или даже увидет, находится ли другой контакт в середине телефонного звонка. Вот почему обменивающийся сообщениями клиент, не может быть любым клиентом, так, чтобы интеграция была видима пользователю. Плагин работает с обменивающейся сообщениями Spark, который может также быть загружен бесплатно с веб-сайта Openfires.
Плагин для интеграции с Asterisk называют Asterisk-IM, и ее установка очень легка. Мы должны зайти в менюPlugins -> Available Plugins и нажать на зеленую кнопку справа от строки соответствующего pluginAsterisk-IM. Через несколько секунд она будет активной.

Если плагин был установлен правильно, то мы увидим, что меню появляется автоматически и вызывается Asterisk-IM. Здесь мы можем настроить интеграцию с Openfire Asterisk.
В любом случае, чтобы создать нового пользователя AMI, мы могли бы добавить следующие строки в manager.conf
Создание нового пользователя мгновенного обмена сообщениями
После создания учетной записи пользователя, он может теперь войти от своего IM клиента.
Опенфайр рассчитывает с plugin, который позволяет нам интеграцию с Asterisk.
Благодаря этому plugin, мы можем выполнить некоторые задачи телефонной интеграции от обменивающегося сообщениями клиента, как например генерирование вызова, будучи уведомленным, когда вызов вводит телефон, или даже увидет, находится ли другой контакт в середине телефонного звонка. Вот почему обменивающийся сообщениями клиент, не может быть любым клиентом, так, чтобы интеграция была видима пользователю. Плагин работает с обменивающейся сообщениями Spark, который может также быть загружен бесплатно с веб-сайта Openfires.
Плагин для интеграции с Asterisk называют Asterisk-IM, и ее установка очень легка. Мы должны зайти в менюPlugins -> Available Plugins и нажать на зеленую кнопку справа от строки соответствующего pluginAsterisk-IM. Через несколько секунд она будет активной.
Установка плагина Asterisk-IM от консоли администрирования Openfire
Если плагин был установлен правильно, то мы увидим, что меню появляется автоматически и вызывается Asterisk-IM. Здесь мы можем настроить интеграцию с Openfire Asterisk.
Конфигурация плагина Asterisk-IM
Openfire интегрируется с Asterisk через AMI. Поэтому, прежде чем сконфигурировать плагин Asterisk -IM мы должны были создать пользователя AMI для этой цели, так как в какой-то момент, в конфигурации нам нужно будет вводить эту информацию. Давайте вспомним, что пользователи AMI создаются в файле/etc/asterisk/manager.conf. Мы могли также использовать имя пользователя, которое создается по умолчанию в Elastix. Таким образом, имя пользователя admin с паролем elastix456В любом случае, чтобы создать нового пользователя AMI, мы могли бы добавить следующие строки в manager.conf
[openfire]
secret = clavesecreta
displayconnects = yes
read = system,call,log,verbose,agent,user,config,dtmf
write = system,call,agent,user,config,command
Тем не менее, давайте начнем конфигурацию плагина. Мы можем начать, включая плагин, выбрав опцию Enabled.
В разделе Configure Phone Manager мы найдем некоторые поля для конфигурации. Не нужно заполнять их все, однако важно заполнить поле Asterisk Context со словом default. Это поле указывает на контекст, от которого телефонные вызовы будут сгенерированы от клиента мгновенного обмена сообщениями.
До сих пор наша конфигурация должна быть похожа на то, что показано в следующем рисунке:
Усовершенствование конфигурации плагина Asterisk-IM
Теперь мы щелкаем туда, где говорит Add Server, чтобы добавить наш сервер к Asterisk.
Здесь мы вводим информацию нашей учетной записи AMI, которая была упомянута прежде и является именем пользователя и паролем.
Port должен быть заполнен c 5038, который является портом AMI по умолчанию. Я предполагаю, что вы вспомнили это, правильно? В Server Name мы можем ввести любое имя, которое позволяет нам вспомнить сервер, в то время как Username будет администратором, и Пароль будет администраторским паролем Asterisk(секрет), этот пароль находиться в файле /etc/asterisk/manager.conf файле)
Конфигурация сервера AMI
secret = clavesecreta
displayconnects = yes
read = system,call,log,verbose,agent,user,config,dtmf
write = system,call,agent,user,config,command
Тем не менее, давайте начнем конфигурацию плагина. Мы можем начать, включая плагин, выбрав опцию Enabled.
В разделе Configure Phone Manager мы найдем некоторые поля для конфигурации. Не нужно заполнять их все, однако важно заполнить поле Asterisk Context со словом default. Это поле указывает на контекст, от которого телефонные вызовы будут сгенерированы от клиента мгновенного обмена сообщениями.
До сих пор наша конфигурация должна быть похожа на то, что показано в следующем рисунке:
Усовершенствование конфигурации плагина Asterisk-IM
Теперь мы щелкаем туда, где говорит Add Server, чтобы добавить наш сервер к Asterisk.
Здесь мы вводим информацию нашей учетной записи AMI, которая была упомянута прежде и является именем пользователя и паролем.
Port должен быть заполнен c 5038, который является портом AMI по умолчанию. Я предполагаю, что вы вспомнили это, правильно? В Server Name мы можем ввести любое имя, которое позволяет нам вспомнить сервер, в то время как Username будет администратором, и Пароль будет администраторским паролем Asterisk(секрет), этот пароль находиться в файле /etc/asterisk/manager.conf файле)
Конфигурация сервера AMI
Наконец наша конфигурация должна быть похожей на это:
Окончание общей конфигурации для плагина Asterisk-IM
Иногда, при использовании Embedded Database, сервер который мы только что добавили не будет отображаться, как показано на рисунке выше (хотя сообщение » Server created succesfully « появляется). Это можно исправить только путем выполнения следующих команд (в Linux оболочку с правами администратора):
perl -pi.bak -e ‘s/(.*serverName.*)/ serverName varchar(255) not null,/’ /opt/openfire/plugins/asterisk-im/database/asterisk-im_hsqldb.sql
service openfire restart
Мы попытались выполнить общую конфигурацию для плагина, но наша работа не здесь. Мы все еще должны связать пользователей Openfire с телефонными расширениями, создаваемыми в Elastix.
Это логично, так как нет никакого пути к Openfire, для того чтобы знать, какой пользователь мгновенного обмена сообщениями использует определенное телефонное расширение. Для этого мы должны в меню Asterisk IM ->Phone Mappings.
\
Отображение пользователей Openfire телефоных расширений
Готово после того, как необходимые учетные записи отображатся и мы будем иметь мгновенный обмен сообщениями интегрированными с телефонией!
зы
важно прописать SRV запись для домена JABER
_xmpp-client._tcp.conference SRV 10 5222 vashdomen.ru. 20
_xmpp-client._tcp SRV 10 5222 vashdomen.ru. 20
_xmpp-server._tcp.conference SRV 10 5269 vashdomen.ru. 20
_xmpp-server._tcp SRV 10 5269 vashdomen.ru. 20
_sip._udp SRV 10 5060 vashdomen.ru. 10
_stun._udp SRV 10 3478 vashdomen.ru. 10
Окончание общей конфигурации для плагина Asterisk-IM
Иногда, при использовании Embedded Database, сервер который мы только что добавили не будет отображаться, как показано на рисунке выше (хотя сообщение » Server created succesfully « появляется). Это можно исправить только путем выполнения следующих команд (в Linux оболочку с правами администратора):
perl -pi.bak -e ‘s/(.*serverName.*)/ serverName varchar(255) not null,/’ /opt/openfire/plugins/asterisk-im/database/asterisk-im_hsqldb.sql
service openfire restart
Мы попытались выполнить общую конфигурацию для плагина, но наша работа не здесь. Мы все еще должны связать пользователей Openfire с телефонными расширениями, создаваемыми в Elastix.
Это логично, так как нет никакого пути к Openfire, для того чтобы знать, какой пользователь мгновенного обмена сообщениями использует определенное телефонное расширение. Для этого мы должны в меню Asterisk IM ->Phone Mappings.
Отображение пользователей Openfire телефоных расширений
Готово после того, как необходимые учетные записи отображатся и мы будем иметь мгновенный обмен сообщениями интегрированными с телефонией!
зы
важно прописать SRV запись для домена JABER
_xmpp-client._tcp.conference SRV 10 5222 vashdomen.ru. 20
_xmpp-client._tcp SRV 10 5222 vashdomen.ru. 20
_xmpp-server._tcp.conference SRV 10 5269 vashdomen.ru. 20
_xmpp-server._tcp SRV 10 5269 vashdomen.ru. 20
_sip._udp SRV 10 5060 vashdomen.ru. 10
_stun._udp SRV 10 3478 vashdomen.ru. 10