После Queue диалплан не выполняется.
Добавлено: 30 сен 2010, 17:05
Всем хорошего настроения!
Настраиваю работу queue для обслуживания входящих звонков в службу поддержки.
Агенты динамические. Их может быть от 0 до 3. Добавляются через AddQueueMember при входе в систему.
Очень важно собирать следующие данные:
* Сколько звонков поступило всего (решаемо до вызова app queue)
* сколько звонок длился (я так понимаю, что переменная ANSWEREDTIME в данном случае не работает, тогда как?)
* кто из агентов ответил на звонок (судя по описанию за это отвечает переменная MEMBERINTERFACE...)
* сколько звонков было принято (можно решить, если отработает диалплан после вызовал queue)
* причина завершения звонка (опять же в теории за это отвечает переменная QUEUESTATUS...)
Теперь суть проблемы.
После вызова апликейшена queue, когда звонящий или агент вешает трубку - обработка дальше по диалплану в этом экстене не идет.
== Spawn Extension (default ... бла-бла) exited non-zero....
Всё. Все остальные директивы что в диалплане после queue не обрабатываются.
Если же для приложения Queue указать параметр "n" - то после неответа или при занятости всех линий астериск завершает queue и обрабатывает директивы после его вызова... но как тогда абоненту оставаться на линии и дождаться свободного агента? Циклически перезапускать queue ? Бред. Тогда пропадают периодические анонсы о месте в очереди.
Пробовал экстен h
Но все переменные что мне нужны в нем неопределены. Т.е. пустые.
Настраиваю работу queue для обслуживания входящих звонков в службу поддержки.
Агенты динамические. Их может быть от 0 до 3. Добавляются через AddQueueMember при входе в систему.
Очень важно собирать следующие данные:
* Сколько звонков поступило всего (решаемо до вызова app queue)
* сколько звонок длился (я так понимаю, что переменная ANSWEREDTIME в данном случае не работает, тогда как?)
* кто из агентов ответил на звонок (судя по описанию за это отвечает переменная MEMBERINTERFACE...)
* сколько звонков было принято (можно решить, если отработает диалплан после вызовал queue)
* причина завершения звонка (опять же в теории за это отвечает переменная QUEUESTATUS...)
Теперь суть проблемы.
После вызова апликейшена queue, когда звонящий или агент вешает трубку - обработка дальше по диалплану в этом экстене не идет.
== Spawn Extension (default ... бла-бла) exited non-zero....
Всё. Все остальные директивы что в диалплане после queue не обрабатываются.
Если же для приложения Queue указать параметр "n" - то после неответа или при занятости всех линий астериск завершает queue и обрабатывает директивы после его вызова... но как тогда абоненту оставаться на линии и дождаться свободного агента? Циклически перезапускать queue ? Бред. Тогда пропадают периодические анонсы о месте в очереди.
Пробовал экстен h
Но все переменные что мне нужны в нем неопределены. Т.е. пустые.