Yoolla - логика продаж

Интеграция с Asterisk

Возможности интеграции с программной АТС “Asterisk

  • Совершение вызова из CRM с функцией Callback (АТС перезванивает сначала вам, а потом вызываемому абоненту)
  • Запись в историю активностей Организации или Персоны о совершенном вызове (в случае успешного соединения)
  • Определение звонящего из Базы данных CRM – получение CallerID
  • Всплытие уведомления о входящем звоке с идентификацией номера телефона в базе данных CRM
  • Запись входящих/исходящих звонков в карточку Клиента/Контакта с возможностью прослушивания разговора

Настройка CRM

Все настройки подключения к серверу Asterisk проводятся в Панели управления CRM:

Начиная с версии 8.10 соединение с сервером Asterisk происходит через AMI. Панель настроек будет выглядеть так:

Проверка соединения

Вы можете проверить правильность параметров и возможность соединения с сервером Asterisk прямо из панели. При этом данные для проверки берутся непосредственно из формы, т.е. проверить соединение можно до сохранения параметров.

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

 

Трекинг звонков
 

  1. MySQL. В траблицу cdr добавить поле did varchar(50)
  2. В диалплан входящего вызова дописать строку диалплана
    ...
    exten => _X.,n,Set(CDR(did)=${EXTEN})
    ..

п.п. 1 и 2 во FreePBX уже есть из коробки

Определение имени звонящего

Функция определения имени звонящего (FreePBX CallerID Lookup) позволяет отображать на экранах софтфонов или sip-аппаратов не только номера звонящего, но и его имени, если оно имеется в базе данных системы CRM.

Настройка производится на стороне Asterisk.

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

  1. В соответствующем разделе создайте новый источник поиска и укажите Ваши данные сервера Asterisk
  2. Укажите параметры подключения к скрипту. Скрипт для поиска имени звонящего находится в папке адрес_crm/api/asterisk/callerid.php.
    В качестве запроса укажите: phone=[NUMBER]&apkey=ваш_ключ
  3. По-умолчанию Имя абонента отображается в транслите. Начиная с версии 8.10 можно добавить доп.параметр для отключения транслита. Тогда запрос будет выглядеть так: phone=[NUMBER]&apkey=ваш_ключ&t=no
  4. apkey можно получить в Панели управления / Общие настройки / блок "Настройки безопасности" (см. Общие настройки)

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

Для того, чтобы узнать Ответственного сотрудника по номеру входящего звонка нужно обратиться к скрипту 

адрес_crm/api/asterisk/sipusers.php?phone=[NUMBER]&apikey=ваш_ключ

Скрипт выдаст внутренний номер телефона сотрудника, Ответственного за Клиента или контакт, которому принадлежит входящий номер.

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

Звонок по клику из CRM

  1. В панели Администрирования перейдите в раздел «Интеграция» / «Сервер ip-телефонии»
  2. Активируйте функцию телефонии выбором меню «Использовать» и Asterisk в меню «Тип SIP»
  3. Введите данные для подключения в поля и сохраните
  4. Далее необходимо настроить внутренний номер каждого сотрудника. Это делается в разделе Администрирование / Сотрудники / Редактировать сотрудника:

Теперь все номера телефонов в системе будут преобразованы в ссылки. При клике на любой номер система будет отправлять запросы на сервер Asterisk для совершения звонка методом Callback – т.е. сервер Asterisk будет сначала набирать номер оператора, отправившего запрос, а затем на номер абонента.

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

Во-первых, необходимо создать пользователя для управления asterisk. Для этого достаточно внести соответствующую запись в /etc/asterisk/manager.conf, в примере ниже добавлен пользователь 1cami с паролем PASSWORD1cami. Важно также в секцию general добавить опции указанные в примере.

manager.conf
[general]
enabled = yes
port = 5038
bindaddr = 0.0.0.0
allowmultiplelogin = yes
webenabled = yes
httptimeout = 60

[1cami]
secret = PASSWORD1cami
deny=0.0.0.0/0.0.0.0
permit=0.0.0.0/0.0.0.0
read = call,cdr,user,config
write = call,originate,reporting,command,system

Окончательная проверка соединения

Можно воспользоваться опцией проверки соединения из настроек:

Настройка для чтения статистики CDR.

Для возможности чтения статистики звонков необходимо настроить запись CDR в базу данных MySQL, а также необходимые пути в Настройках интеграции с Asterisk.

  1. Разместите файл «cdr2crm.php» (находится в папке api/asterisk/) на сервере Asterisk. Скрипт должен быть доступен для запросов из CRM. Или можете скачать его:
     Скачать
  2. Измените в скрипте «cdr2crm.php» параметры подключения к базе данных MySQL:
    1. $config['secret'] – параметр проверки легальности запроса. Используется API key из Общих настроек системы.
    2. @mysql_connect('localhost', 'freepbxuser', 'eJjsKGdfgfj0MhfnXi') – параметры подключения к Базе данных
    3. @mysql_select_db('asteriskcdrdb') – имя базы данных, куда ведется запись статистики
  3. В настройках укажите путь подключения к скрипту «cdr2crm.php»
  4. Для возможности прослушивания записи разговоров необходимо включить эту функцию в Asterisk. Запись файлов должна происходить в формате WAV.
  5. Настройте путь поиска записей разговоров в настройках
  6. Для ручной загрузки истории звонков в CRM перейдите в раздел "Календарь" / "История звонков" / Загрузить вручную. Будет загружена история звонков за 24 часа
  7. Для синхронизации по расписанию (например, с помощью утилиты CRON) следует запускать скрипт адрес_crm/api/asterisk/cdr.php?hours=1, где hours - синхронизируемый период в часах

Важно:

В разных сборках Asterisk по-разному записывает параметры uniquid и filename. Вы можете переименовать соответствующие переменные в скрипте cdr2crm.php

Прослушивание разговоров

Прослушать записанные разговоры можно либо из раздела "Календарь" / "История звонков", либо непосредственно из карточки Клиента или Контакта.

Для возможности прослушивания необходимо:

  1. в настройках указать путь до папки, в которой находятся файлы записей. Убедитесь, что по url они доступны для чтения.
  2. убедиться, что файл синхронизации истории звонков передает имя записанного файла (cdr2crm.php)
  3. убедиться, что записи распределяются по папкам: путь_до_папки/год/месяц/день. Если у вас это не так, то надо будет внести изменения в файл api/asterisk/play.php

Видео-пример работы

 

Видео демонстрирует инициацию звонка из Yoolla CRM через Asterisk PBX.

Видео демонстрирует инициацию звонка из SalesMan CRM через Asterisk PBX.


Что-то не понятно? Задай вопрос: