[asterisk-users] Customized Queuing Strategy
Hi All, I have this Call Center requirement to be implenetd: 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. Kindly suggest some good easy strategy to handle this. thanks ___ -- 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
Re: [asterisk-users] Customized Queuing Strategy
Alex Balashov a écrit : > 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 Isn't this possible with agent priority ? ___ -- 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
Re: [asterisk-users] Customized Queuing Strategy
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.?? 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?? exten => 1589,1,Answer exten => 1589,2,Ringing exten => 1589,3,Wait(2) exten => 1589,4,Queue(testq|t|||45) exten => 1589,5,Queue(testq2|t|||45) exten => 1589,6,Hangup thanks in advance. Syed nasr -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] 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
Re: [asterisk-users] Customized Queuing Strategy
Sorry for previous blank answer :) On Mon, Aug 4, 2008 at 1:20 PM, Syed Nasruddin <[EMAIL PROTECTED]> 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: [EMAIL PROTECTED] > [mailto:[EMAIL PROTECTED] 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, [EMAIL PROTECTED] 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
Re: [asterisk-users] Customized Queuing Strategy
Syed Nasruddin pisze: Hi All, I have this Call Center requirement to be implenetd: 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. Kindly suggest some good easy strategy to handle this. http://www.voip-info.org/wiki-Asterisk+call+queues read about "Penalties" should do the trick ___ -- 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
Re: [asterisk-users] Customized Queuing Strategy
On Mon, Aug 4, 2008 at 1:20 PM, Syed Nasruddin <[EMAIL PROTECTED]> 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.?? > > 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?? > > exten => 1589,1,Answer > exten => 1589,2,Ringing > exten => 1589,3,Wait(2) > exten => 1589,4,Queue(testq|t|||45) > exten => 1589,5,Queue(testq2|t|||45) > exten => 1589,6,Hangup > > thanks in advance. > > Syed nasr > > > > -Original Message- > From: [EMAIL PROTECTED] > [mailto:[EMAIL PROTECTED] 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, [EMAIL PROTECTED] 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
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
Re: [asterisk-users] Customized Queuing Strategy
Dear Atis, I am running in to syntax problem. Sorry only beginner level experience of conditional checking: > 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: if ("${QUEUESTATUS"="") Hangup(); if above condition fails then the control must move to below lines rather then getting hanged up. > exten => 1589,5,Queue(testq2|t|||45) > exten => 1589,6,Hangup Thanks Syed nasr -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] 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 <[EMAIL PROTECTED]> 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: [EMAIL PROTECTED] > [mailto:[EMAIL PROTECTED] 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, [EMAIL PROTECTED] 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
Re: [asterisk-users] Customized Queuing Strategy
Use penalties and you will be done in two minutes. Try not to reload while calls are queued. Thanks, Steve T On Mon, Aug 4, 2008 at 7:59 AM, Syed Nasruddin <[EMAIL PROTECTED]> wrote: > > > > > Dear Atis, > > I am running in to syntax problem. Sorry only beginner level experience > of conditional checking: > >> 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: > > if ("${QUEUESTATUS"="") Hangup(); > > if above condition fails then the control must move to below lines > rather then getting hanged up. > >> exten => 1589,5,Queue(testq2|t|||45) >> exten => 1589,6,Hangup > > > Thanks > > Syed nasr > > > -Original Message- > From: [EMAIL PROTECTED] > [mailto:[EMAIL PROTECTED] 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 <[EMAIL PROTECTED]> > 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: [EMAIL PROTECTED] >> [mailto:[EMAIL PROTECTED] 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 -- >> > > > -- > Atis Lezdins, > VoIP Project Manager / Developer, > [EMAIL PROTECTED] > 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
Re: [asterisk-users] Customized Queuing Strategy
On Mon, Aug 4, 2008 at 2:59 PM, Syed Nasruddin <[EMAIL PROTECTED]> 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: [EMAIL PROTECTED] > [mailto:[EMAIL PROTECTED] 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 <[EMAIL PROTECTED]> > 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: [EMAIL PROTECTED] >> [mailto:[EMAIL PROTECTED] 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 -- >> >> AstriC
Re: [asterisk-users] Customized Queuing Strategy
On Mon, Aug 4, 2008 at 9:24 AM, Atis Lezdins <[EMAIL PROTECTED]> wrote: > On Mon, Aug 4, 2008 at 2:59 PM, Syed Nasruddin <[EMAIL PROTECTED]> 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 ___ -- 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
Re: [asterisk-users] Customized Queuing Strategy
Thanks Atis and steve. I think I will have it running tomorrow. Thanks a lot. Syed Nasruddin -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Steve Totaro Sent: Monday, August 04, 2008 6:40 PM To: Asterisk Users Mailing List - Non-Commercial Discussion Subject: Re: [asterisk-users] Customized Queuing Strategy On Mon, Aug 4, 2008 at 9:24 AM, Atis Lezdins <[EMAIL PROTECTED]> wrote: > On Mon, Aug 4, 2008 at 2:59 PM, Syed Nasruddin <[EMAIL PROTECTED]> 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 ___ -- 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