VIDEOCHAT  ::   FAQ  ::   Поиск  ::   Регистрация  ::   Вход

Значение QUEUEHOLDTIME

Новичком считается только что прочитавший «Астериск - будущее телефонии»
http://asterisk.ru/knowledgebase/books
и пытающийся сделать большее

Модераторы: april22, Zavr2008

Ответить
El_Vago
Сообщения: 63
Зарегистрирован: 05 дек 2017, 12:46

Значение QUEUEHOLDTIME

Сообщение El_Vago »

Добрый день. Хотели получать значение, сколько звонящий провисел в очереди, до получения ответа .

Код: Выделить всё

exten => h,n,MYSQL(Query resultid ${connid} INSERT INTO stat (pnumber,agent,date,queue,status,time,holdtime,record)VALUES('${CALLERID(number)}','${MEMBERNAME}','${STRFTIME(${EPOCH},,%Y-%m-%d %H:%M:%S)}','${QUEUENAME}','Отвечен','${CDR(billsec)}','${QUEUEHOLDTIME}','ftp://10.254.252.25/supportarch/${STRFTIME(${EPOCH},,%m.%Y)}/${STRFTIME(${EPOCH},,%d.%m)}/${filename}.gsm'))
И всё отрабатывает кроме QUEUEHOLDTIME, всегда пишет 0, или я неправильно понял, что он должен выдавать? Setqueueentryvar в yes поставлен. Noop так же выдаёт 0.
ded
Сообщения: 15621
Зарегистрирован: 26 авг 2010, 19:00

Re: Значение QUEUEHOLDTIME

Сообщение ded »

Скорее всего значение в QUEUEHOLDTIME очищается. Вы пытаетесь считать при хэнгапе,
exten => h
к этому моменту уже в переменной ничего нет.
Попробуйте считать через NoOp в диалплане сразу при ответе агента очереди.
Попробуйте также вывести все переменные через dumpchan.
El_Vago
Сообщения: 63
Зарегистрирован: 05 дек 2017, 12:46

Re: Значение QUEUEHOLDTIME

Сообщение El_Vago »

Действительно, как Вы и говорили после холда видимо счётчик обнуляется, что и показал dumpchan.
Видимо придётся думать как реализовать другим способом.
Аватара пользователя
Wapo
Сообщения: 795
Зарегистрирован: 02 мар 2011, 17:53

Re: Значение QUEUEHOLDTIME

Сообщение Wapo »

В приложении QUEUE есть вызов макро или процедуры при поднятии трубки оператором. Остается в нем и получить все переменные и ...
El_Vago
Сообщения: 63
Зарегистрирован: 05 дек 2017, 12:46

Re: Значение QUEUEHOLDTIME

Сообщение El_Vago »

Благо, спасибо. Будем копать макро. Как разберусь, выложу, вдруг кому интересно будет.
El_Vago
Сообщения: 63
Зарегистрирован: 05 дек 2017, 12:46

Re: Значение QUEUEHOLDTIME

Сообщение El_Vago »

Хотя и хитрого ничего не пришлось городить, правда использовал не macro, а gosub, почему не знаю, но главное работает.
Просто поменял все очереди на
...
exten => s,n,Queue(test,t,,,10,,,holdtime,s,1)
exten => s,n,HangUp()

exten => h,1,noop(${QUEUEHOLDTIME})

[holdtime]

exten => s,1,noop(${QUEUEHOLDTIME})
exten => s,n,return
Даже с переменными не пришлось работать, в такой схеме оба noop выдают значение. Спасибо, что помогли еще больше узнать о великом и могучем Астериске
Ответить
© 2008 — 2024 Asterisk.ru
Digium, Asterisk and AsteriskNOW are registered trademarks of Digium, Inc.
Design and development by PostMet-Netzwerk GmbH