[Asterisk-Users] agent deadlock

James Andrewartha jamesa at daa.com.au
Mon May 15 01:44:42 MST 2006


I've been running into an issue where chan_agent gets stuck and all queues
stop working. Here's a show channels from when it's stuck:

Channel              Location             State   Application(Data)
SIP/56-be24          s at macro-stdexten:10  Ring    Dial(Agent/19|50|tw)
Local/*14 at agentlogin *14 at agentloginoff:1  Up      AgentCallbackLogin()
Local/*14 at agentlogin *14 at agentloginoff:1  Up      AgentCallbackLogin()
Local/*13 at agentlogin *13 at agentloginoff:1  Up      AgentCallbackLogin(||53 at agent-
SIP/53-31d3          *11 at daa-office:1     Up      (None)
Local/*13 at agentlogin *13 at agentloginoff:1  Up      AgentCallbackLogin(||56 at agent-
SIP/56-57e7          *11 at daa-office:1     Up      (None)
SIP/32-e2a4          s at macro-stdexten:10  Ring    Dial(Agent/56|50|tw)
Agent/53             s at agent-phones:1     Down    (None)
Local/53 at agent-phone 53 at agent-phones:1    Ring    (None)
Local/53 at agent-phone s at agent-phones:1     Down    (None)
SIP/29-b114          s at macro-stdexten:10  Ring    Dial(Agent/53|50|tw)

The only way I can get it working again is a killall -9 asterisk. strace
shows asterisk waiting on a poll(. Does anyone have any tips on how I can
debug this further? I'm running Asterisk SVN-branch-1.2-r9326M (1.2.1), with
debian patches from http://rapid.dotsrc.org/experimental/

For reference, my agent login/off dialplan looks like this:
[agentloginoff]
exten => *13,1,AgentCallbackLogin(||${CALLERIDNUM}@agent-phones)
exten => *14,1,AgentCallbackLogin()
exten => *11,1,Dial(Local/*13 at agentloginoff,,D(${CALLERIDNUM}#))
exten => *12,1,Dial(Local/*14 at agentloginoff,,D(${CALLERIDNUM}##))


-- 
James Andrewartha
Systems Administrator
Data Analysis Australia Pty Ltd



More information about the asterisk-users mailing list