Asterisk queue: сбор статистики.
Не могу получить переменные канала после завершения звонка в очереди.
Откуда: Уфа
Сообщений: 5856
|
Re: Asterisk queue: сбор статистики.
|
Сообщений: 74
|
Re: Asterisk queue: сбор статистики.
Alexcr, спасибо.
Дело осложняется еще и тем что у меня 1.4.24.1 ;(
|
Сообщений: 74
|
Re: Asterisk queue: сбор статистики.
switch, черт. красивое решение. спасибо.
почему-то не подумал, что можно подменить файл queue_log на пайп. уперся в tail...
такой еще вопрос. что б не городить с вочдогами для скрипта укладывающего лог в базу, что бы поднимать его если он упадет, а запускать его через inittab как respawn-процесс - он будет запускаться до астера, при условии, что астер у меня стартует через rc.d/rc.local ?
|
Откуда: Уфа
Сообщений: 5856
|
Re: Asterisk queue: сбор статистики.
inittab он не работает, я не разобрался почему
я пускаю при старте из rc.local и через вачдог мониторю (у меня все равно общие вачдоги на систему есть). если в процессе работы скрипт прибит, то в пайпе накопится буфер, ничего не пропадет.
|
Откуда: NiNo
Сообщений: 112
|
Re: Asterisk queue: сбор статистики.
switch: если в процессе работы скрипт прибит, то в пайпе накопится буфер, ничего не пропадет.
тот бефер не сильно большой. Если в пайп только писать не читая из него то пишущий процесс либо залочится либо будет ругаться на ошибку записи, зависит от того как сделано. Так что рестарт скрипта оно переживет, а от чего то более продолжительного может поплохеть.
|
Откуда: Уфа
Сообщений: 5856
|
Re: Asterisk queue: сбор статистики.
ну дык оно на это и рассчитано!
|
Сообщений: 74
|
Re: Asterisk queue: сбор статистики.
Тестировал по-всякому. Все работает.
Отрубал вычитывание из пайпа на пару часов.
В консоль ошибки не сыпал, ликов памяти не заметил.
Правда и никаких данных вновь запущенный парсер из пайпа не получил.
Так или иначе - своеобразно, но решение работает.
|
Откуда: Уфа
Сообщений: 5856
|
Re: Asterisk queue: сбор статистики.
до решения еще далеко, нужно отчеты делать!
|
Сообщений: 74
|
Re: Asterisk queue: сбор статистики.
И снова доброго времени суток.
Вот такая возникла проблема. Событие COMPLETECALLER / COMPLETEAGENT не заносится в лог пока не завершатся все операторы в экстене 'h'
Т.е. на момент запуска AGI-скрипта из лога еще нечего брать.
Пробовал делать Hangup и SoftHangup ничего не помогает.
Что можно сделать?
|
Сообщений: 74
|
Re: Asterisk queue: сбор статистики.
С горем пополам решил проблему.
По методу, предложенному тут switch я сделал перенаправление queue_log в sql.
В экстене 'h' контекста для обработки очереди запускается AGI, который по uniqueid звонка заносит начальные данные в нужную мне таблицу из queue_log по событиям ENTERQUEUE и CONNECT (если имеется).
После чего формирует call-файл с вызовом Local/s@fixsupportcontext и передачей uniqueid через CALLERID(name).
Завершается.
В fixsupportcontext запускается другой AGI который получает uniqueid из calleridname, выбирает из queue_log появившиеся уже там данные и делает update нужной мне таблицы.
Экзотичность метода зашкаливает, но оно работает.
|
|