[asterisk-users] Customized Queuing Strategy

Atis Lezdins atis at iq-labs.net
Mon Aug 4 08:24:50 CDT 2008


On Mon, Aug 4, 2008 at 2:59 PM, Syed Nasruddin <nasruddin at ncel.com.pk> wrote:
>
>
>
>
> Dear Atis,
>
> I am running in to syntax problem. Sorry only beginner level experience
> of conditional checking:

Yes, sorry for that, i just wrote it quickly and didn't checked
expression. Also, i didn't wrote in .conf format, as it's been a long
time since i wrote that.

>
>> exten => 1589,1,Answer
>>  exten => 1589,2,Ringing
>>  exten => 1589,3,Wait(2)
>>  exten => 1589,4,Queue(testq|t|||45)
>
> if ("${QUEUESTATUS"="") Hangup(); since I want to hangup if the caller
> has already been catered by an agent and the caller hasnt hanged up, so
> what status value should I look for. Moreover syntax of above
> conditional statement is complete or something missin:

Exactly, if call has been handled by agent, QUEUESTATUS will be empty.
Otherwise it will be LEAVEUNAVAIL or something like that (not empty)

>
> if ("${QUEUESTATUS"="") Hangup();
>
> if above condition fails then the control must move to below lines
> rather then getting hanged up.

ok, i'll try:

exten => 1589,5,GotoIf($["${QUEUESTATUS}"=""]?exit)

>
>>  exten => 1589,5,Queue(testq2|t|||45)
rename to priority 6

>>  exten => 1589,6,Hangup
rename to priority 7 and add label "exit":
exten => 1589,7(exit),Hangup


But as said before, you can also use penalties of members. Next
penalty is only chosen if nobody with smallest penalty can't be
dialed. Plus, there will also be advantage that if you dial member for
15 seconds, and at first there is noone with penalty 1 available -
queue will call somebody with penalty 2. Then, if dialed member(s)
don't answer, queue will again try somebody with penalty 1 first.

Regards,
Atis


>
>
> Thanks
>
> Syed nasr
>
>
> -----Original Message-----
> From: asterisk-users-bounces at lists.digium.com
> [mailto:asterisk-users-bounces at lists.digium.com] On Behalf Of Atis
> Lezdins
> Sent: Monday, August 04, 2008 2:29 PM
> To: Asterisk Users Mailing List - Non-Commercial Discussion
> Subject: Re: [asterisk-users] Customized Queuing Strategy
>
> Sorry for previous blank answer :)
>
> On Mon, Aug 4, 2008 at 1:20 PM, Syed Nasruddin <nasruddin at ncel.com.pk>
> wrote:
>> Hi Thanks ALL for reply,
>>
>> If I use cascading queue will it do the trick?? The only problem is
> (as
>> mentioned in below example) if a call enters testq and get answered
> then
>> after hungup at the agent end only will the call will again enter the
>> next queue which is testq2 as in this example.??
>
> Check the QUEUESTATUS variable:
> http://www.voip-info.org/wiki-Asterisk+cmd+Queue
>
>>
>> Moreover if I keep penalty 1 for all the first 5 agents and penalty 2
> or
>> higher for all the next 5 agents and implement ringall strategy will
> it
>> do the same effect??
>
> Yes
>
>>
>> exten => 1589,1,Answer
>>  exten => 1589,2,Ringing
>>  exten => 1589,3,Wait(2)
>>  exten => 1589,4,Queue(testq|t|||45)
>
> if ("${QUEUESTATUS"="") Hangup();
>
>>  exten => 1589,5,Queue(testq2|t|||45)
>>  exten => 1589,6,Hangup
>
> Regards,
> Atis
>
>
>
>>
>> thanks in advance.
>>
>> Syed nasr
>>
>>
>>
>> -----Original Message-----
>> From: asterisk-users-bounces at lists.digium.com
>> [mailto:asterisk-users-bounces at lists.digium.com] On Behalf Of Alex
>> Balashov
>> Sent: Monday, August 04, 2008 1:38 PM
>> To: Asterisk Users Mailing List - Non-Commercial Discussion
>> Subject: Re: [asterisk-users] Customized Queuing Strategy
>>
>> Syed Nasruddin wrote:
>>
>>
>>> 1. 10 Call Center Agents.
>>>
>>> 2.   All the calls coming in will ALWAYS be routed to specific 5
>> agents,
>>> firstly.
>>>
>>> 4. IF ALL the first 5 agents are busy then ONLY then the call will be
>>> routed to next 5 Agents.
>>
>> Set up two queues.  Call Queue() on the first queue - corresponding to
>> #1 - with a rather strict timeout.  Fall back on the second queue.
>>
>> More sophisticated strategies require either the modification of the
>> source code for app_queue, or custom queue implementation in AGI.
>>
>> --
>> Alex Balashov
>> Evariste Systems
>> Web    : http://www.evaristesys.com/
>> Tel    : (+1) (678) 954-0670
>> Direct : (+1) (678) 954-0671
>> Mobile : (+1) (706) 338-8599
>>
>> _______________________________________________
>> -- Bandwidth and Colocation Provided by http://www.api-digital.com --
>>
>> AstriCon 2008 - September 22 - 25 Phoenix, Arizona
>> Register Now: http://www.astricon.net
>>
>> 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 --
>>
>> AstriCon 2008 - September 22 - 25 Phoenix, Arizona
>> Register Now: http://www.astricon.net
>>
>> asterisk-users mailing list
>> To UNSUBSCRIBE or update options visit:
>>   http://lists.digium.com/mailman/listinfo/asterisk-users
>>
>
>
>
> --
> Atis Lezdins,
> VoIP Project Manager / Developer,
> 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 --
>
> AstriCon 2008 - September 22 - 25 Phoenix, Arizona
> Register Now: http://www.astricon.net
>
> 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 --
>
> AstriCon 2008 - September 22 - 25 Phoenix, Arizona
> Register Now: http://www.astricon.net
>
> asterisk-users mailing list
> To UNSUBSCRIBE or update options visit:
>   http://lists.digium.com/mailman/listinfo/asterisk-users
>



-- 
Atis Lezdins,
VoIP Project Manager / Developer,
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