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

Кто положил трубку...?

Добавлено: 20 апр 2011, 17:29
gmurik
Господа модераторы проу прощения если ошибся разделом. Господа астерисководы вопрос к вам. Есть Оператор и Клиент.
Есть Астериск 1.6. Есть задача узнать кто полложил трубку тоесть кто инициировал окончание разговора. И допустим записать в базу.

Если у кого то есть пример кусочка диалплана буду предельно рад. Ибо сам до конца не понял как это реализовать. Если записать в базу можно еще AGI прикрутить там али еще что. То вот как понять кто положил трубку?

Re: Кто положил трубку...?

Добавлено: 21 апр 2011, 09:44
IgorG
Если сотрудник не в очереди, то стоит посмотреть состояние переменных в момент перехода в h экстенжн после того как разговор окончил звонящий или сотрудник. ставите Wait(100) и в консоли командой core show channel SIP/xxxx-xxx смотрите состояние переменных.

Если разницы не найдется - стоит поиграться с параметрами Dial, сделав таки образом, что после того как ответивший сотрудник положил трубку выполнение диалплана продолжается. Факт продолжения выполнения диалплана фиксируем в CDR и завершаем вызов.

Re: Кто положил трубку...?

Добавлено: 21 апр 2011, 13:02
barkosa
А лучше всего взглянуть queue_log. Там вы точно увидите кто положил первый трубку. Более подробная инфа:
http://www.voip-info.org/wiki/view/Aste ... +queue_log

Кстати можно сделать что бы queue_log писался сразу в базу а не в текстовый файл. Об этом более подробно здесь:
http://www.voip-info.org/wiki/view/Aste ... g+on+MySQL

Связь звонков из queue_log и cdr идет по uniqueid.

Re: Кто положил трубку...?

Добавлено: 21 апр 2011, 13:32
perlik
А еще точнее нужно смотреть:

COMPLETEAGENT - агент

COMPLETECALLER - звонящий

Re: Кто положил трубку...?

Добавлено: 22 апр 2011, 14:01
gmurik
А где это искать?
В `queue_log`
Есть поля.
id t_unix call_id queue agent event param1 param2 param3 is_checked

Re: Кто положил трубку...?

Добавлено: 22 апр 2011, 16:52
barkosa
Поле Event должно содержать COMPLETEAGENT (значит агент положил трубу первым) либо COMPLETECALLER (значит абон положил трубу первым). Эти записи будут появляться в том случае если звонок попал в очередь и был отвечен агентом. Да и вообще по queue_log можно определить полностью что происходило с абоном в очереди.

Re: Кто положил трубку...?

Добавлено: 25 апр 2011, 11:18
gmurik
Спасибо за ответы, помогли.
Буду внимательней.