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