Hello, i've recently switched over from 1.0.9 to 1.2.3. I've experienced some (to me) weird behaviour. This is the config for an example queue.conf: [654] wrapuptime=30 timeout=20 strategy=ringall retry=5 queue-youarenext=queue-youarenext queue-thereare=queue-thereare queue-thankyou=queue-thankyou queue-callswaiting=queue-callswaiting music=default monitor-join=yes monitor-formatmaxlen=0 leavewhenempty=no joinempty=no contextannounce-holdtime=no announce-frequency=45 extensions.conf exten => 654,1,Answer exten => 654,2,SetCIDName(${CALLERIDNAME}) exten => 654,3,SetVar(MONITOR_FILENAME=/var/spool/asterisk/monitor/q${EXTEN}-${TIMEST AMP}-${UNIQUEID}) exten => 654,4,Queue(654|t|||0) exten => 654,5,Goto(ext-queues,654,1) now when I place a call into the queue the agent times out after 20secs and the dialplan executes the next step instead of keeping the call into the queue for an unlimited time which I thought a nul-value as the timeout variable would do (Queue(654|t|||0)). Could anyone tell me if I can still use zero (0) as a value for unlimited in the command Queue(654|t|||0). thanks, Bart
On 01/31/06 20:49 Bart van Daal said the following:> exten => 654,1,Answer > exten => 654,2,SetCIDName(${CALLERIDNAME}) > exten => > 654,3,SetVar(MONITOR_FILENAME=/var/spool/asterisk/monitor/q${EXTEN}-${TIMEST > AMP}-${UNIQUEID}) > exten => 654,4,Queue(654|t|||0) > exten => 654,5,Goto(ext-queues,654,1)what does the variable QUEUESTATUS say when it drops out of the queue ? -- Regards, /\_/\ "All dogs go to heaven." dinesh@alphaque.com (0 0) http://www.alphaque.com/ +==========================----oOO--(_)--OOo----==========================+ | for a in past present future; do | | for b in clients employers associates relatives neighbours pets; do | | echo "The opinions here in no way reflect the opinions of my $a $b." | | done; done | +=========================================================================+
On 01/31/06 20:49 Bart van Daal said the following:>> exten => 654,1,Answer >> exten => 654,2,SetCIDName(${CALLERIDNAME}) exten => >> 654,3,SetVar(MONITOR_FILENAME=/var/spool/asterisk/monitor/q${EXTEN}-${ >> TIMEST >> AMP}-${UNIQUEID}) >> exten => 654,4,Queue(654|t|||0) >> exten => 654,5,Goto(ext-queues,654,1)>what does the variable QUEUESTATUS say when it drops out of the queue ?thanks for your response The queuestatus returns: TIMEOUT. -- Executing Queue("SIP/6900-ee4b", "666|t|||0") in new stack -- Executing Dial("Local/7000@from-internal-902a,2", "SIP/7000|60|tr") in new stack -- Called 7000 -- Local/7000@from-internal-902a,1 is ringing -- SIP/7000-1b31 is ringing -- SIP/7000-1b31 is ringing -- SIP/7000-1b31 is ringing -- SIP/7000-1b31 is ringing -- SIP/7000-1b31 is ringing -- Nobody picked up in 15000 ms -- Stopped music on hold on SIP/6900-ee4b -- Executing NoOp("SIP/6900-ee4b", ""QUEUESTATUS,TIMEOUT") in new stack this is an exerpt form the CLI logging: -- Executing Answer("SIP/6900-ee4b", "") in new stack -- Executing SetCIDName("SIP/6900-ee4b", "device") in new stack -- Executing SetVar("SIP/6900-ee4b", "MONITOR_FILENAME=/var/spool/asterisk/monitor/q666-20060201-105559-113878775 9.45") in new stack -- Executing Playback("SIP/6900-ee4b", "custom/None") in new stack -- Executing NoOp("SIP/6900-ee4b", ""before queue"|") in new stack -- Executing Queue("SIP/6900-ee4b", "666|t|||0") in new stack -- Started music on hold, class 'default', on channel 'SIP/6900-ee4b' -- Called Local/7000@from-internal -- Executing Macro("Local/7000@from-internal-902a,2", "exten-vm|novm|7000") in new stack -- Executing Macro("Local/7000@from-internal-902a,2", "user-callerid") in new stack -- Executing DBget("Local/7000@from-internal-902a,2", "AMPUSER=DEVICE/6900/user") in new stack -- DBget: varname=AMPUSER, family=DEVICE, key=6900/user -- DBget: set variable AMPUSER to 6900 -- Executing DBget("Local/7000@from-internal-902a,2", "AMPUSERCIDNAME=AMPUSER/6900/cidname") in new stack -- DBget: varname=AMPUSERCIDNAME, family=AMPUSER, key=6900/cidname -- DBget: set variable AMPUSERCIDNAME to snz -- Executing GotoIf("Local/7000@from-internal-902a,2", "0?5") in new stack -- Executing SetCallerID("Local/7000@from-internal-902a,2", ""snz" <6900>") in new stack -- Executing NoOp("Local/7000@from-internal-902a,2", "Using CallerID "snz" <6900>") in new stack -- Executing SetVar("Local/7000@from-internal-902a,2", "FROMCONTEXT=exten-vm") in new stack -- Executing Macro("Local/7000@from-internal-902a,2", "record-enable|7000|IN") in new stack -- Executing GotoIf("Local/7000@from-internal-902a,2", "0 > 0?2:4") in new stack -- Goto (macro-record-enable,s,4) -- Executing AGI("Local/7000@from-internal-902a,2", "recordingcheck|20060201-105600|1138787759.47") in new stack -- Launched AGI Script /var/lib/asterisk/agi-bin/recordingcheck recordingcheck|20060201-105600|1138787759.47: Inbound recording not enabled -- AGI Script recordingcheck completed, returning 0 -- Executing NoOp("Local/7000@from-internal-902a,2", "No recording needed") in new stack -- Executing Macro("Local/7000@from-internal-902a,2", "dial|60|tr|7000") in new stack -- Executing GotoIf("Local/7000@from-internal-902a,2", "0?4:2") in new stack -- Goto (macro-dial,s,2) -- Executing GotoIf("Local/7000@from-internal-902a,2", "0?5:4") in new stack -- Goto (macro-dial,s,4) -- Executing AGI("Local/7000@from-internal-902a,2", "dialparties.agi") in new stack -- Launched AGI Script /var/lib/asterisk/agi-bin/dialparties.agi -- dialparties.agi: priority = 4 -- dialparties.agi: callingani2 = 0 -- dialparties.agi: accountcode -- dialparties.agi: channel = Local/7000@from-internal-902a,2 -- dialparties.agi: callerid = 6900 -- dialparties.agi: context = macro-dial -- dialparties.agi: callington = 0 -- dialparties.agi: dnid = unknown -- dialparties.agi: request = dialparties.agi -- dialparties.agi: calleridname = snz -- dialparties.agi: extension = s -- dialparties.agi: language = en -- dialparties.agi: uniqueid = 1138787759.47 -- dialparties.agi: callingpres = 0 -- dialparties.agi: type = Local -- dialparties.agi: rdnis = unknown -- dialparties.agi: callingtns = 0 -- dialparties.agi: enhanced = 0.0 dialparties.agi: Caller ID name and number are '6900' dialparties.agi: Methodology of ring is 'none' -- dialparties.agi: Added extension 7000 to extension map -- dialparties.agi: Extension 7000 cf is disabled -- dialparties.agi: Extension 7000 do not disturb is disabled -- dialparties.agi: Checking CW and CFB status for extension 7000 == Parsing '/etc/asterisk/manager.conf': Found == Manager 'admin' logged on from 127.0.0.1 -- dialparties.agi: Correct AMPMGRUSER and AMPMGRPASS == Manager 'admin' logged off from 127.0.0.1 dialparties.agi: Extension 7000 is available...skipping checks -- dialparties.agi: DbSet CALLTRACE/7000 to 6900 -- AGI Script dialparties.agi completed, returning 0 -- Executing Dial("Local/7000@from-internal-902a,2", "SIP/7000|60|tr") in new stack -- Called 7000 -- Local/7000@from-internal-902a,1 is ringing -- SIP/7000-1b31 is ringing -- SIP/7000-1b31 is ringing -- SIP/7000-1b31 is ringing -- SIP/7000-1b31 is ringing -- SIP/7000-1b31 is ringing == Parsing '/etc/asterisk/manager.conf': Found == Manager 'agi' logged on from 127.0.0.1 == Manager 'agi' logged off from 127.0.0.1 -- Nobody picked up in 15000 ms -- Stopped music on hold on SIP/6900-ee4b -- Executing NoOp("SIP/6900-ee4b", ""QUEUESTATUS,TIMEOUT") in new stack == Spawn extension (macro-dial, s, 10) exited non-zero on 'Local/7000@from-internal-902a,2' in macro 'dial' == Spawn extension (macro-exten-vm, s, 4) exited non-zero on 'Local/7000@from-internal-902a,2' in macro 'exten-vm' == Spawn extension (from-internal, 7000, 1) exited non-zero on 'Local/7000@from-internal-902a,2' -- Executing Macro("Local/7000@from-internal-902a,2", "hangupcall") in new stack -- Executing ResetCDR("Local/7000@from-internal-902a,2", "w") in new stack -- Executing NoCDR("Local/7000@from-internal-902a,2", "") in new stack -- Executing Wait("Local/7000@from-internal-902a,2", "5") in new stack -- Executing Hangup("Local/7000@from-internal-902a,2", "") in new stack kr, Bart Bart van Daal Network Operations Van Landeghemstraat 20 9100 SINT-NIKLAAS b.vandaal@edpnet.net www.edpnet.be T +32 (0)3 265 67 00 F +32 (0)3 265 67 01
Hi, do you require more information about this behaviour, I'd be more than glad to provide it. thanks, kr, Bart -----Original Message----- From: asterisk-users-bounces@lists.digium.com [mailto:asterisk-users-bounces@lists.digium.com] On Behalf Of Bart van Daal Sent: woensdag 1 februari 2006 11:03 To: 'Asterisk Users Mailing List - Non-Commercial Discussion' Subject: RE: [Asterisk-Users] Queue() with timeout=0 On 01/31/06 20:49 Bart van Daal said the following:>> exten => 654,1,Answer >> exten => 654,2,SetCIDName(${CALLERIDNAME}) exten => >> 654,3,SetVar(MONITOR_FILENAME=/var/spool/asterisk/monitor/q${EXTEN}-$ >> { >> TIMEST >> AMP}-${UNIQUEID}) >> exten => 654,4,Queue(654|t|||0) >> exten => 654,5,Goto(ext-queues,654,1)>what does the variable QUEUESTATUS say when it drops out of the queue ?thanks for your response The queuestatus returns: TIMEOUT. -- Executing Queue("SIP/6900-ee4b", "666|t|||0") in new stack -- Executing Dial("Local/7000@from-internal-902a,2", "SIP/7000|60|tr") in new stack -- Called 7000 -- Local/7000@from-internal-902a,1 is ringing -- SIP/7000-1b31 is ringing -- SIP/7000-1b31 is ringing -- SIP/7000-1b31 is ringing -- SIP/7000-1b31 is ringing -- SIP/7000-1b31 is ringing -- Nobody picked up in 15000 ms -- Stopped music on hold on SIP/6900-ee4b -- Executing NoOp("SIP/6900-ee4b", ""QUEUESTATUS,TIMEOUT") in new stack this is an exerpt form the CLI logging: -- Executing Answer("SIP/6900-ee4b", "") in new stack -- Executing SetCIDName("SIP/6900-ee4b", "device") in new stack -- Executing SetVar("SIP/6900-ee4b", "MONITOR_FILENAME=/var/spool/asterisk/monitor/q666-20060201-105559-113878775 9.45") in new stack -- Executing Playback("SIP/6900-ee4b", "custom/None") in new stack -- Executing NoOp("SIP/6900-ee4b", ""before queue"|") in new stack -- Executing Queue("SIP/6900-ee4b", "666|t|||0") in new stack -- Started music on hold, class 'default', on channel 'SIP/6900-ee4b' -- Called Local/7000@from-internal -- Executing Macro("Local/7000@from-internal-902a,2", "exten-vm|novm|7000") in new stack -- Executing Macro("Local/7000@from-internal-902a,2", "user-callerid") in new stack -- Executing DBget("Local/7000@from-internal-902a,2", "AMPUSER=DEVICE/6900/user") in new stack -- DBget: varname=AMPUSER, family=DEVICE, key=6900/user -- DBget: set variable AMPUSER to 6900 -- Executing DBget("Local/7000@from-internal-902a,2", "AMPUSERCIDNAME=AMPUSER/6900/cidname") in new stack -- DBget: varname=AMPUSERCIDNAME, family=AMPUSER, key=6900/cidname -- DBget: set variable AMPUSERCIDNAME to snz -- Executing GotoIf("Local/7000@from-internal-902a,2", "0?5") in new stack -- Executing SetCallerID("Local/7000@from-internal-902a,2", ""snz" <6900>") in new stack -- Executing NoOp("Local/7000@from-internal-902a,2", "Using CallerID "snz" <6900>") in new stack -- Executing SetVar("Local/7000@from-internal-902a,2", "FROMCONTEXT=exten-vm") in new stack -- Executing Macro("Local/7000@from-internal-902a,2", "record-enable|7000|IN") in new stack -- Executing GotoIf("Local/7000@from-internal-902a,2", "0 > 0?2:4") in new stack -- Goto (macro-record-enable,s,4) -- Executing AGI("Local/7000@from-internal-902a,2", "recordingcheck|20060201-105600|1138787759.47") in new stack -- Launched AGI Script /var/lib/asterisk/agi-bin/recordingcheck recordingcheck|20060201-105600|1138787759.47: Inbound recording not enabled -- AGI Script recordingcheck completed, returning 0 -- Executing NoOp("Local/7000@from-internal-902a,2", "No recording needed") in new stack -- Executing Macro("Local/7000@from-internal-902a,2", "dial|60|tr|7000") in new stack -- Executing GotoIf("Local/7000@from-internal-902a,2", "0?4:2") in new stack -- Goto (macro-dial,s,2) -- Executing GotoIf("Local/7000@from-internal-902a,2", "0?5:4") in new stack -- Goto (macro-dial,s,4) -- Executing AGI("Local/7000@from-internal-902a,2", "dialparties.agi") in new stack -- Launched AGI Script /var/lib/asterisk/agi-bin/dialparties.agi -- dialparties.agi: priority = 4 -- dialparties.agi: callingani2 = 0 -- dialparties.agi: accountcode -- dialparties.agi: channel = Local/7000@from-internal-902a,2 -- dialparties.agi: callerid = 6900 -- dialparties.agi: context = macro-dial -- dialparties.agi: callington = 0 -- dialparties.agi: dnid = unknown -- dialparties.agi: request = dialparties.agi -- dialparties.agi: calleridname = snz -- dialparties.agi: extension = s -- dialparties.agi: language = en -- dialparties.agi: uniqueid = 1138787759.47 -- dialparties.agi: callingpres = 0 -- dialparties.agi: type = Local -- dialparties.agi: rdnis = unknown -- dialparties.agi: callingtns = 0 -- dialparties.agi: enhanced = 0.0 dialparties.agi: Caller ID name and number are '6900' dialparties.agi: Methodology of ring is 'none' -- dialparties.agi: Added extension 7000 to extension map -- dialparties.agi: Extension 7000 cf is disabled -- dialparties.agi: Extension 7000 do not disturb is disabled -- dialparties.agi: Checking CW and CFB status for extension 7000 == Parsing '/etc/asterisk/manager.conf': Found == Manager 'admin' logged on from 127.0.0.1 -- dialparties.agi: Correct AMPMGRUSER and AMPMGRPASS == Manager 'admin' logged off from 127.0.0.1 dialparties.agi: Extension 7000 is available...skipping checks -- dialparties.agi: DbSet CALLTRACE/7000 to 6900 -- AGI Script dialparties.agi completed, returning 0 -- Executing Dial("Local/7000@from-internal-902a,2", "SIP/7000|60|tr") in new stack -- Called 7000 -- Local/7000@from-internal-902a,1 is ringing -- SIP/7000-1b31 is ringing -- SIP/7000-1b31 is ringing -- SIP/7000-1b31 is ringing -- SIP/7000-1b31 is ringing -- SIP/7000-1b31 is ringing == Parsing '/etc/asterisk/manager.conf': Found == Manager 'agi' logged on from 127.0.0.1 == Manager 'agi' logged off from 127.0.0.1 -- Nobody picked up in 15000 ms -- Stopped music on hold on SIP/6900-ee4b -- Executing NoOp("SIP/6900-ee4b", ""QUEUESTATUS,TIMEOUT") in new stack == Spawn extension (macro-dial, s, 10) exited non-zero on 'Local/7000@from-internal-902a,2' in macro 'dial' == Spawn extension (macro-exten-vm, s, 4) exited non-zero on 'Local/7000@from-internal-902a,2' in macro 'exten-vm' == Spawn extension (from-internal, 7000, 1) exited non-zero on 'Local/7000@from-internal-902a,2' -- Executing Macro("Local/7000@from-internal-902a,2", "hangupcall") in new stack -- Executing ResetCDR("Local/7000@from-internal-902a,2", "w") in new stack -- Executing NoCDR("Local/7000@from-internal-902a,2", "") in new stack -- Executing Wait("Local/7000@from-internal-902a,2", "5") in new stack -- Executing Hangup("Local/7000@from-internal-902a,2", "") in new stack kr, Bart Bart van Daal Network Operations Van Landeghemstraat 20 9100 SINT-NIKLAAS b.vandaal@edpnet.net www.edpnet.be T +32 (0)3 265 67 00 F +32 (0)3 265 67 01 _______________________________________________ --Bandwidth and Colocation provided by Easynews.com -- Asterisk-Users mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-users
On 01/31/06 20:49 Bart van Daal said the following:> I thought a nul-value as the > timeout variable would do (Queue(654|t|||0)).reading the code in app_queue.c, you've not provided a null value but rather provided a value of 0, as such it will behave as you've observed. try using Queue(654|t) in your dialplan instead, thus really providing a null value for the timeout parameter. -- Regards, /\_/\ "All dogs go to heaven." dinesh@alphaque.com (0 0) http://www.alphaque.com/ +==========================----oOO--(_)--OOo----==========================+ | for a in past present future; do | | for b in clients employers associates relatives neighbours pets; do | | echo "The opinions here in no way reflect the opinions of my $a $b." | | done; done | +=========================================================================+
Hello Dinesh, sorry for the late reply but that was exactly what was wrong.. using a real 'null' value solved my problem.. thanks, Bart -----Original Message----- From: asterisk-users-bounces@lists.digium.com [mailto:asterisk-users-bounces@lists.digium.com] On Behalf Of Dinesh Nair Sent: zaterdag 4 februari 2006 4:53 To: Asterisk Users Mailing List - Non-Commercial Discussion Subject: Re: [Asterisk-Users] Queue() with timeout=0 On 01/31/06 20:49 Bart van Daal said the following:> I thought a nul-value as the > timeout variable would do (Queue(654|t|||0)).reading the code in app_queue.c, you've not provided a null value but rather provided a value of 0, as such it will behave as you've observed. try using Queue(654|t) in your dialplan instead, thus really providing a null value for the timeout parameter. -- Regards, /\_/\ "All dogs go to heaven." dinesh@alphaque.com (0 0) http://www.alphaque.com/ +==========================----oOO--(_)--OOo----=======================+==+ | for a in past present future; do | | for b in clients employers associates relatives neighbours pets; do | | echo "The opinions here in no way reflect the opinions of my $a $b." | | done; done | +======================================================================+==+ _______________________________________________ --Bandwidth and Colocation provided by Easynews.com -- Asterisk-Users mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-users