Well that makes sense.... Is there anyway to determine the user's state ([un]paused) in the dial plan prior to using the [Un]PauseQueueMember() app?
I'd like to be able to keep it very simple for my users by instructing them to dial one key code to pause or unpause. v/r, Me On Thu, May 5, 2011 at 6:04 PM, Warren Selby <[email protected]> wrote: > PQMSTATUS is set only after you run the application PauseQueueMember(). > > Thanks, > --Warren Selby, dCAP > > On May 5, 2011, at 2:11 PM, Louis Carreiro <[email protected]> wrote: > > > Hey all! > > > > I'm trying to do a bit of logic here so that a user only has to dial one > code to pause/unpause in a queue (e.g. *0 will (un)pause depending on the > users's state). My logic looks fine to me but every time ${PQMSTATUS} shows > up empty. > > > > Here's the extensions.conf part.... > > > > exten => *0,1,NoOp(${PQMSTATUS}) > > exten => *0,n,Macro(user-callerid,SKIPTTL,) > > exten => > *0,n,Set(CALLBACKNUM=${IF($[${LEN(${AMPUSER})}=0]?${CALLERID(number)}:${AMPUSER})}) > > exten => *0,n,GotoIf($["${PQMSTATUS}" = "PAUSED"]?unpause,1:pause,1) > > > > ; Pause ourselves in one or more queues > > exten => pause,1,NoOp() > > exten => pause,n,PauseQueueMember(,Local/${CALLBACKNUM}@from-queue/n) > > exten => pause,n,PauseQueueMember(,Local/${CALLBACKNUM}@from-internal/n) > > exten => > pause,n,GoSub(changePauseStatus,start,1(PQMSTATUS,PAUSED,unavailable)) > > exten => pause,n,Hangup() > > > > ; Unpause ourselves from one or more queues > > exten => unpause,1,NoOp() > > exten => unpause,n,PauseQueueMember(,Local/${CALLBACKNUM}@from-queue/n) > > exten => unpause,n,PauseQueueMember(,Local/${CALLBACKNUM}@from-internal > /n) > > > ; that queue, otherwise, we'll unpause in > > > ; in all queues > > exten => > unpause,n,GoSub(changePauseStatus,start,1(UPQMSTATUS,UNPAUSED,available)) > ; use the changePauseStatus subroutine and > > > ; pass the values for: variable to check, > > > ; value to check for, and file to play > > exten => unpause,n,Hangup() > > > > ; ### Subroutine we use to check pausing and unpausing status ### > > [changePauseStatus] > > ; ARG1: variable name to check, such as PQMSTATUS and UPQMSTATUS > (PauseQueueMemberStatus / UnpauseQueueMemberStatus) > > ; ARG2: value to check for, such as PAUSED or UNPAUSED > > ; ARG3: file to play back if our variable value matched the value to > check for > > ; > > exten => start,1,NoOp() > > exten => start,n,Playback(silence/1) > > ; Please note that ${ARG1} is wrapped in ${ } in order to expand the > value of ${ARG1} into > > ; the variable we want to retrieve the value from, i.e. ${${ARG1}} > turns into ${PQMSTATUS} > > exten => start,n,Playback(${IF($["${${ARG1}}" = > "${ARG2}"]?${ARG3}:not-yet-connected)}) > > ;exten => start,n,GotoIf($[${ISNULL(${xtn})}]?end) ; if ${xtn} is > null, then just Return() > > exten => start,n,Playback(in-the-queue) ; if not null, > then playback "in the queue" > > ;exten => start,n,SayNumber(${xtn}) ; and the > queue number that we (un)paused from > > exten => start,n(end),Return() ; return from > were we came > > > > > > v/r, > > Me > > > > -- > > _____________________________________________________________________ > > -- Bandwidth and Colocation Provided by http://www.api-digital.com -- > > New to Asterisk? Join us for a live introductory webinar every Thurs: > > http://www.asterisk.org/hello > > > > asterisk-users mailing list > > To UNSUBSCRIBE or update options visit: > > http://lists.digium.com/mailman/listinfo/asterisk-users > > -- > _____________________________________________________________________ > -- Bandwidth and Colocation Provided by http://www.api-digital.com -- > New to Asterisk? Join us for a live introductory webinar every Thurs: > http://www.asterisk.org/hello > > asterisk-users mailing list > To UNSUBSCRIBE or update options visit: > http://lists.digium.com/mailman/listinfo/asterisk-users >
-- _____________________________________________________________________ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- New to Asterisk? Join us for a live introductory webinar every Thurs: http://www.asterisk.org/hello asterisk-users mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-users
