Asterisk: queue_log в MySQL через unixODBC
Realtime лог очереди в нативную базу данных Asterisk.
SQL таблица лога очереди
Создадим таблицу в БД asterisk.
CREATE TABLE IF NOT EXISTS `queue_log` ( `time` varchar(32) DEFAULT NULL, `callid` char(64) DEFAULT NULL, `queuename` char(64) DEFAULT NULL, `agent` char(64) DEFAULT NULL, `event` char(32) DEFAULT NULL, `data` char(64) DEFAULT NULL, `data1` char(64) DEFAULT NULL, `data2` char(64) DEFAULT NULL, `data3` char(64) DEFAULT NULL, `data4` char(64) DEFAULT NULL, `data5` char(64) DEFAULT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
Выключение текстового лога
Если используется стандартное имя queue_logреалтайм семейства (realtime family)
и настроено соединение с базой данных, Asterisk сам создаст таблицу queue_log,
при отключении текстового лога и перезагрузке модуля logger:
*CLI> module reload logger Module 'logger' reloaded successfully. Asterisk Queue Logger restarted
в файле /etc/asterisk/logger.confвыключите лог в файл:
queue_log_to_file = no
в файле /etc/asterisk/asterisk.conf*
[options] queue_adaptive_realtime = yes
* - спорная опция
Конфигурация realtime family
в файле /etc/asterisk/extconfig.conf
queue_log => odbc,asterisk,queue_log
где 'asterisk' ваш db конфиг в /etc/asterisk/res_odbc.conf:
[asterisk] enabled => yes dsn => asterisk username => dbuser password => dbpass pre-connect => yes
Расшифровка значений событий очереди.
event | data1 | data2 | data3 |
---|---|---|---|
ABANDON | position | origposition | waittime |
AGENTDUMP | |||
AGENTLOGIN | channel | ||
AGENTCALLBACKLOGIN | exten@context | ||
AGENTLOGOFF | channel | logintime | |
AGENTCALLBACKLOGOFF | exten@context | logintime | reason |
COMPLETEAGENT | holdtime | calltime | origposition |
COMPLETECALLER | holdtime | calltime | origposition |
CONFIGRELOAD | |||
CONNECT | holdtime | uniqueid | |
DID | did number | ||
ENTERQUEUE | url | callerid | enterposition |
EXITWITHKEY | key | position | |
EXITWITHTIMEOUT | position | ||
QUEUESTART | |||
SYSCOMPAT | |||
TRANSFER | extension,context |
Пример принятого вызова в таблице MySQL:
time | callid | queuename | agent | event | data1 | data2 | data3 |
---|---|---|---|---|---|---|---|
2017-02-17 19:58:32.108944 | 1487339905.409426 | 991 | Tanya | COMPLETECALLER | 2 | 5 | 1 |
2017-02-17 19:58:27.540265 | 1487339905.409426 | 991 | Tanya | CONNECT | 2 | 1487339905.409427 | 1 |
2017-02-17 19:58:25.671737 | 1487339905.409426 | 991 | NONE | ENTERQUEUE | 9981138 | 1 | |
2017-02-17 19:58:25.661590 | 1487339905.409426 | 991 | NONE | DID | 3216111 |
Другие страницы с тегом 'queue':
Команда Asterisk: AddQueueMember
Asterisk настройка очереди - queues.conf
Функция диалплана Asterisk: QUEUE_VARIABLES