Уведомление работников Callcenter о входящих звонках клиентов и отображение информации о звонящем абоненте. Уведомление по умолчанию отображается администратору с прописаным SIP номером. Система сравнивает контекс (extensions.conf [контекст]) звонка с SIP номером администратора.
Atrey
ATrey - утилита для операторов call-центра. Данное приложение выводит информацию о звонящем абоненте (ФИО, адрес, тарифный план и т.д.), если он зарегистрирован в базе ABillSа. Так же можно сразу открыть страницу абонента в браузере. Во время звонка также отображает кликабельное уведомление которое открывает страницу пользователя в биллинге.
Table of Contents
Возможности
При подключении модуля Callcenter, утилита отправляет и ведет логи звонков.
Настройка
Адрес Asterisk | Адрес для сервера Asterisk |
---|---|
Port | Порт для подключения к AMI |
Asterisk логин | Логинн от AMI |
Asterisk пароль | Пароль от AMI |
Abills хост | Адрес сервера биллинга |
Abills порт | Порт сервера биллинга |
Admin API KEY | Ключ оператора или администратора в ABillS |
Use https | Использовать ли подключения по https |
Формат телефона | Регулярным выражением можно обрезать ненужные значения |
Скриншоты
Скачать
Реализация в браузере
Работает на WebSocket backend
Возможности
- Отображает уведомления о звонящем абоненте в реальном времени (работает в бавзере Chrom).
- Уведомлять нескольких администраторов если у них прописан одинаковый SIP номер
- Уведомлять нескольких администраторов в одинаковым префиксом номера ($conf{CALLCENTER_ASTERISK_ADMIN_EXPR}=1)
Конфигурация
На биллинге должен быть установлен perl модуль Asterisk::AMI.
В конфиге укажите, что хотите подсоединяться к Астериску для подписки на события libexec/config.pl
Code Block | ||
---|---|---|
| ||
$conf{EVENTS_ASTERISK} = 1; |
Также должны быть указаны настройки подключения к Астериску. libexec/config.pl
Code Block | ||
---|---|---|
| ||
$conf{ASTERISK_AMI_IP} = '127.0.0.1'; $conf{ASTERISK_AMI_PORT} = '5039'; $conf{ASTERISK_AMI_USERNAME} = 'abills_admin'; $conf{ASTERISK_AMI_SECRET} = 'Password'; |
Запустите сервер вебсокетов
Code Block | ||
---|---|---|
| ||
/usr/abills/libexec/websocket_backend.pl -d |
Настройка Asterisk
Если Asterisk находиться на удалённом сервере, нужно указать разрешённый IP permit=xx.xx.xx.xx/255.255.255.0
Code Block | ||||
---|---|---|---|---|
| ||||
[general] displaysystemname = yes enabled = yes webenabled = no port = 5039 bindaddr = 127.0.0.1 displayconnects = yes timestampevents = yes [abills_admin] secret=Password deny=0.0.0.0/0.0.0.0 permit=127.0.0.0/255.255.255.0 read = system,call,log,verbose,command,agent,user,config write = system,call,log,verbose,command,agent,user,config |
Консольные аргументы
LOG_FILE | Куда писать лог, по умолчанию /tmp/abills_websocket.log |
---|---|
DEBUG | Уровень режима отладки, по умолчанию LOG_INFO |
Описание работы
Демон подключается к AMI, и слушает Newchannel события.
На биллинге, нужно включить модуль Events, и прописать $conf{EVENTS_ASTERISK} = 1.
При успешном подключении, в логе будет:
Code Block |
---|
Connecting to asterisk Connected to Asterisk::AMI |
При любом звонке (Newchannel), появится
Code Block |
---|
Got Newchannel event. $caller_number calling to $called_number |
Дальше в базе ищет админа с номером $called_number, если нашло и он сейчас онлайн в билинге, Если не онлайн, в логе
Code Block |
---|
Can't notify $aid, no connection |
будет произведен поиск по абонентам в модуле VOIP по полю number == $caller_number. Если не нашло, в логе:
Code Block |
---|
That's not an ABillS registered number |
Дальше собирается информация об абоненте, и отсылается в браузер как уведомление.