Re: [asterisk-users] Agents in more than one queue at once

2012-10-22 Thread Alex Forster
 In general there is no guaarantee as which call will connect; each queue is
 independent AFAIK.

Lenz- big fan :) And I'm sure this topic is of interest to you...

I'll admit, I had a feeling that it's random would be the response to my
original question. I remember reading the app_queue code a while back and
getting the impression that the logic was something like-

* Loop through the list of all queued calls in the system, one by one. If the
current call is 'next' in its respective queue (as defined by the queue
scheduling algo), then we need to find an agent to take this call...
* Loop through the list of agents who are members of this queue. If the current
agent is available to take a call, then send the call to the available agent.

This logic leaves the above mentioned oversight where at no point is it ever
considered that an agent may be a member of more than one queue. Even with a
fair scheduling algo applied to each queue, this bug causes queues with large
numbers of waiting calls and/or large numbers of available agents to starve
other queues.

Effectively, this bug makes skills-based routing impossible, because unique
skills can not exist. Additionally, regardless of how many callers are in
queue, this bug causes hold times to increase - significantly, in our case.

This is an important oversight in my opinion because it is the only way that
skills-based routing can be implemented within the framework of app_queue.
Without fixing this issue, Asterisk can not claim to have a reliable method
of implementing skills-based routing.


*DEVELOPERS* - If I took a crack at fixing this issue, what general tips do
you have for me to make it most likely that my solution can be integrated
into HEAD? I believe I can justify spending some time at work to deal with
this, but not without at least a decent chance that the work will be
integrated into mainline (assuming it doesn't suck, of course :)

Alex Forster


--
_
-- 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


Re: [asterisk-users] Agents in more than one queue at once

2012-10-18 Thread Alex Forster
Are there any developers that are familiar with the Queue() app implementation
and how it distributes calls?

Alex Forster


--
_
-- 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


[asterisk-users] Agents in more than one queue at once

2012-10-17 Thread Alex Forster
My company has been running Asterisk 1.6.2.19-1_centos5 from the official
yum repo, and for a while now I've been receiving complaints from our call
centers about calls not being routed in the most efficient order.

I'll explain with a simplified scenario--

Let's say I have two queues: A and B. I have one agent, Alice, who is a
member of both of these queues. While Alice is busy on a call, one person
calls in to queue A, and then, several moments later, another person calls
in to queue B.

At this point, note that both callers waiting on hold are position 1 in
their respective queues. A queue show might look like this...

 A has 1 calls (max unlimited) in 'leastrecent' strategy (0s
holdtime, 533s talktime), W:1, C:1, A:0, SL:100.0% within 60s
Members:
   21 (Local/21@from-queue/n) (dynamic) (In use) has taken 1 calls
(last was 533 secs ago)
Callers:
   1. SIP/Trunk-eb17 (wait: 1:14, prio: 0)

 B has 1 calls (max unlimited) in 'leastrecent' strategy (0s
holdtime, 533s talktime), W:1, C:1, A:0, SL:100.0% within 60s
Members:
   21 (Local/21@from-queue/n) (dynamic) (In use) has taken 1 calls
(last was 533 secs ago)
Callers:
   1. SIP/Trunk-eb1e (wait: 0:45, prio: 0)

My question is: when Alice gets off the phone, which call will she get? My
expectation is that she will get the call which has been waiting longer,
but I'm not sure that's actually the case.

Alex Forster
--
_
-- 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