[asterisk-users] Queue Breakout Input being Ignored
Mike Beirne
beirne at mgjbnet.com
Mon Aug 15 01:51:21 CDT 2011
On 8/14/2011 6:09 PM, Anton Panetta wrote:
> Hello,
>
> Raw stats:
> Version:1.8.3.2
> OS:Centos 5.6
> Special setup: postgre database
>
>
> I am having a few queue issues with Asterisk specifically relating to
> breaking out from queues while on hold.
>
> The intent is that while someone is on hold they can press a key (lets
> say *) to break from the queue and go elsewhere (in this case to leave a
> message).
>
> However In all of my testing I am unable to get this to work, or even to
> be able to leave the queue while on hold (to go to another queue for
> example, or force any action, eg hangup, play message, etc).
>
> I have enabled DTMF debug and I can see in the console that asterisk is
> receiving the correct information, it just appears to be ignoring it.
>
> Tested this on 1.6 as well and got the same results ( I had assumed it
> was a bug in 1.6) everything I look at suggests what I am doing -should-
> work.
>
> I suspect I am missing some over arching setting or something incredibly
> simple but for the life of me I cannot get this function to work as
> described.
>
> Here is some of the config which I beleive is relevent.
>
> Various variants have been tested with different actions to occur (sorry
> I dont have a simpler version of the below at hand)
>
> [extensions.conf]
>
> [app-helpdesk-bh]
> exten => s,1(unanswered),Ringingsame => n,Wait(2)
> same => n,Answer
> same => n,Wait(1)
> same => n(answered),NoOp(Helpdesk)
> same => n,Gosub(app-filteranon,s,1)
> same => n,Set(CALLERID(name)=${client} Helpdesk)
> same => n,NoOp(Caller ID set to: ${CALLERID(name)})
> same => n,NoOp(Callers waiting in queue:
> ${QUEUE_WAITING_COUNT(helpdesk)})
> ; play the announcement for this helpdesk client (or the general intro)
> same => n(announceandwait),Gosub(app-helpdesk-${client}-intro,s,1)
> same => n,Gosub(app-helpdesk-${client}-special-rva,s,1)
> ; queue the call
> ; t = allow the called party to transfer the call
> ; k = allow the called party to park the call
> ; c = continue on after call (to update devstate)
> same => n,Set(DEVICE_STATE(Custom:helpdesk)=RINGING)
> same => n,Queue(helpdesk,tk,,,600,,,app-update-helpdesk-queue-devstate)
> same => n,Gosub(app-update-helpdesk-queue-devstate,s,1)
> ; if the caller can't get into the queue or is kicked out of it, go to
> ; the after hours answering service
> same => n,Goto(app-helpdesk-hutchison,s,answered)
> same => n(done),NoOp
>
> ; update devstate after a hangup
> exten => h,1,Gosub(app-update-helpdesk-queue-devstate,s,1)
>
> include => app-helpdesk-breakout
>
> [app-helpdesk-breakout]
> exten => 1,1,Gosub(app-helpdesk-callback,s,1)
> same => n,Hangup
>
> [app-helpdesk-callback]
> ; Callers brought to this context will be able to leave a message
> ; which will then be attached to an email and sent to the appropriate
> ; helpdesk RT queue
> exten => s,1,NoOp(Helpdesk callback not implemented yet)
> same => n,Return
> same => n,GotoIf($["${CALLERID(num)}" = "anonymous" or
> ${CALLERID(num)} = "0"]?collect)
>
> same => n(collect),Goto(app-helpdesk-callback-collect,s,1)
>
If I remember correctly, it only checks for key presses at the end of
each retry period. The "retry" parameter is set in queues.conf and
should be less than the timeout parameter. You have the timeout for the
queue call set to "600" or ten minutes. What is the "retry" parameter in
queues.conf set to?
Mike
More information about the asterisk-users
mailing list