artem
13.06.2018
22146

Интеграция Bitrix CRM с Asterisk средствами модуль коннектора BX24Asterisk .

Ранее мы рассмотрели два способа интеграции Asterisk и Bitrix CRM: 1. Интеграция Битрикс24 с Asterisk, используя приложение «простые звонки» — с использованием модуль коннектора «Простые звонки» 2. Интеграция Битрикс24 с Asterisk, используя приложение «Интеграция с Asterisk» — с использованием модуль коннектора BX24Asterisk старой версии. Недостатком данных двух методов являлось необходимость использования интернет обозревателя Google Chrome с предустановленным расширением(приложением) от разработчика модуль коннектора. В рамках данной статьи будет рассмотрена интеграция Asterisk и Bitrix CRM средствами модуль коннектора BX24Asterisk новой версии, который не требует обязательного использования  интернет обозревателя Google Chrome и обладает хорошим списком возможностей.

Возможности:

1. В момент вызова открывается карточка клиента
   1.1. Основная информация о клиенте во время вызова и разговора
   1.2. Быстрый переход к детальной информации и сделкам клиента
   1.3. Быстрое создание сделки и счета клиенту
   1.4. Комментарий к текущему разговору

2. Для неизвестных номеров информация о контакте автоматически загружается из 2ГИС

3. Создание звонков в CRM. Для каждого разговора в CRM создается дело
   3.1. Возможно прослушать запись разговора
   3.2. Фиксируется длительность каждого разговора
   3.3. Возможно построение необходимой отчетности по разговорам менеджеров

4. Звонки прямо из CRM
   4.1. Кликом по номеру телефона в карточке клиента(Click2Call)
   4.2. Вводом номера во встроенном виджете Битрикс24

5. Автоматическое создание лидов.
   5.1. Автоматически создается лид для неизвестного номера
   5.2. Возможно указать разные источники лидов исходя из того, на какой номер телефона к вам позвонили

6. Фиксация пропущенных звонков
   6.1. Для неизвестных номеров автоматически создаются лиды
   6.2. Для клиентов автоматически создаются события пропущенного звонка на ответственных сотрудников

7. Автоматическое соединение с ответственным специалистом

8. Возможность кастомизации интеграции

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

Инструкция:

1. Перейдем в интернет обозревателе на страницу Bitrix CRM и пройдем авторизацию под учетной записью с правами администратора

Авторизация на портале Bitrix CRM.

2. Перейдем в Приложения→Категория→IP телефония→ Интеграция с Asterisk→ для ознакомления с возможностью интеграции можно выбрать «Попробовать (14 дней)»

Установка приложения BX24Asterisk в CRM

Установка приложения BX24Asterisk в CRM

Установка приложения BX24Asterisk в CRM

3. В появившемся окне убедимся что для приложения активны все необходимые разрешения(стоят галочки напротив соответствующих пунктов), ознакомимся с «Лицензионным соглашением» и «Политикой конфиденциальности», и в случае согласия с данными документами ставим согласие напротив соответствующих пунктов, для завершения установки приложения нажимаем «Установить»

Установка приложения BX24Asterisk в CRM

4. Выполним закрепление внутренних номеров за сотрудниками компании в CRM, для этого перейдем в меню Телефония→Пользователи→ Настроить в появившемся окне прописать параметр «Внутренний номер» и нажать «Сохранить»

Закрепление внутреннего номера за сотрудником

Закрепление внутреннего номера за сотрудником

5. Для возможности осуществления исходящих звонков из CRM системы необходимо выполнить настройки форматирования номера, для этого перейдем в CRM→ Еще→ Настройки→ Другое→ Прочие настройки→ Форматирование и в поле «Формат вывода ссылок «callto»» необходимо выбрать «вызов через телефонию Битрикс24» и нажать «Применить»

Редактирование настроек форматирования номера.


Редактирование настроек форматирования номера.


Редактирование настроек форматирования номера.

6. При использование коробочной версии Bitrix CRM, для корректного прохождения исходящих звонков необходимо добавить несколько строк в файл dbconn.php, для этого перейдем в панель Администратора→ Контент→ Файлы и папки→ Bitrix→ php_interface→ редактировать как PHP и в конец файла добавим следующие строки:

if($_REQUEST[‘COMMAND’] === ‘startCallViaRest’ || $_SERVER[‘REQUEST_URI’] === ‘/rest/voximplant.call.startViaRest.json’) {
  define(‘BITRIXREST_URL’, ‘IP_Asterisk:8077’);
}

Редактирование dbconn.php


Редактирование dbconn.php

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

WEB панель FreePBX.

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

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

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

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

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

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


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


Применение внесенных изменений

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

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

Подключение по SSH через Putty

Авторизация на сервере.

Внимание, при авторизации на сервере, пароль в консоли не отображается.

SSH консоль подключения.

11. Приступим к установке и конфигурированию модуль коннектора, для этого в SSH выполним пару команд вида:

Для 64 битных систем:

# cd /usr/src/
# wget https://bx24asterisk.ru/download/autoinstaller.sh
# chmod +x autoinstaller.sh
# ./autoinstaller.sh

 

Для 32 битных систем:

# cd /usr/src/
# wget https://bx24asterisk.ru/download/autoinstaller32.sh
# chmod +x autoinstaller.sh
# ./autoinstaller.sh

Установка модулько коннектора скриптом автоинсталяции.

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

# yum install python-setuptools
# easy_install supervisor

Установка Supervisor

Создадим конфигурационный файл:

# echo_supervisord_conf > /etc/supervisord.conf

Создание службы запуска/остановки/перезапуска Supervisord:

# nano /etc/rc.d/init.d/supervisord

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

#!/bin/bash
. /etc/init.d/functions
DAEMON=/usr/bin/supervisord
PIDFILE=/var/run/supervisord.pid
 [ -x «$DAEMON» ] || exit 0
start() {
        echo -n «Starting supervisord: »
        if [ -f $PIDFILE ]; then
                PID=`cat $PIDFILE`
                echo supervisord already running: $PID
                exit 2;
        else
                daemon  $DAEMON —pidfile=$PIDFILE -c /etc/supervisord.conf             RETVAL=$?
                Echo
                [ $RETVAL -eq 0 ] && touch /var/lock/subsys/supervisord
                return $RETVAL
        fi
}
stop() {
        echo -n «Shutting down supervisord: »
        echo
        killproc -p $PIDFILE supervisord
        echo
        rm -f /var/lock/subsys/supervisord
        return 0
}
case «$1» in
    start)
        start
        ;;
    stop)
        stop
        ;;
    status)
        status supervisord
        ;;
    restart)
        stop
        start
        ;;
    *)
        echo «Usage:  {start|stop|status|restart}»
        exit 1
        ;;
esac
exit $?

Создание файла службы

Дадим права на запуск:

# chmod +x /etc/rc.d/init.d/supervisord

Отредактируем файл конфигураций supervisord и добавим в самый конец файл несколько строк вида:

# nano /etc/supervisord.conf
[program:bx24asterisk]
command=/opt/bx24asterisk/bx24asterisk_core
user=asterisk
autostart=true
autorestart=true

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

Выполним запуск Supervisor и проверим запустился ли модуль коннектор:

# service supervisord start
# ps aux | grep bx24asterisk

Статус запуска модуль коннектора.

13. Приступим к конфигурированию модуль коннектора для этого перейдём в WEB панель конфигуратора через интернет обозреватель(Opera, Firefox, Google Chrome, Yandex Browser….) по ссылке вида: http://IP_адрес_сервера_Asterisk:8077/config и пройти авторизаци, поумолчанию Логин: admin Пароль: secret. В примере ссылка имеет вид: http://192.168.170.163:8077/config

Авторизация в WEB конфигураторе


Редактирование настроек

В разделе прочих настроек возможно выбрать создавать ли автоматически лид при:
1) Входящих звонках
2) Исходящих звонках
3) Создание нового дела при переводе

Путь до файла кастомизатора необходимо прописать следующий:

/etc/bx24asterisk/customizer.php

Дата и время, с которых начать обрабатывать звонки (гггг-ММ-дд чч-мм-сс) — обычно устанавливается дата и время момента проведения интеграции

Уровень логирования

debug — фиксируем все события в логе;
info — фиксирует всё, кроме отладочной информации;
warning — фиксируем только исключительные ситуации, критические ошибки
critical — фиксируем только критические ошибки
fatal — фатальные ошибки. При нормальной работе ничего не выводится

Возможные префиксы номеров — прописываем префиксы номеров в формате передаваемым оператором связи

Редактирование настроек подключения к базе данных.

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

При установленном FreePBX 13 версии, логин и пароль доступа к базе данных  asteriskcdrdb можно узнать из файла /etc/freepbx.conf

Редактирование настроек модуль коннектора.

Получать данные из 2Гис — если включить данные пункт, то при поступлении звонка от неизвестного клиента будет проверяться информация по номеру в базе 2Гис и передаваться в CRM

Загружать файлы записей разговоров в CRM — включением данного пункты мы определяем будут ли храниться записи разговоров только на сервере телефонии или так же будут загружаться в хранилище CRM

Обязательным условием для корректной передачи записи разговора в CRM систему является выполнение конвертации записи в формат mp3 до передачи в CRM, данный функционал можно реализовать средствами файла кастомизации.

Смещение в секундах от UTC — данный парамметр необходим для корректной передачи времени поступления звонка в создаваемый лид. Данный паррамметр можно расчитать по формуле: 3600*(значение часового пояса). Пример для часового пояса +3(Москва): 3600*3=10800

Сопоставление внешних номеров телефона с источниками вызова в CRM — настраиваемое дополнительное поле в создаваемом лиде, в которое можно передать источник обращения в зависимости от городской линии на которую поступил звонок. По умолчанию в поле идентификатора источника обращения необходимо прописывать числовое значение за которым закреплен источник в CRM по инструкции: https://www.youtube.com/watch?v=C2_z9YSVob0&feature=youtu.be

Настройка подключения к Bitrix порталу.

Адрес — адрес портала CRM системы. При использовании коробочной версии, для безопасного подключения рекомендуется наличие SSL сертификата для обращения по https к порталу.

Пользователь — логин пользователя CRM системы. Рекомендуется завести отдельную учетную запись для Asterisk

Пароль — пароль пользователя CRM системы.

ID пользователя портала, назначаемого ответсвенным за создаваемые лиды — по умолчанию рекомендуется установить ID=1, это идентификатор администратора портала CRM от имени которого будут автоматически создаваться лиды.

 Настройка WEB сервера

Внешний адрес сервера — адрес и порт по которому приложение будет доступно для внешних сервисов. Если сервер АТС Asterisk находится внутри локальной сети компании, обязательно выполнить проброс настраиваемого порта.

Внутренний адрес сервера — дрес и порт для корректного обращения к записям разговоров внутри локальной сети компании.

Подключение к Asterisk

Хост — адрес сервера АТС Asterisk, если модуль коннектора устанавливается на тот же сервер, то оставляем данное поле без изменений.

Порт — порт AMI Asterisk. По умолчанию 5038

Пользователь — имя AMI пользователя созданного в 9-м пункте данной статьи

Пароль — пароль AMI пользователя созданного в 9-м пункте данной статьи

Полный путь до папки с записями разговоров — по умолчанию /var/spool/asterisk/monitor в случае использования отличного от стандартного пути, то прописать используемый полный путь без указания «/» в конце пути

Файл записей хранится в каталогах вида ГОД/МЕСЯЦ/ДЕНЬ — обязательно включить данный пункт при установленном FreePBX

Настройка парамметров для осуществления исходящих звонков из CRM

Контекст, в котором создаются звонки — контекст диалплана Asterisk для осуществления исходящих звонков, по умолчанию используется «from-internal», в случае использования отличного контекста, то необходимо указать его в данном поле

На данном этапе все ключевые настройки выполнены и нажатием кнопки «Сохранить» можно перейти к тестированию выполненной интеграции

 Поступление входящего звонка и всплытие карточки клиента.

Книга 101 функция Asterisk
Познакомьтесь с возможностями Asterisk. Найдите инструменты, которые помогут вашей компании развиваться.
Скачать книгу
Подписаться
Уведомить о
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 сим-карты и настроить маршрутизацию вызовов по наиболее выгодному тарифу. Всё это позволяет экономить с первых минут пользования станцией.