[asterisk-users] Skill based routing

Steve Totaro stotaro at totarotechnologies.com
Fri Jul 17 08:09:47 CDT 2009


Just use FastAGI to hit a little process that queries a database and returns
the extensions of the "most skilled"

Have FastAGI return those extensions and pass them to a dial command with
the m flag (music if memory serves me correctly (pre-coffee)  Make the
"music" the standard junk you hear while waiting in a queue.

Be sure the extensions you are calling don't have voicemail and you are
obviously going to lose round robin and other dialing schemes unless you
come up with some other logic.

Multiple queues seems like the approach I would take.  AMI can change agent
penalties on the fly as well as add and remove them from queues.  Just an
FYI.

Maybe a mix of multiple queues, FastAGI, dialplan logic, and AMI.

Should be a fun project to get working and then fine tune.

Thanks,
Steve Totaro

On Fri, Jul 17, 2009 at 6:36 AM, Julian Lyndon-Smith <asterisk at dotr.com>wrote:

> Um, I really don't know - we just use the periodic messages to play
> the traditional "Your call is important to use" (whatever the
> wording..)
>
> Julian.
>
> 2009/7/17 Alex Balashov <abalashov at evaristesys.com>:
> >
> > What value do the queue announcements (I am assuming these are pertaining
> > to expected hold time, etc.) if there is only one agent?
> >
> >> We use a queue so that we can have all the benefits of the queue
> >> whilst finding an agent : music on hold, periodic announcements etc
> >> etc.
> >>
> >> You are right - with a little more effort we could probably remove the
> >> need for the queue. But why would I do that if I can use the queue for
> >> the bits I want ;)
> >>
> >> Julian
> >>
> >> 2009/7/17 Alex Balashov <abalashov at evaristesys.com>:
> >>>
> >>> The simplicity of this approach is elegant, but in that case, why use a
> >>> queue?  Why not just perform this logic straight in the dial plan when
> >>> processing the received call?
> >>>
> >>> The benefit of queues arises from their ability to keep state;  they
> can
> >>> retry agents, carry out different ring strategies, etc.  I understood
> >>> the
> >>> original question to be implicitly about incorporating weights for
> >>> skills
> >>> into queue or queue-like call distribution mechanisms, since that is
> how
> >>> it is done in call center products.  If the question is simply how to
> >>> make
> >>> Asterisk consider certain outside information when choosing to whom to
> >>> route a call, the answer would be that it is identical to the process
> >>> for
> >>> embedding any other kind of logic and/or outside data source into call
> >>> processing.
> >>>
> >>>> Another simple way is to add local/foo/n as the only "agent" on the
> >>>> queue. In the dialplan for local/foo , interrogate a database for the
> >>>> most appropriate "agent" and then call that agent's extension.
> >>>>
> >>>> Julian
> >>>>
> >>>> 2009/7/17 Matt Florell <astmattf at gmail.com>:
> >>>>> On 7/17/09, Alex Balashov <abalashov at evaristesys.com> wrote:
> >>>>>> Rupert Utteridge - Digital Techniques (Austalia) Limited wrote:
> >>>>>>
> >>>>>>  > We are trying to implement skill based routing for agents in a
> >>>>>> support
> >>>>>>  > centre based on the agent login. Has anyone had any experience
> >>>>>> with
> >>>>>> this
> >>>>>>  > and what was the outcome?
> >>>>>>
> >>>>>>
> >>>>>> It can't really be done using Asterisk queues, unless you want to
> >>>>>> create
> >>>>>>  a large number of queues for every relevant skill factor and have
> >>>>>> agents
> >>>>>>  join various combinations of these simultaneously--which would take
> >>>>>>  quite a bit of dial plan and/or AGI logic to pull off.  Plus, that
> >>>>>>  doesn't scale any given queue beyond one host.
> >>>>>>
> >>>>>>  I suggest you look into using FastAGI[1] to simulate the queue
> >>>>>>  experience by generating hold music and announcements without
> >>>>>> actually
> >>>>>>  using Asterisk queues per se.  This is quite possible to do, and,
> >>>>>> this
> >>>>>>  allows you to distribute queues across multiple hosts, as well as
> >>>>>>  distribute calls within those queues by whatever logic you choose.
> >>>>>>  No
> >>>>>>  shoehorning--just write it yourself.
> >>>>>>
> >>>>>>  -- Alex
> >>>>>>
> >>>>>>  [1] Yes, FastAGI.  Not local AGI.  And most especially not in PHP;
> >>>>>>      contrary to a lot of the info out there, PHP could not possibly
> >>>>>>      be a less suitable language in which to write AGI scripts.  I
> >>>>>>      don't know who comes up with these lavish heights of
> mediocrity.
> >>>>>
> >>>>> If you are not looking to write it yourself you could always try
> >>>>> ViciDial which has skills-based routing built in, and it's free and
> >>>>> Open Source.
> >>>>>
> >>>>> MATT---
> >>>>>
> >>>>> _______________________________________________
> >>>>> -- 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
> >>>>
> >>>
> >>>
> >>> --
> >>> Alex Balashov
> >>> Evariste Systems
> >>> Web    : http://www.evaristesys.com/
> >>> Tel    : (+1) (678) 954-0670
> >>> Direct : (+1) (678) 954-0671
> >>> Mobile : (+1) (678) 237-1775
> >>>
> >>>
> >>>
> >>> _______________________________________________
> >>> -- 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
> >>
> >
> >
> > --
> > Alex Balashov
> > Evariste Systems
> > Web    : http://www.evaristesys.com/
> > Tel    : (+1) (678) 954-0670
> > Direct : (+1) (678) 954-0671
> > Mobile : (+1) (678) 237-1775
> >
> >
> >
> > _______________________________________________
> > -- 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
>



-- 
Thanks,
Steve Totaro
+18887771888 (Toll Free)
+12409381212 (Cell)
+12024369784 (Skype)
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.digium.com/pipermail/asterisk-users/attachments/20090717/e7791065/attachment.htm 


More information about the asterisk-users mailing list