VoIP Mailing List Archives
Mailing list archives for the VoIP community |
|
View previous topic :: View next topic |
Author |
Message |
deepaksingh.rawat at g... Guest
|
Posted: Tue Aug 12, 2014 1:33 am Post subject: [asterisk-users] Asterisk 12.4 "Agent Busy" messag |
|
|
Hi,
I am upgrading from Asterisk 1.4 to 12.4. I am able to authenticate the user and call AgentLogin. But after that when I call AgentRequest I keep getting Agent '1234' is busy.
If I put a delay of 5 second or more before calling AgentRequest then it works most of the times. Here's my dialplan:
[login]
exten => s,1,Background(thank-you-for-calling)
same => n,WaitExten(.65)
same => n,Background(press-1)
same => n,WaitExten(15)
exten => 1,1,Read(USER,"agent-user")
same => n,Authenticate(${ODBC_AGENTPASSWORD(${USER})})
same => n,AgentLogin(${USER})
same => n,NoOp(${USER} AGENT_STATUS is ${AGENT_STATUS})
same => n,Hangup()
[agents]
exten => _X.,1,Set(UserNumber=${EXTEN})
same => n,Wait(5) ; it works most of the time with this wait of 5s
same => n,AgentRequest(${EXTEN})
same => n,NoOp(${EXTEN} AGENT_STATUS is ${AGENT_STATUS})
same => n,Dial(Agent/${EXTEN},,g)
same => n,NoOp(Dial Status: ${DIALSTATUS})
same => n,GotoIf($["${DIALSTATUS}" != "ANSWER"]?done)
same => n(done),Hangup() |
|
Back to top |
|
|
rmudgett at digium.com Guest
|
Posted: Tue Aug 12, 2014 10:57 am Post subject: [asterisk-users] Asterisk 12.4 "Agent Busy" messag |
|
|
On Tue, Aug 12, 2014 at 1:33 AM, Deepak Rawat <deepaksingh.rawat@gmail.com (deepaksingh.rawat@gmail.com)> wrote:
Quote: | Hi,
I am upgrading from Asterisk 1.4 to 12.4. I am able to authenticate the user and call AgentLogin. But after that when I call AgentRequest I keep getting Agent '1234' is busy.
If I put a delay of 5 second or more before calling AgentRequest then it works most of the times. Here's my dialplan:
[login]
exten => s,1,Background(thank-you-for-calling)
       same => n,WaitExten(.65)
       same => n,Background(press-1)
       same => n,WaitExten(15)
exten => 1,1,Read(USER,"agent-user")
       same => n,Authenticate(${ODBC_AGENTPASSWORD(${USER})})
       same => n,AgentLogin(${USER})
       same => n,NoOp(${USER} AGENT_STATUS is ${AGENT_STATUS})
       same => n,Hangup()
[agents]
exten => _X.,1,Set(UserNumber=${EXTEN})
       same => n,Wait(5) ; it works most of the time with this wait of 5s
       same => n,AgentRequest(${EXTEN})
       same => n,NoOp(${EXTEN} AGENT_STATUS is ${AGENT_STATUS})
       same => n,Dial(Agent/${EXTEN},,g)
       same => n,NoOp(Dial Status: ${DIALSTATUS})
       same => n,GotoIf($["${DIALSTATUS}" != "ANSWER"]?done)
       same => n(done),Hangup()
|
There is an initial 5 second wait after an agent logs in. The wait is a necessary
probation period to allow any local channel chain that the agent may have to
optimize out. If the agent local channel optimization happens while the agent is
on a call then the agent pool can lose track of the agent and the agent will be
logged out. The agent will then have to log back in after the current call
completes.
Why are you attempting to request an agent that has a device state
(Agent:agent_id) of busy anyway? That agent could be on another call or in a
between call wrap-up time.
Richard |
|
Back to top |
|
|
mjordan at digium.com Guest
|
Posted: Tue Aug 12, 2014 11:07 am Post subject: [asterisk-users] Asterisk 12.4 "Agent Busy" messag |
|
|
On Tue, Aug 12, 2014 at 10:57 AM, Richard Mudgett <rmudgett@digium.com> wrote:
Quote: |
On Tue, Aug 12, 2014 at 1:33 AM, Deepak Rawat <deepaksingh.rawat@gmail.com>
wrote:
Quote: |
Hi,
I am upgrading from Asterisk 1.4 to 12.4. I am able to authenticate the
user and call AgentLogin. But after that when I call AgentRequest I keep
getting Agent '1234' is busy.
If I put a delay of 5 second or more before calling AgentRequest then it
works most of the times. Here's my dialplan:
[login]
exten => s,1,Background(thank-you-for-calling)
same => n,WaitExten(.65)
same => n,Background(press-1)
same => n,WaitExten(15)
exten => 1,1,Read(USER,"agent-user")
same => n,Authenticate(${ODBC_AGENTPASSWORD(${USER})})
same => n,AgentLogin(${USER})
same => n,NoOp(${USER} AGENT_STATUS is ${AGENT_STATUS})
same => n,Hangup()
[agents]
exten => _X.,1,Set(UserNumber=${EXTEN})
same => n,Wait(5) ; it works most of the time with this wait of 5s
same => n,AgentRequest(${EXTEN})
same => n,NoOp(${EXTEN} AGENT_STATUS is ${AGENT_STATUS})
same => n,Dial(Agent/${EXTEN},,g)
same => n,NoOp(Dial Status: ${DIALSTATUS})
same => n,GotoIf($["${DIALSTATUS}" != "ANSWER"]?done)
same => n(done),Hangup()
|
There is an initial 5 second wait after an agent logs in. The wait is a
necessary
probation period to allow any local channel chain that the agent may have to
optimize out. If the agent local channel optimization happens while the
agent is
on a call then the agent pool can lose track of the agent and the agent will
be
logged out. The agent will then have to log back in after the current call
completes.
|
That being said, I don't think we're thrilled with that 5 second wait
time. See https://issues.asterisk.org/jira/browse/ASTERISK-23259 for a
bug report noting this behaviour.
Quote: | Why are you attempting to request an agent that has a device state
(Agent:agent_id) of busy anyway? That agent could be on another call or in
a
between call wrap-up time.
|
--
Matthew Jordan
Digium, Inc. | Engineering Manager
445 Jan Davis Drive NW - Huntsville, AL 35806 - USA
Check us out at: http://digium.com & http://asterisk.org
--
_____________________________________________________________________
-- 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 |
|
Back to top |
|
|
deepaksingh.rawat at g... Guest
|
Posted: Tue Aug 12, 2014 11:24 am Post subject: [asterisk-users] Asterisk 12.4 "Agent Busy" messag |
|
|
Thank you for the response Richard and Matthew! It's good to hear that you are working on fixing the 5s delay. I was really puzzled by it and found the idle time by trial and error. Is there any documentation of these new behaviors?
Coming back to the main issue, I am getting agent busy when the agent logs in for the first time. He/she is not supposed to be on any call. Is there any command to find our where the agent is busy?
On Tue, Aug 12, 2014 at 9:27 PM, Richard Mudgett <rmudgett@digium.com (rmudgett@digium.com)> wrote:
Quote: |
On Tue, Aug 12, 2014 at 1:33 AM, Deepak Rawat <deepaksingh.rawat@gmail.com (deepaksingh.rawat@gmail.com)> wrote:
Quote: | Hi,
I am upgrading from Asterisk 1.4 to 12.4. I am able to authenticate the user and call AgentLogin. But after that when I call AgentRequest I keep getting Agent '1234' is busy.
If I put a delay of 5 second or more before calling AgentRequest then it works most of the times. Here's my dialplan:
[login]
exten => s,1,Background(thank-you-for-calling)
same => n,WaitExten(.65)
same => n,Background(press-1)
same => n,WaitExten(15)
exten => 1,1,Read(USER,"agent-user")
same => n,Authenticate(${ODBC_AGENTPASSWORD(${USER})})
same => n,AgentLogin(${USER})
same => n,NoOp(${USER} AGENT_STATUS is ${AGENT_STATUS})
same => n,Hangup()
[agents]
exten => _X.,1,Set(UserNumber=${EXTEN})
same => n,Wait(5) ; it works most of the time with this wait of 5s
same => n,AgentRequest(${EXTEN})
same => n,NoOp(${EXTEN} AGENT_STATUS is ${AGENT_STATUS})
same => n,Dial(Agent/${EXTEN},,g)
same => n,NoOp(Dial Status: ${DIALSTATUS})
same => n,GotoIf($["${DIALSTATUS}" != "ANSWER"]?done)
same => n(done),Hangup()
|
There is an initial 5 second wait after an agent logs in. The wait is a necessary
probation period to allow any local channel chain that the agent may have to
optimize out. If the agent local channel optimization happens while the agent is
on a call then the agent pool can lose track of the agent and the agent will be
logged out. The agent will then have to log back in after the current call
completes.
Why are you attempting to request an agent that has a device state
(Agent:agent_id) of busy anyway? That agent could be on another call or in a
between call wrap-up time.
Richard
--
_____________________________________________________________________
-- 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
|
|
|
Back to top |
|
|
rmudgett at digium.com Guest
|
Posted: Tue Aug 12, 2014 11:37 am Post subject: [asterisk-users] Asterisk 12.4 "Agent Busy" messag |
|
|
On Tue, Aug 12, 2014 at 11:24 AM, Deepak Rawat <deepaksingh.rawat@gmail.com (deepaksingh.rawat@gmail.com)> wrote:
Quote: | Thank you for the response Richard and Matthew! It's good to hear that you are working on fixing the 5s delay. I was really puzzled by it and found the idle time by trial and error. Is there any documentation of these new behaviors?
Coming back to the main issue, I am getting agent busy when the agent logs in for the first time. He/she is not supposed to be on any call. Is there any command to find our where the agent is busy?
|
Use the DEVICE_STATE() function and pass it "Agent:1234" to get the current state of agent 1234.
Richard |
|
Back to top |
|
|
|
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
Powered by phpBB © 2001, 2005 phpBB Group
|