[Freeswitch-users] mod_callcenter agent may stuck "In a queue call" forever

TNTClaus tntclaus at gmail.com
Thu Mar 24 19:22:59 MSK 2016


Hi.

I faced a problem with mod call centre strange behaviour. I have a queue
with the strategy "ring all", queue has got 30 agents, all of them always
have status available, but only 6 agents can be really active (e.g.:
registered and connected) at a time.

Those 6 simultaneously answer calls (e.g. can answer 200 on the same INVITE
request before CANCEL arrives). *Sometimes an agent might get stuck in the
state "In a queue call"* while he is not in a call. In that case waiting
agent stops getting calls.

CLI command:

> *callcenter_config agent set state <agent> waiting*

changes state of an agent at DB, but call center still won't offer calls to
him. The only fix I found is to reload mod_callcenter, but during reload
all active calls would be dropped.

Calls are coming one by one (maximum call rate I had ever seen at this site
was ~600 calls/hour). But I didn't notice any correlation with the call
rate. Agent may get stuck at any time of day with any call rate ranging
between ~150 calls/hour to 400 calls/hour.

Most of calls last from 5 to 20 seconds.

I tried to switch from sqlite to odbc postgresql, but that changed nothing.
Currently switch is connected to ODBC Postgresql.

*OS version:*
Linux local.pbx 3.16.0-4-amd64 #1 SMP Debian 3.16.7-ckt20-1+deb8u4
(2016-02-29) x86_64 GNU/Linux

*FS version:*
FreeSWITCH version: 1.6.6+git~20160111T201612Z~d2d0b3283a~64bit (git
d2d0b32 2016-01-11 20:16:12Z 64bit)

*sqlite package:*
llibsqlite3-0:amd64             3.8.7.1-1+deb8u1             amd64
SQLite 3 shared library

*PostgreSQL / ODBC packages:*
odbc-postgresql:amd64          1:09.03.0300-1               amd64
ODBC driver for PostgreSQL
postgresql-9.4                 9.4.6-0+deb8u1               amd64
object-relational SQL database, version 9.4 server




*XML configs:*

*callcenter/queues/queue.xml:*<queue name="dispatchers">
  <param name="discard-abandoned-after" value="300"/>
  <param name="max-wait-time" value="0"/>
  <param name="max-wait-time-with-no-agent" value="120"/>
  <param name="moh-sound" value="$${hold_music}"/>
  <param name="strategy" value="ring-all"/>
  <param name="tier-rule-no-agent-no-wait" value="false"/>
  <param name="tier-rule-wait-multiply-level" value="true"/>
  <param name="tier-rule-wait-second" value="300"/>
  <param name="tier-rules-apply" value="false"/>
  <param name="time-base-score" value="queue"/>
</queue>

*callcenter/agents/agent.xml*
    <agent name="agent at local" type="callback" contact="user/agent at local"
           status="Available" max-no-answer="0" wrap-up-time="1"
reject-delay-time="1" busy-delay-time="1"
           no-answer-delay-time="1"/>

that's a typical agent. They are all same except name and contact
attributes.

*callcenter/tiers/tier.xml*
<tier agent="agent at local" queue="dispatchers" level="1" position="1"/>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.freeswitch.org/pipermail/freeswitch-users/attachments/20160324/07707a4b/attachment.html 


Join us at ClueCon 2016 Aug 8-12, 2016
More information about the FreeSWITCH-users mailing list