" /> Implement dynamic skill level changes for step-by-step routing - Genesys CTI User Forum

Author Topic: Implement dynamic skill level changes for step-by-step routing  (Read 3876 times)

Offline Timur Karimov

  • Sr. Member
  • ****
  • Posts: 415
  • Karma: 2
Advertisement
Hi all
Try to achive next things:
For example, let assume what we have Group of Agents with Skill_A. Some agent have Skill_A=10 and it's the prefered agent for our example calls. Another have Skill_A=8 which have a less priority, next 6, 3 and 1 for last one. Ok. So what i already have now - then i need to route call , i have a chain of selection object. First with Skill_A>=10 rule and 10 sec time out, second with Skill_A>=6, etc....And the last selection have Skill_A>=1 rule and maximum timeout. It's works but this scheme have a two big disadvantages:
1) Reporting. If we have't DCID filter for used VQ - we have a big volume "over calculated calls". If we have - it's totaly miss calls returned in queue by over reason(agetn-not answer actions for example).
2) Reporting again. Even we use the DCID filter , such chained routing still broked out the another KPI - minimal call waiting time for example!
3) It's very unclear to understud and support scheme. Every time then bussines users need to change the step-level - i need to review many of selections to check all levels and correct it if need.

So. The only one way that i see today for solve this task - use cutom sub-strategy with manual target selections/dn block/play busy/route calls instead of  the standart Selections object. But may be i just mess something in URS function and out community have another way to solve it?

WBR Tim

Offline cavagnaro

  • Administrator
  • Hero Member
  • *****
  • Posts: 7641
  • Karma: 56330
Re: Implement dynamic skill level changes for step-by-step routing
« Reply #1 on: August 06, 2013, 02:49:54 PM »
Hey Timur
I don't see why reporting should be an issue...
On the VQ (with DCID of course) you will have all stats. Including those AbandonOnRinging on the agent as they are included by default on the AbandonMetric for Queue objects. Or you can separate them o a new Metric so you have a better picture. (I am not a fan of leaving the agent the choice to answer when he wants...but customers needs may force it because of business needs)

So you will have 4 VQs or more:
Entered = Cleared + Distributed + Abandon

From Distributed you will get how many were Answered.

The calls returned to Queue you can control them by another Metric on the VQ and differentiate them. Check the Event and you will see a KVP you can capture and measure.

As for minimal call waiting time, you can create a Group DN with all 4 VQs and get the minimal for those.

A change in strategies is always going by hand with metrics. Impossible to make a strategy and expect that a simple metric system will do everything. It is what customer always complains, as they see it as "simple" but having many targets, and most important, measuring them correctly is not easy and no system will do "easy" on that. Sure, you can use a single VQ and would look like happy solution, but then when someone asks "and how many calls did second target answered really?" the Genesys designer would have to scratch his head and say whatever reason he can imagine...but not be able to provide a correct answer.

Cheers

Offline Tambo

  • Sr. Member
  • ****
  • Posts: 456
  • Karma: 5
Re: Implement dynamic skill level changes for step-by-step routing
« Reply #2 on: August 06, 2013, 03:52:04 PM »
Hi Timur,

I agree with Cav for this, we do this for all of our routing but have never been asked how many calls agents skilled at 6 have taken of a call type.

I don't see why you would need to change the decrement of the skill levels as you are doing a >= , ours have remained static as we haven't had a good enough reason to change them yet. We did put in quite a few though as we really don't want the agents skilled low to get the call so would prefer for the call to queue a little longer.

We have 1 dept that can choose to answer calls rather than forced headset and it just causes issues when trying to explain average speed of answer etc (not a fan), this also caused issues with calls clearing as it bounced from desk to desk.

cheers
T

Offline bublepaw

  • Sr. Member
  • ****
  • Posts: 283
  • Karma: 10
Re: Implement dynamic skill level changes for step-by-step routing
« Reply #3 on: August 07, 2013, 11:02:59 AM »
Did You try using Service Level routing object. It provides similar functionality by relaxing skill levels over time and it can be fully controllable by business and reporting works pretty well as there is just one VQ. I know it is not perfect but may do the trick


Offline Tambo

  • Sr. Member
  • ****
  • Posts: 456
  • Karma: 5
Re: Implement dynamic skill level changes for step-by-step routing
« Reply #4 on: August 07, 2013, 02:48:56 PM »
mmmmm Bubblepaw...over looked that, may need to revisit the routing

cheers
T

Offline Timur Karimov

  • Sr. Member
  • ****
  • Posts: 415
  • Karma: 2
Re: Implement dynamic skill level changes for step-by-step routing
« Reply #5 on: August 07, 2013, 05:09:10 PM »
[quote author=bublepaw link=topic=7933.msg34772#msg34772 date=1375873379]
Did You try using Service Level routing object.
[/quote]
Of couse yes. But SL routing does't cover the main purpose of this task - priority routing based on skill level. So i now solve it based on treshold rules and use the different VQ for different level. And for aggregated stats I was created the set of DN group with all coresponding "level VQ" as members.
WBR Tim

Offline bublepaw

  • Sr. Member
  • ****
  • Posts: 283
  • Karma: 10
Re: Implement dynamic skill level changes for step-by-step routing
« Reply #6 on: August 12, 2013, 01:12:58 AM »
Actually Service Level block does priority routing based on skill level. In SL block You define skill profile which defines Your best agent. As long as SL is within limit system will use only best agent sorted by how far they deviate from optimal skill profile. If SL is not met system will automatically extend search by including more agent based on their skills. For Your example You need to define profile with one skill with level high and importance Critical. with such setting system will include only agents with that skill and agent with skill level between 7 and 10 will be taken first. More out of Your SLA You will be more relax will be criteria for skill and finally will include all agent with that skill but always sorted by how far they are from 7-10 range.

As I mentioned it is not perfect but in some cases might do the trick

Offline Genesys123

  • Newbie
  • *
  • Posts: 27
  • Karma: 0
Re: Implement dynamic skill level changes for step-by-step routing
« Reply #7 on: August 13, 2013, 11:42:12 AM »
Hi,

just thought to give ...

instead of many target block , you can use one target block with assign function to change the skill level.

but my question here is ? is it necessary to have 10 sec delay for each skill level?

-- Assign skill A = 10 --> Target if time out (10 sec) then go back to same assign and change the value with count parameter. based on count value you can change the assign variable value.

I did in my case , i need to route a call to high level agent first but 2 skills one is product another one is language. so i did like Route(10,10) , if no then route (10,9)  ... route(10,1).. Route(9,10)...route(1,1).