[asterisk-users] Customized Queuing Strategy

Steve Totaro stotaro at totarotechnologies.com
Mon Aug 4 08:39:38 CDT 2008


On Mon, Aug 4, 2008 at 9:24 AM, Atis Lezdins <atis at iq-labs.net> wrote:
> 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

Plus, if/when you grow, you can use AMI to dynamically change
penalties.  This can be a great advantage for business logic.

Thanks,
Steve T



More information about the asterisk-users mailing list