Кирилл Золотавин
22.03.2019
3115

Интеграция Asterisk c PlanFix через облачный сервис Telefum24

В прошлой статье мы рассмотрели интеграцию Asterisk и Planfix через облачный сервис Simplit.io, но данная интеграция обладала рядом недостатков: 1. Необходимость открытия AMI во внешнюю сеть 2. Отсутствует возможность дебажинга интеграции без помощи технической поддержки сервиса 3. Нестабильность соединения облачного сервиса с сервером Asterisk В рамках данной статьи будет рассмотрено как выполнить интеграцию Asterisk 13 […]

В прошлой статье мы рассмотрели интеграцию Asterisk и Planfix через облачный сервис Simplit.io, но данная интеграция обладала рядом недостатков:

1. Необходимость открытия AMI во внешнюю сеть
2. Отсутствует возможность дебажинга интеграции без помощи технической поддержки сервиса
3. Нестабильность соединения облачного сервиса с сервером
Asterisk

В рамках данной статьи будет рассмотрено как выполнить интеграцию Asterisk 13 с PlanFix. Возможности интеграции:

1. Оповещение о входящем звонке
2. Исходящий звонок по клику из
PlanFix
3.
История звонков в карточке контакта
4. Детальная информация о звонке
5. Управление бизнес-процессом из карточки звонка

6. Формирование статистики звонков с доступ к записям разговоров из личного кабинета облачного сервиса Telefum24
7.
Расширенная конфигурирование интеграции

Все описанные действия в статье необходимо выполнять от имени суперпользователя (root). Установка и настройка производилась на предустановленной системе CentOS 6.9 + Asterisk 13 + FreePBX 13.

Инструкция:

1. Необходимо создать AMI пользователя в Asterisk, для этого перейдём в WEB панель управления FreePBX через интернет обозреватель(Opera, Firefox, Google Chrome, Yandex Browser….) по ссылке вида: http://IP_адрес_сервера_Asterisk/ В примере ссылка имеет вид: http://192.168.170.163/

2. Пройдём авторизацию во FreePBX, нажмём «FreePBX Administration», введем «username и password» и нажмём «Continue»


Авторизация во FreePBX

3. Перейдём к созданию AMI пользователя. Для этого перейдём в меню «Settings»→»Asterisk Manager Users»→ «Add Manager»→ «Submit»→ «Apply Config», где основные поля для заполнения:

Manager name — имя AMI пользователя(логин)
Manager secret — пароль AMI пользователя
Deny — запрещённые подсети для обращения по AMI
Permit — разрешенные подсети для обращения по AMI 127.0.0.1/255.255.255.255, 5.200.55.23/255.255.255.255 и 176.122.20.120/255.255.255.255


Переход в меню «Settings»→»Asterisk Manager Users»

Добавление менеджера

Заполнение основных параметров AMI пользователя

Ограничение прав AMI пользователя.

Применение внесенных изменений
Установка слабого пароля для AMI пользователя и установка 0.0.0.0/0 подсети в качестве разрешенной может привести к несанкционированному доступу к серверу телефонии.

4.Выполним предварительную настройку PlanFix, для этого пройдем авторизацию с учетной записью с правами администратора и Меню->Управление аккаунтом->Интеграция с другими сервисами->Виртуальные АТС


Авторизация в PlanFix

Переход в раздел управления дополнительными сервисами интеграции PlanFix

5.Найдем пункт интеграции  «Telefum24-Asterisk», активируем данный пункт и перейдем в настройки. Из раздела настроек необходимо скопировать и сохранить «Название аккаунта» и «Ключ авторизации (token) ПланФикса», а так же прописать следующие настройки:

Короткие номера сотрудников — необходимо выполнить закрепление сотрудника за внутренним номером используемым на Asterisk
Записи разговоров — в зависимости от выбранного параметра, возможно хранить записи разговоров на АТС или загружать в PlanFix


Включение интеграции Telefum24-Asterisk

Настройка интеграции Telefum24-Asterisk

6.Выполним подключение по SSH к серверу IP АТС Asterisk для выполнения дальнейшей настройки. В зависимости от используемой системы(Windows, Linux, MacOS), подключение по SSH можно выполнить с использованием различного дополнительного программного обеспечения(Putty), либо системного терминала.

7. Облачный сервис Telefum24 осуществляет подключение к Asterisk через дополнительный модуль коннектор по портам 9000(TCP) и 9500(TCP), необходимо разрешить обращения с IP адресов облачного сервиса  5.200.55.23, 176.122.20.120 на данные порты. Для этого выполним в терминале ряд команд вида:

# iptables -I INPUT -p tcp -s 5.200.55.23 --dport 9000 -j ACCEPT
 # iptables -I INPUT -p tcp -s 5.200.55.23 --dport 9500 -j ACCEPT
 # iptables -I INPUT -s 176.122.20.120 -p tcp -m tcp --dport 9500 -j ACCEPT
 # iptables -I INPUT -s 176.122.20.120 -p tcp -m tcp --dport 9000 -j ACCEPT
 # service iptables save

Настройка Iptables
Если сервер Asterisk расположен за NAT, то помимо разрешения портов в Iptables, так же потребуется выполнить проброс портов на сетевом оборудовании.

8.Выполним установку модуль коннектора на сервер телефонии:

# mkdir /usr/src/telefum
 # cd /usr/src/telefum
 # wget http://telefum.com/EugenyData/webserver/redhat_pbx/toservice_run
 # chmod 755 toservice_run

9.После успешного скачивания модуль-коннектора необходимо выполнить его запуск с указанием внешнего IP адреса АТС

# ./toservice_run 1.1.1.1

где 1.1.1.1 — это внешний IP АТС(указыватся даже если АТС находится за NAT)

При запуске приложения может возникнуть ошибка: «/lib64/libc.so.6: version `GLIBC_2.14′ not found». В данном случае необходимо выполнить замену файла toservice_run на следующий FILE(в папке «файлы» toservice_run)

Запуск модуль коннектора

10.Приступим к конфигурированию модуль коннектора:

# cd /usr/src/telefum/toapi_server
 # nano mysql.ini

Выполним редактирование следующих параметров:
<login> — логин подключения к базе данных Asterisk
<password> — пароль подключения к базе данных Asterisk
<database> — имя базы данных Asterisk(по умолчанию: asteriskcdrdb)

Во FreePBX Distro данные подключения к базе данных можно взять с конфигурационного файла FreePBX /etc/freepbx.conf

Настройка подключения к MySQL
# nano pbxserver_config.ini

В данном конфигурационном файле необходимо прописать только внешний IP Asterisk в соответствии со скриншотом:


Настройка конфигурационного файла pbxserver

где 1.1.1.1 — это внешний IP АТС (указываться даже если АТС находится за NAT)

# nano pbxserver2_config.ini

В данном конфигурационном файле так же необходимо прописать только внешний IP Asterisk в соответствии со скриншотом:


Настройка конфигурационного файла pbxserver2

где 1.1.1.1 — это внешний IP АТС (указываться даже если АТС находится за NAT)

# nano ast_config.ini

где потребуется изменить ast_timezone — часовой пояс для корректного прописывания времени создаваемого события в PlanFix
call_history.recording_add_path — путь к записям разговора по http по порту 8080


Редактирование  конфигурационного файла ast_config

Для возможности осуществления исходящих звонков выполним редактировании конфигурационного файла makecall

# nano makecall.txt

где потребуется изменить Channel — в зависимости от используемого протокола или технологии подключения внутренних номеров(SIP, IAX, Dahdi….)
Context – контекст для исходящих вызовов(по умолчанию: from-internal)


Редактирование  конфигурационного файла makecall
# nano transfer_call.txt

где потребуется изменить Context – контекст для исходящих вызовов(по умолчанию: from-internal)


Редактирование  конфигурационного файла transfer_call

11.Для корректного обращения к записям разговоров необходимо создать дополнительный VirtualHost в Apache.

# nano +1500 /etc/httpd/conf/httpd.conf

Добавить следующие строки:

NameVirtualHost *:8080
Listen 8080
<VirtualHost *:8080>
DocumentRoot /var/www/html/monitor
<Directory /var/www/html/monitor>
RewriteEngine off
Options +FollowSymLinks
</Directory>
</VirtualHost>

# mkdir /var/www/html/monitor
 # cd /var/www/html/monitor
 # ln -s /var/spool/asterisk/monitor

Добавление VirtualHost

12. После описанных всех действий можно выполнить первый запуск модуль коннетора, для этого выполним ряд команд вида:

# cd /usr/src/telefum/toapi_server/
 # ./pbxserver_autorun
 # ps aux | grep pbx

Успешный запуск модуль коннектора

13.Если запуск модуль коннектора прошел успешно, то приступим к конфигурированию интеграции в личном кабинете Telefum24, для этого перейдем по адресу https://www.online.telefum.com/auth через любой удобный интернет обозреватель(Google Chrome, Firefox, Opera, Yandex Browser…..) и пройдем процедуру авторизации введя логин и пароль:


Авторизация в личном кабинете Telefum24

14.Перейдем к добавлению интеграции с PlanFix, для этого нажмем «Добавить CRM» из выпадающего списка поля «тип CRM» выберем «PlanFix» и перейдем к следующему шагу настройки, заполним следующие данные и нажмем «Авторизоваться»:

Логин администратра — логин учетной записи PlanFix с правами администратора
Пароль администратора — пароль  учетной записи PlanFix с правами администратора
Название аккаунта — адрес портала PlanFix
Ключ авторизации — token полученный в п.9 данной статьи


Добавление CRM в личном кабинете Telefum24

Добавление CRM в личном кабинете Telefum24

Добавление CRM в личном кабинете Telefum24

15.Успешно добавив данные авторизации с PlanFix, перейдем к добавлению интеграции с Asterisk. Для этого вернемся в раздел «Общие»->«Добавить интеграцию»,  из выпадающего списка поля «Интеграция» выберем «Asterisk» и перейдем к следующему шагу настройки, заполним следующие данные и нажмем «Сохранить»:

Хост — внешний IP сервера Asterisk
Логин AMI – имя AMI пользователя полученного в п.3 данной статьи
Пароль AMI – пароль  AMI пользователя полученного в п.3 данной статьи


Добавление интеграции с Asterisk

Добавление интеграции с Asterisk

16.Перейдем к завершающему шагу сопоставления внутренних номеров и сотрудников компании, для этого перейдем в раздел «Сотрудники»->«Импортировать из CRM» в выпадающем списке выберем добавленную интеграцию с PlanFix и нажмем «Импортировать», данными действиями мы импортируем весь список сотрудников внесенных в Планфикс.


Импортирование списка сотрудников из PlanFix

Импортирование списка сотрудников из PlanFix

Напротив требуемого сотрудника нажмем редактировать и выполним назначение внутреннего номера.


Назначение внутреннего номера

Назначение внутреннего номера

17.При поступлении входящего звонка с городской линии на закрепленный за ним внутренний номер, в PlanFix будет отображена карточка шаблона:

Подписаться
Уведомить о
guest
0 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии

Остались вопросы?

Я - Компаниец Никита, менеджер компании Voxlink. Хотите уточнить детали или готовы оставить заявку? Укажите номер телефона, я перезвоню в течение 3-х секунд.

VoIP оборудование


ближайшие курсы

10 доводов в пользу Asterisk

Распространяется бесплатно.

Asterisk – программное обеспечение с открытым исходным кодом, распространяется по лицензии GPL. Следовательно, установив один раз Asterisk вам не придется дополнительно платить за новых абонентов, подключение новых транков, расширение функционала и прочие лицензии. Это приближает стоимость владения станцией к нулю.

Безопасен в использовании.

Любое программное обеспечение может стать объектом интереса злоумышленников, в том числе телефонная станция. Однако, сам Asterisk, а также операционная система, на которой он работает, дают множество инструментов защиты от любых атак. При грамотной настройке безопасности у злоумышленников нет никаких шансов попасть на станцию.

Надежен в эксплуатации.

Время работы серверов некоторых наших клиентов исчисляется годами. Это значит, что Asterisk работает несколько лет, ему не требуются никакие перезагрузки или принудительные отключения. А еще это говорит о том, что в районе отличная ситуация с электроэнергией, но это уже не заслуга Asterisk.

Гибкий в настройке.

Зачастую возможности Asterisk ограничивает только фантазия пользователя. Ни один конструктор шаблонов не сравнится с Asterisk по гибкости настройки. Это позволяет решать с помощью Asterisk любые бизнес задачи, даже те, в которых выбор в его пользу не кажется изначально очевидным.

Имеет огромный функционал.

Во многом именно Asterisk показал какой должна быть современная телефонная станция. За многие годы развития функциональность Asterisk расширилась, а все основные возможности по-прежнему доступны бесплатно сразу после установки.

Интегрируется с любыми системами.

То, что Asterisk не умеет сам, он позволяет реализовать за счет интеграции. Это могут быть интеграции с коммерческими телефонными станциями, CRM, ERP системами, биллингом, сервисами колл-трекинга, колл-бэка и модулями статистики и аналитики.

Позволяет телефонизировать офис за считанные часы.

В нашей практике были проекты, реализованные за один рабочий день. Это значит, что утром к нам обращался клиент, а уже через несколько часов он пользовался новой IP-АТС. Безусловно, такая скорость редкость, ведь АТС – инструмент зарабатывания денег для многих компаний и спешка во внедрении не уместна. Но в случае острой необходимости Asterisk готов к быстрому старту.

Отличная масштабируемость.

Очень утомительно постоянно возвращаться к одному и тому же вопросу. Такое часто бывает в случае некачественного исполнения работ или выбора заведомо неподходящего бизнес-решения. С Asterisk точно не будет такой проблемы! Телефонная станция, построенная на Asterisk может быть масштабируема до немыслимых размеров. Главное – правильно подобрать оборудование.

Повышает управляемость бизнеса.

Asterisk дает не просто набор полезных функций, он повышает управляемость организации, качества и комфортности управления, а также увеличивает прозрачность бизнеса для руководства. Достичь этого можно, например, за счет автоматизации отчетов, подключения бота в Telegram, санкционированного доступа к станции из любой точки мира.

Снижает расходы на связь.

Связь между внутренними абонентами IP-АТС бесплатна всегда, независимо от их географического расположения. Также к Asterisk можно подключить любых операторов телефонии, в том числе GSM сим-карты и настроить маршрутизацию вызовов по наиболее выгодному тарифу. Всё это позволяет экономить с первых минут пользования станцией.