[asterisk-users] Priority between calls from different queues

Atis Lezdins atis at iq-labs.net
Fri Nov 28 10:14:29 CST 2008


On Fri, Nov 28, 2008 at 4:51 PM, equis software <equissoftware at gmail.com> wrote:
> In both queues have the same wrapuptime, there´s not a problem...
> With weight property I can´t resolve my problem...I want to answer calls of
> both queues sorted by time, like a big FIFO or like if I had only one queue

I'm afraid that it's not possible. There will be too much cases when
one queue can choose to call agent ignoring another queue.

What i meant with wrapuptime - even if it's the same (and you don't
use shared_lastcall), second queue won't know that agent has just
ended conversation - so it will send call to agent. I guess that there
would be some more such "race conditions" for having free agent.

If you really need FIFO, you would have much better luck with having
one queue and then thinking how to customize it for different callers.
Single instance of Queue is built like FIFO for calls (with bucket of
agents).

For example - wait time you can specify as argument to Queue().

As for different caller amount, you can assign them to groups and use
GROUP_COUNT to determine how many they are in each group.

If you need some more differentiation, just ask, and we'll try to give ideas.

Oh, btw - you could also try to create one fake agent in queue1 and
queue2 (with ringinuse=yes) and use Local channel to send those calls
to queue-real where your agents reside. However, i'm not sure that
this will work, as queue-real might answer channel, even if you set
"r" option.. not sure is this a problem, but it could be complex :)


Regards,
Atis





>
> regards
>
>
> On Fri, Nov 28, 2008 at 12:31 PM, Atis Lezdins <atis at iq-labs.net> wrote:
>>
>> On Fri, Nov 28, 2008 at 4:16 PM, Darrin Henshaw <DHenshaw at ignition.bm>
>> wrote:
>> > One thing you also will run into is listed here:
>> > http://www.voip-info.org/wiki/view/Asterisk+config+queues.conf.
>> >
>> >
>> >
>> > Here is the interesting part:
>> >
>> >
>> >
>> > Note that calls are not offered to queue members whilst the announcement
>> > is
>> > playing and it is possible for callers to slip ahead in the queue as a
>> > result. For example, call 1 arrives and is queued. Call 2 arrives ten
>> > seconds later and is queued. After twenty seconds, call 1 is played the
>> > periodic announce message. Exactly one second after call 1 starts
>> > hearing
>> > the message an agent becomes free. Since call 1 is tied up with
>> > announcements, call 2 is successfully offered to the agent. Call 1
>> > remains
>> > on hold and yet a call which arrived later has been serviced.
>> >
>> >
>> >
>> > Basically you can see that if you have announcements played, that could
>> > cause your order of answered calls to be not what you expect.
>>
>> With queues there are much more such situation than just this one ;)
>>
>> >
>> >
>> >
>> > Cheers,
>> >
>> >
>> >
>> > Darrin Henshaw | IT Administrator | MCTS: Exchange 2007 | MCSE 2003 |
>> > LPIC
>> >
>> > Ignition Support Center | www.ignition.bm
>> >
>> > Bermuda (441) 496-4319 | Cayman (345) 947-4357 | Halifax (902) 482-1288
>> > Atlanta | Bermuda | Cayman | Halifax
>> >
>> >
>> >
>> > From: asterisk-users-bounces at lists.digium.com
>> > [mailto:asterisk-users-bounces at lists.digium.com] On Behalf Of equis
>> > software
>> > Sent: Friday, November 28, 2008 10:06
>> > To: Asterisk Users Mailing List - Non-Commercial Discussion
>> > Subject: Re: [asterisk-users] Priority between calls from different
>> > queues
>> >
>> >
>> >
>> > I saw QUEUE_PRIO but it works inside a queue not between queues.
>> >
>> > I need to use two queues because their have different settings like max
>> > time
>> > waiting, max amount of calls in queue and others.
>>
>> For in-between queues you can use weight. So, if queue1 has more
>> weight than queue2, and agent1 is available (and is in both queues),
>> he will receive call from queue1 (no matter how long other caller
>> waits in queue2).
>>
>> Also, there's wrapuptime. It means - how many seconds agent should not
>> receive call after completing previous queue call. So, if agent
>> receives call from queue1 and it has wrapuptime 10 seconds, then he
>> ends call, he might immediately receive call from queue2 - no matter
>> that queue2 has lower weight or whatever settings. To overcome this,
>> you have to enable shared_lastcall (available since 1.6.0).
>>
>> Regards,
>> Atis
>>
>>
>> >
>> > Regards
>> >
>> > On Fri, Nov 28, 2008 at 11:34 AM, Atis Lezdins <atis at iq-labs.net> wrote:
>> >
>> > On Fri, Nov 28, 2008 at 1:13 PM, equis software
>> > <equissoftware at gmail.com>
>> > wrote:
>> >> Hi!
>> >> I want to know the way that calls are answer in this case...
>> >> I have queue1 and queue2, one agent that receive call from both queues.
>> >>
>> >> queue1 <- call1
>> >> queue1 <- call2
>> >> queue2 <- call3
>> >> queue2 <- call4
>> >>
>> >> In my test the agent answer calls in this order: call1,call3,call2 and
>> >> call4.
>> >> I think this must be in this order call1,call2, call3, call4 like a big
>> >> FIFO.
>> >>
>> >> Its ok this behavior?
>> >> Could I set priority between queues?
>> >>
>> >
>> > Hello,
>> >
>> > Queue has lot of different settings, like wrapuptime, strategy, etc.
>> > Also two queues usually don't know about each other, with few
>> > exceptions. One of them is shared_lastcall (introduced in Asterisk
>> > 1.6.0). There's also weight - it will help to give priority to
>> > specific queue if multiple calls are ready to go to agent in different
>> > queues. Also, you can give priority to different callers within queue
>> > by setting QUEUE_PRIO variable before sending call to queue.
>> >
>> > You could try to describe why you need two queues and what should be
>> > rules to distribute calls - so we can help you with overall
>> > architecture.
>> >
>> > Regards,
>> > Atis
>> >
>> >
>> >
>> >
>> >
>> > --
>> > Atis Lezdins,
>> > VoIP Project Manager / Developer,
>> > IQ Labs Inc,
>> > atis at iq-labs.net
>> > Skype: atis.lezdins
>> > Cell Phone: +371 28806004
>> > Cell Phone: +1 800 7300689
>> > Work phone: +1 800 7502835
>> >
>> > _______________________________________________
>> > -- Bandwidth and Colocation Provided by http://www.api-digital.com --
>> >
>> > asterisk-users mailing list
>> > To UNSUBSCRIBE or update options visit:
>> >   http://lists.digium.com/mailman/listinfo/asterisk-users
>> >
>> >
>> >
>> > ________________________________
>> > This email and its attachments may be confidential and are intended
>> > solely
>> > for the use of the individual or parties' to whom it is addressed. All
>> > comments are solely those of the author and do not necessarily represent
>> > those of Ignition. If you are not the intended recipient of this email
>> > and
>> > its attachments, you must take no action based upon them, nor must you
>> > copy
>> > or show them to anyone. Please contact the sender if you believe you
>> > have
>> > received this email in error. Thanks for considering the environmental
>> > impact before printing this email.
>> >
>> > _______________________________________________
>> > -- Bandwidth and Colocation Provided by http://www.api-digital.com --
>> >
>> > asterisk-users mailing list
>> > To UNSUBSCRIBE or update options visit:
>> >   http://lists.digium.com/mailman/listinfo/asterisk-users
>> >
>>
>>
>>
>> --
>> Atis Lezdins,
>> VoIP Project Manager / Developer,
>> IQ Labs Inc,
>> atis at iq-labs.net
>> Skype: atis.lezdins
>> Cell Phone: +371 28806004
>> Cell Phone: +1 800 7300689
>> Work phone: +1 800 7502835
>>
>> _______________________________________________
>> -- Bandwidth and Colocation Provided by http://www.api-digital.com --
>>
>> asterisk-users mailing list
>> To UNSUBSCRIBE or update options visit:
>>   http://lists.digium.com/mailman/listinfo/asterisk-users
>
>
> _______________________________________________
> -- Bandwidth and Colocation Provided by http://www.api-digital.com --
>
> asterisk-users mailing list
> To UNSUBSCRIBE or update options visit:
>   http://lists.digium.com/mailman/listinfo/asterisk-users
>



-- 
Atis Lezdins,
VoIP Project Manager / Developer,
IQ Labs Inc,
atis at iq-labs.net
Skype: atis.lezdins
Cell Phone: +371 28806004
Cell Phone: +1 800 7300689
Work phone: +1 800 7502835



More information about the asterisk-users mailing list