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

Значение QUEUEHOLDTIME

Добавлено: 24 авг 2022, 08:22
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.

Re: Значение QUEUEHOLDTIME

Добавлено: 24 авг 2022, 11:07
ded
Скорее всего значение в QUEUEHOLDTIME очищается. Вы пытаетесь считать при хэнгапе,
exten => h
к этому моменту уже в переменной ничего нет.
Попробуйте считать через NoOp в диалплане сразу при ответе агента очереди.
Попробуйте также вывести все переменные через dumpchan.

Re: Значение QUEUEHOLDTIME

Добавлено: 24 авг 2022, 13:49
El_Vago
Действительно, как Вы и говорили после холда видимо счётчик обнуляется, что и показал dumpchan.
Видимо придётся думать как реализовать другим способом.

Re: Значение QUEUEHOLDTIME

Добавлено: 24 авг 2022, 14:01
Wapo
В приложении QUEUE есть вызов макро или процедуры при поднятии трубки оператором. Остается в нем и получить все переменные и ...

Re: Значение QUEUEHOLDTIME

Добавлено: 25 авг 2022, 11:09
El_Vago
Благо, спасибо. Будем копать макро. Как разберусь, выложу, вдруг кому интересно будет.

Re: Значение QUEUEHOLDTIME

Добавлено: 25 авг 2022, 12:54
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 выдают значение. Спасибо, что помогли еще больше узнать о великом и могучем Астериске