artem
14.05.2018
6233

Умная маршрутизация средствами CDR.

Бывает необходимость на предприятии для экономии времени соединять клиента сразу с ответственным менеджером, минуя общий колл-центр. Но при этом нет CRM системы, которая могла бы выполнять сопоставление номера звонящего и ответственного. Простым эквивалентом может служить распознавание ответственного по базе.

Особенности умной маршрутизации CDR

Пример реализации

Нам понадобятся:

1.       Настроенный ODBC драйвер подключения к MySQL. По-умолчанию включен в FreePBX Distro, но требуется переименовать файл конфигурации func_odbc.conf

Или можно установить по следующей инструкции: https://voxlink.ru/kb/asterisk-configuration/asterisk_odbc_mysql/

2.       Доступ с правами на редактирование конфигурационных файлов: func_odbc.conf и extensions_custom.conf

Первым делом, составим запрос в базу который будет возвращать внутренний номер последнего ответившего оператора на этот входящий номера. Он примет следующий вид:

SELECT dst //выбираем поле «назначение»
FROM cdr // из таблицы звонков
WHERE // согласно следующим параметрам…
calldate > now() — interval 30 day AND // за последние 30 дней
length(dst)=3 AND // входящие на внутренние (трехзначные)
disposition=»answered» AND // которые были отвечены
src=’${ARG1}’ // с номера который совпадает с текущим
ORDER BY calldate // сортируем по дате
DESC LIMIT 1; // и возвращаем один, последний результат

Выберем номер клиента и проверим работу функции. Если все верно, мы получим примерно следующий результат:

Звонки в CDR

Последним на звонок этого клиента ответил внутренний номер 500.

Теперь нам необходимо внедрить проверенную функцию в ODBC драйвер, для возможности вызова средствами диалплана.

Открываем на редактирование файл func_odbc.conf и вносим в конец файла следующие правки:

[get_last_operator]
dsn=asteriskcdrdb
readsql=select dst from cdr where calldate > now() — interval 30 day and length(dst)=3 and disposition=»answered» and src=’${ARG1}’ order by calldate desc limit 1;

Должно получиться следующим образом:

Создание ODBC функции

После чего желательно выполнить «core restart» или комбинацию «submit»+«apply».

Убедиться в том что настройки функции перечитаны и готовы к использованию можно проверить коммандой в CLI консоли:

Проверка функции ODBC

Работает? Отлично. Осталось настроить диалплан для обработки входящего вызова.

Создадим свой контекст, внесем изменения в файл extensions_custom.conf дописав в конец:

[from-brain-routes]
exten => 1,1,NoOp(================ brain routes =================)
same => n,Set(operator=${ODBC_get_last_operator(${CALLERID(num)})})
same => n,GotoIf($[«${operator}»!=»»]?from-internal,${operator},1:ext-queues,500,1)

Теперь у нас есть функция работы с базой, обработчик диалплана с условием если определен ответсвеный направить вызов на него, если нет – направить на общую очередь. В примере она имеет номер 500, на практике можно подставить свой.

Следующий шаг: необходимо завернуть все входящие звонки на наш обработчик.

Переходим в кастомные маршруты (custom destinations)

Где найти кастомные маршруты

Создаем новый экземпляр и редактируем как показано ниже:

Создание кастомизируемого маршрута

Таким образом мы создали указатель на наш кастомный обработчик диалплана. Внимаение! Соблюдайте внимательность в первой строке, поскольку это метка для перехода.

Последний штрих. Указываем всем входящим маршрутам направляться в кастомный диалплан. Для этого открываем входящие маршруты (inbound routes).

Где настроить входящий маршрут

И в интересующих нас маршрутах выставляем созданное нами на прошлом этапе направление:

Направление маршрута в кастомный dialplan

Далее остается только тестирование и отладка функционала.

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