Using Queues, phone does not ring when hangup


I set up a queue, with these parameters:

exten => 820,1,Macro(user-callerid,) exten => 820,n,Answer exten => 820,n,Macro(blkvm-set,reset) exten => 820,n,ExecIf($["${REGEX("(M[(]auto-blkvm[)])" ${DIAL_OPTIONS})}" != "1"]?Set(_DIAL_OPTIONS=${DIAL_OPTIONS}M(auto-blkvm))) exten => 820,n,Set(__NODEST=${EXTEN}) exten => 820,n,Set(QCIDPP=${IF($[${LEN(${VQ_CIDPP})}>0]?${VQ_CIDPP}: )}) exten => 820,n,Set(VQ_CIDPP=) exten => 820,n,ExecIf($["${QCIDPP}"!=""]?Macro(prepend-cid,${QCIDPP})) exten => 820,n,Set(QAINFO=${IF($[${LEN(${VQ_AINFO})}>0]?${VQ_AINFO}: )}) exten => 820,n,Set(VQ_AINFO=) exten => 820,n,ExecIf($["${QAINFO}"!=""]?Set(__ALERT_INFO=${QAINFO})) exten => 820,n,Set(QJOINMSG=${IF($[${LEN(${VQ_JOINMSG})}>0]?${IF($["${VQ_JOINMSG}"!="0"]?${VQ_JOINMSG}: )}: )}) exten => 820,n,Set(VQ_JOINMSG=) exten => 820,n,Set(QMOH=${IF($["${VQ_MOH}"!=""]?${VQ_MOH}: )}) exten => 820,n,Set(VQ_MOH=) exten => 820,n,ExecIf($["${QMOH}"!=""]?Set(__MOHCLASS=${QMOH})) exten => 820,n,ExecIf($["${MOHCLASS}"!=""]?Set(CHANNEL(musicclass)=${MOHCLASS})) exten => 820,n,Set(QRETRY=${IF($[${LEN(${VQ_RETRY})}>0]?${VQ_RETRY}: )}) exten => 820,n,Set(VQ_RETRY=) exten => 820,n(qoptions),Set(QOPTIONS=${IF($[${LEN(${VQ_OPTIONS})}>0]?${VQ_OPTIONS}:t)}${QCANCELMISSED}${QRINGOPTS}${QRETRY}) exten => 820,n,Set(VQ_OPTIONS=) exten => 820,n(qgosub),Set(QGOSUB=${IF($[${LEN(${VQ_GOSUB})}>0]?${VQ_GOSUB}:${QGOSUB})}) exten => 820,n,Set(VQ_GOSUB=) exten => 820,n(qagi),Set(QAGI=${IF($[${LEN(${VQ_AGI})}>0]?${VQ_AGI}:${QAGI})}) exten => 820,n,Set(VQ_AGI=) exten => 820,n(qrule),Set(QRULE=${IF($[${LEN(${VQ_RULE})}>0]?${IF($["${VQ_RULE}"!="0"]?${VQ_RULE}: )}:${QRULE})}) exten => 820,n,Set(VQ_RULE=) exten => 820,n(qposition),Set(QPOSITION=${IF($[${LEN(${VQ_POSITION})}>0]?${VQ_POSITION}:${QPOSITION})}) exten => 820,n,Set(VQ_POSITION=) exten => 820,n,Gosub(sub-record-check,s,1(q,820,dontcare)) exten => 820,n,Set(__CWIGNORE=TRUE) exten => 820,n,ExecIf($["${QJOINMSG}"!=""]?Playback(${QJOINMSG}, )) exten => 820,n,QueueLog(820,${UNIQUEID},NONE,DID,${FROM_DID}) exten => 820,n,Set(QAANNOUNCE=${IF($[${LEN(${VQ_AANNOUNCE})}>0]?${IF($["${VQ_AANNOUNCE}"!="0"]?${VQ_AANNOUNCE}: )}: )}) exten => 820,n,Set(VQ_AANNOUNCE=) exten => 820,n,Set(QMAXWAIT=${IF($[${LEN(${VQ_MAXWAIT})}>0]?${VQ_MAXWAIT}: )}) exten => 820,n,Set(VQ_MAXWAIT=) exten => 820,n(qcall),Queue(820,${QOPTIONS},,${QAANNOUNCE},${QMAXWAIT},${QAGI},,${QGOSUB},${QRULE},${QPOSITION}) exten => 820,n,Macro(blkvm-clr,) exten => 820,n,Gosub(sub-record-cancel,s,1()) exten => 820,n,Set(__NODEST=) exten => 820,n,Set(_QUEUE_PRIO=0) exten => 820,n,Set(__CWIGNORE=) exten => 820,n,Set(QDEST=${VQ_DEST}) exten => 820,n,Set(VQ_DEST=) exten => 820,n(gotodest),GotoIf($["${QDEST}"=""]?app-blackhole,hangup,1:${CUT(QDEST,^,1)},${CUT(QDEST,^,2)},${CUT(QDEST,^,3)})

So, when a caller enter the queue, my phone ring and then i answer the call.
Now imagine another caller entering the Queue, my phone doesn’t ring as i’m on the phone, and it’s ok for me, because i want my phone to receive only 1 call at a time

But, as soon as i hang up the first call, my phone doesn’t ring until the “Agent timeout” timer is elapsed…

for exemple: with “agent timeout” as 15 seconds

  • at 0 seconds, a first call enter the queue and my phone ring.
  • at 2 seconds i answer the call
  • at 15 seconds another call enter the queue
  • at 20 seconds i hang up the first call

-> My phone will ring at 30 seconds… i want it to ring at 20 seconds (as soon as i hangup)

If i put the agent timeout to 1 second for exemple, then the phone ring only for 1 second, then re ring for 1 second, etc… and this generate false statistics :frowning:

how can i force Asterisk to ring my phone as soon as i hang up?

i’m sorry, if you did not understand me, tell me, english is not my natural language :smile:

Please explain which Asterisk parameter you are referring to when you refer to Agent timeout. I don’t recognize that name and Asterisk parameter names don’t contain spaces.

Please provide your queue configuration. You seem to have missed this from the posting.

Please also provide documentation on how your dialplan is supposed to work and what each of the macros it uses does. If you are unable to do so, you will need to direct your question to the person who wrote them. In any case, if for example this is FreePBX code you need to direct your request to the third part software provider.

You should check for a ‘wrapuptime’ value in queues.conf and see.
( … 88901.html)

–Satish Barot


the Wrapuptime is set to 1 second… :frowning:

The conf was made with freepbx you’re right.
i’ll try to set up a queue conf by hand…