[Asterisk-Users] Round Robin Strategy doesn't seem to work

Todd Gunsolley todd.gunsolley at spry.com
Thu Feb 10 17:10:04 MST 2005


Let me consolidate a little to address the multiple responses that I've
gotten to my question - Thanks to all who've replied so far.

Essentially, I am setting up a small company's auto attendant, and they have
people who cover each other's job functions as needed.  So, there is a
'Sales' guy who should be first in line for each and every sales call.  But,
if he's unavailable (say on another call) then the sales call should go on
to the Dedicated Support guy (and on and on).  So, I have another queue,
dedi-support, where the Dedicated Support agent should be first in line for
every call, with the sales person's agent on down the list.

I know that this is a fairly strange scenario, but if I set this all up as
queues and agents now (versus contexts in extensions.conf, which I could
easily configure to do what I'm looking for), it becomes much easier for
this company to maintain their auto attendant as they grow.  What I'm
looking for is exactly a linear hunt group (so that they can collect queue
statistics and change to a different strategy when the have more employees).

I've been going off the descriptions of strategies at:
http://www.voip-info.org/wiki-Asterisk+call+queues

I think I now understand the slight difference between roundrobin and
rrmemory - rrmemory will place the next call first to the queue member after
the one that answered the current call, while roundrobin will place the next
call first to the member after the one that got the first crack at the
current call.  So is there a 'linear' method available?

I've tried using penalties, but then I can't get the calls to ring past the
first agent (the one with no penalty) if they are logged into the queue but
don't answer.  

For example, when I have:
[sales]
music = default
strategy = roundrobin
timeout = 20
retry = 5
reportholdtime = yes
announce = queue-sales
member => Agent/9021
member => Agent/5901,1
member => Agent/9020,2
member => Agent/1114,3

And agent 9021 doesn't answer within the timeout, it will retry starting
with agent 9021 again - we have the potential to get stuck in a loop here.
I could use the autologout feature, but then a caller who reaches voicemail
(the next step after Queue(sales|t|||120) in my auto attendant context) has
effectively logged all agents out of the queue.

So I'm a little stuck on how to handle this.  Any suggestions or further
insight (I'm probably overlooking a simple little solution).

Thanks,
Todd




More information about the asterisk-users mailing list