Страница 1 из 1

Queue

Добавлено: 09 дек 2011, 15:03
Helpix
Добрый день всем.
Нарисовалась такая проблемка.

Есть очередь допустим из 3 операторов.
Звонит нам клиент - попадает на 1-го оператора (идет вызов первому оператору), бац оператор отклоняет вызов.
Затем делается вызов на 2-го оператора, который тоже отклоняет вызов, и третий точно так же делает.

После такого звонка добавляется запись в cdr табличку, но поле dstchannel остается пустым, потому что разговор не произошел ни с одним из 3-х операторов, а хотелось бы увидеть все таки на какой сип был последний дозвон, даже если и не ответили.

Каким образом можно провернуть такое дело, может кто-то сталкивался уже?

Re: Queue

Добавлено: 09 дек 2011, 15:14
Vlad1983
слушать AMI партить эвенты и бить нужное в БД

Re: Queue

Добавлено: 09 дек 2011, 16:17
zzuz
Я бы посоветовал завести в Бд табличку и мониторить по uniqueid очереди звонки на операторов. Мониторить по средствам обращения AGI скрипта в прописанном контексте операторов, где очередь должна звонить на них.
к примеру.

queue.conf
member = Local/op-1234@op_context/n

[op_context]
exten => dial-op-.,n,AGI(put_data.agi,${CDR(uniqueid)},${EXTEN:8})

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

Re: Queue

Добавлено: 09 дек 2011, 17:14
Vlad1983
тоже вариант
но слушая AMI получаем больше инфы
и можно получить в итоге статистику аналогичную такой http://depositfiles.com/files/wp5a09stw

Re: Queue

Добавлено: 09 дек 2011, 17:21
Helpix
Спасибо ребята!

Я нашел в принципе вариант, ну по крайней мере мне его достаточно будет.

Собираем конфиг:

logger.conf
queue_log = yes
queue_log_name = queue_log

В Asterisk CLI:"logger reload"

После чего появляются логи, с параметром uniqueid и я думаю трудности не составит сопоставить определенный лог со звонком!

Re: Queue

Добавлено: 09 дек 2011, 17:50
Vlad1983
http://www.asternic.biz/downloads
в составе lite версии есть скрипт, который парсит как раз логи очереди и в базу загоняет
можно немного переточить под себя
и использовать ротацию логов, чтоб быстрей парсил