Daniel W. Halverson
2005-Apr-26 10:34 UTC
[Asterisk-Users] Strange queue agent issue - Agent busy problem
I'm trying to track down a problem. We make pretty extensive use of queues and use the agentcallbacklogin function to associate those queues with a physical extension. For example, I have a Zap extension associated to Extension 3009. When he logs in, "show agents" shows: 3009 (<Username>) available at '3009@from-internal' (musiconhold is 'default') He can now receive calls for any of the queues that he is associated to. The problem is if he makes an outgoing call, he does not show as busy in "show agents." If he gets a queue call, I get the following: Apr 26 09:13:57 VERBOSE[16265] logger.c: -- Executing Queue("Zap/7-1", "operator|tT|||600") in new stack Apr 26 09:13:57 VERBOSE[16265] logger.c: -- Started music on hold, class 'default', on Zap/7-1 Apr 26 09:13:57 DEBUG[16265] channel.c: Scheduling timer at 160 sample intervals Apr 26 09:13:57 VERBOSE[16265] logger.c: -- outgoing agentcall, to agent '3009', on 'Local/3009@from-internal-1bab,1' Apr 26 09:13:57 VERBOSE[16265] logger.c: -- Called Agent/3009 Apr 26 09:13:57 DEBUG[16265] channel.c: Generator got voice, switching to phase locked mode Apr 26 09:13:57 DEBUG[16265] channel.c: Scheduling timer at 0 sample intervals Apr 26 09:13:57 VERBOSE[16265] logger.c: -- Executing Macro("Local/3009@from-internal-1bab,2", "exten-vm|3009|3009") in new stack Apr 26 09:13:57 VERBOSE[16265] logger.c: -- Executing SetVar("Local/3009@from-internal-1bab,2", "FROMCONTEXT=exten-vm") in new stack Apr 26 09:13:57 DEBUG[16265] pbx.c: Expression is '0' Apr 26 09:13:57 VERBOSE[16265] logger.c: -- Executing GotoIf("Local/3009@from-internal-1bab,2", "0?novm|1") in new stack Apr 26 09:13:57 DEBUG[16265] pbx.c: Not taking any branch Apr 26 09:13:57 VERBOSE[16265] logger.c: -- Executing Macro("Local/3009@from-internal-1bab,2", "dial|25|tr|3009") in new stack Apr 26 09:13:57 VERBOSE[16265] logger.c: -- Executing AGI("Local/3009@from-internal-1bab,2", "dialparties.agi") in new stack Apr 26 09:13:57 VERBOSE[16265] logger.c: -- Launched AGI Script /var/lib/asterisk/agi-bin/dialparties.agi Apr 26 09:13:57 VERBOSE[16265] logger.c: -- dialparties.agi: priority = 1 Apr 26 09:13:57 VERBOSE[16265] logger.c: -- dialparties.agi: callingani2 = 0 Apr 26 09:13:57 VERBOSE[16265] logger.c: -- dialparties.agi: accountcode Apr 26 09:13:57 VERBOSE[16265] logger.c: -- dialparties.agi: channel = Local/3009@from-internal-1bab,2 Apr 26 09:13:57 VERBOSE[16265] logger.c: -- dialparties.agi: callerid = 8155555555 Apr 26 09:13:57 VERBOSE[16265] logger.c: -- dialparties.agi: callington = 0 Apr 26 09:13:57 VERBOSE[16265] logger.c: -- dialparties.agi: context = macro-dial Apr 26 09:13:57 VERBOSE[16265] logger.c: -- dialparties.agi: dnid = unknown Apr 26 09:13:57 VERBOSE[16265] logger.c: -- dialparties.agi: request = dialparties.agi Apr 26 09:13:57 VERBOSE[16265] logger.c: -- dialparties.agi: extension = s Apr 26 09:13:57 VERBOSE[16265] logger.c: -- dialparties.agi: calleridname = <CLID REMOVED> Apr 26 09:13:57 VERBOSE[16265] logger.c: -- dialparties.agi: language = en Apr 26 09:13:57 VERBOSE[16265] logger.c: -- dialparties.agi: uniqueid = 1114524837.136 Apr 26 09:13:57 VERBOSE[16265] logger.c: -- dialparties.agi: callingpres = 0 Apr 26 09:13:57 VERBOSE[16265] logger.c: -- dialparties.agi: rdnis = unknown Apr 26 09:13:57 VERBOSE[16265] logger.c: -- dialparties.agi: type = Local Apr 26 09:13:57 VERBOSE[16265] logger.c: -- dialparties.agi: callingtns = 0 Apr 26 09:13:57 VERBOSE[16265] logger.c: -- dialparties.agi: enhanced = 0.0 Apr 26 09:13:57 VERBOSE[16265] logger.c: dialparties.agi: Caller ID name and number are '8157582692' Apr 26 09:13:57 VERBOSE[16265] logger.c: -- dialparties.agi: Added extension 3009 to extension map Apr 26 09:13:57 DEBUG[16265] db.c: Unable to find key '3009' in family 'CF' Apr 26 09:13:57 VERBOSE[16265] logger.c: -- dialparties.agi: Extension 3009 cf is disabled Apr 26 09:13:57 DEBUG[16265] manager.c: Manager received command 'Login' Apr 26 09:13:57 VERBOSE[16265] logger.c: == Parsing '/etc/asterisk/manager.conf': Apr 26 09:13:57 VERBOSE[16265] logger.c: == Parsing '/etc/asterisk/mana ger.conf': Found Apr 26 09:13:57 VERBOSE[16265] logger.c: == Parsing '/etc/asterisk/manager_custom.conf': Apr 26 09:13:57 VERBOSE[16265] logger.c: == Parsing '/etc/asteri sk/manager_custom.conf': Not found (No such file or directory) Apr 26 09:13:57 DEBUG[16265] acl.c: 0.0.0.0/0.0.0.0/0.0.0.0 appended to acl for peer Apr 26 09:13:57 DEBUG[16265] acl.c: 127.0.0.1/255.255.255.0/255.255.255.0 appended to acl for peer Apr 26 09:13:57 DEBUG[16265] acl.c: ##### Testing 127.0.0.1 with 0.0.0.0 Apr 26 09:13:57 DEBUG[16265] acl.c: ##### Testing 127.0.0.1 with 127.0.0.0 Apr 26 09:13:57 VERBOSE[16265] logger.c: == Manager 'admin' logged on from 127.0.0.1 Apr 26 09:13:57 DEBUG[16265] manager.c: Manager received command 'command' Apr 26 09:13:57 DEBUG[16265] manager.c: Manager received command '' Apr 26 09:13:57 DEBUG[16265] manager.c: Manager received command 'Logoff' Apr 26 09:13:57 VERBOSE[16265] logger.c: == Manager 'admin' logged off from 127.0.0.1 Apr 26 09:13:57 VERBOSE[16265] logger.c: dialparties.agi: Dial string is ZAP/23|25|tr Apr 26 09:13:57 VERBOSE[16265] logger.c: -- AGI Script dialparties.agi completed, returning 0 Apr 26 09:13:57 VERBOSE[16265] logger.c: -- Executing Dial("Local/3009@from-internal-1bab,2", "ZAP/23|25|tr") in new stack Apr 26 09:13:57 WARNING[16265] chan_zap.c: Unable to ring phone: Device or resource busy Apr 26 09:13:57 VERBOSE[16265] logger.c: -- Couldn't call 23 Apr 26 09:13:57 DEBUG[16265] chan_zap.c: Hangup: channel: 23 index = 0, normal = 39, callwait = -1, thirdcall = -1 Apr 26 09:13:57 DEBUG[16265] chan_zap.c: disabled echo cancellation on channel 23 Apr 26 09:13:57 DEBUG[16265] chan_zap.c: Set option TDD MODE, value: OFF(0) on Zap/23-1 Apr 26 09:13:57 DEBUG[16265] chan_zap.c: Updated conferencing on 23, with 0 conference users Apr 26 09:13:57 VERBOSE[16265] logger.c: -- Hungup 'Zap/23-1' Apr 26 09:13:57 VERBOSE[16265] logger.c: == Everyone is busy/congested at this time (0:0/0/0) Apr 26 09:13:57 DEBUG[16265] app_dial.c: Exiting with DIALSTATUS=CHANUNAVAIL. Apr 26 09:13:57 VERBOSE[16265] logger.c: -- Executing Wait("Local/3009@from-internal-1bab,2", "1") in new stack Apr 26 09:13:57 DEBUG[16265] chan_sip.c: Setting NAT on RTP to 524288 Apr 26 09:13:57 DEBUG[16265] chan_sip.c: Stopping retransmission on '33097e1529984db368f90ec8414c1c1f@207.227.156.46' of Request 102: Found Apr 26 09:13:57 DEBUG[16265] chan_zap.c: disabled echo cancellation on channel 23 Apr 26 09:13:58 VERBOSE[16265] logger.c: -- Executing VoiceMail("Local/3009@from-internal-1bab,2", "u3009") in new stack Apr 26 09:13:58 DEBUG[16265] channel.c: Avoiding deadlock for 'Local/3009@from-internal-1bab,2' Apr 26 09:13:58 VERBOSE[16265] logger.c: -- Agent/3009 answered Zap/7-1 Apr 26 09:13:58 DEBUG[16265] chan_zap.c: Set option TONE VERIFY, mode: MUTECONF(1) on Zap/7-1 The caller ends up in the individual queue member's voicemail, even though there are operator agents available above him. DIALSTATUS can be ether CHANUNAVAIL or BUSY. Any ideas where I'm missing something? I'm running the latest CVS head, based on AMP version 1.10 with a number of custom extension and agent changes. Thanks in advance for any help. Dan
Adam Goryachev
2005-Apr-26 18:46 UTC
[Asterisk-Users] Strange queue agent issue - Agent busy problem
On Tue, 2005-04-26 at 12:34 -0500, Daniel W. Halverson wrote:> I'm trying to track down a problem. We make pretty extensive use of > queues and use the agentcallbacklogin function to associate those queues > with a physical extension. > > For example, I have a Zap extension associated to Extension 3009. When > he logs in, "show agents" shows: > > 3009 (<Username>) available at '3009@from-internal' (musiconhold > is 'default') > > He can now receive calls for any of the queues that he is associated > to. The problem is if he makes an outgoing call, he does not show as > busy in "show agents." If he gets a queue call, I get the following: > > Apr 26 09:13:57 VERBOSE[16265] logger.c: -- Executing > Queue("Zap/7-1", "operator|tT|||600") in new stack > Apr 26 09:13:57 VERBOSE[16265] logger.c: -- Started music on hold, > class 'default', on Zap/7-1 > Apr 26 09:13:57 DEBUG[16265] channel.c: Scheduling timer at 160 sample > intervals > Apr 26 09:13:57 VERBOSE[16265] logger.c: -- outgoing agentcall, to > agent '3009', on 'Local/3009@from-internal-1bab,1' > Apr 26 09:13:57 VERBOSE[16265] logger.c: -- Called Agent/3009 > Apr 26 09:13:57 DEBUG[16265] channel.c: Generator got voice, switching > to phase locked mode > Apr 26 09:13:57 DEBUG[16265] channel.c: Scheduling timer at 0 sample > intervals > Apr 26 09:13:57 VERBOSE[16265] logger.c: -- Executing > Macro("Local/3009@from-internal-1bab,2", "exten-vm|3009|3009") in new stack > Apr 26 09:13:57 VERBOSE[16265] logger.c: -- Executing > SetVar("Local/3009@from-internal-1bab,2", "FROMCONTEXT=exten-vm") in newTry pointing this login to a different context that doesn't have vm enabled, ie, the only line would be: [queue-extensions] exten => 3009,1,Dial(Zap/122,20) Then, it will only call for a max of 20 seconds, before jumping to the next agent... And if this user is on a call (busy) then it will jump to the next agent immediately. At least, that's the way I think it should work. Regards, Adam -- -- Adam Goryachev Website Managers Ph: +61 2 8304 0000 adam@websitemanagers.com.au Fax: +61 2 9345 4396 www.websitemanagers.com.au