cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
399
Views
0
Helpful
1
Replies

Skill Based Routing Multiable CSQs

randy.montz
Level 1
Level 1

I need to guidance on skill based routing.

Current Setup

Agent     HelpDesk   Support 

John            10              0

Bob               5             10

 

Issue (see attached snippet of script)

Bob is currently getting HelpDesk calls when there are support calls waiting. I need Bob only to get calls from the HelpDesk Queue if we have no waiting calls in the Support queue.

 

Any Advice would be helpful as I am new to scripting.

 

 

 

1 Reply 1

Jonathan Schulenberg
Hall of Fame
Hall of Fame

There are two scenarios when determining agent selection and Skill Competency Ratings only influence one of them (the one you're not facing). Let's recap:

  • There are multiple agents waiting in a Ready state and a single call arrives in a CSQ (i.e. surplus of agents).
    • This is where Skill Competency Ratings apply.
    • The Most Skilled agent in the CSQ the caller was placed into will be offered the call first. If multiple agents have the same Competency Rating, it will offer the agent who's been in a Ready state the longest. It proceeds to the next lower skill level only after exhausting all agents at the level.
  • There are multiple calls waiting, possibly across multiple CSQs, and a single agent becomes available (i.e. a shortage of agents).
    • Skill Competency Ratings play *no* role in this scenario.
    • The agent who becomes available will simply be offered the longest waiting call - at the highest priority - across all CSQs they are skilled in.
    • If the caller has been prioritized within the AEF script, this is a strict priority across all other callers waiting. Neither the agent nor the CSQ itself can be prioritized, only a caller.

 

So, if you want Bob to only receive HelpDesk_CSQ calls when there are no calls waiting in Support_CSQ then you'll need to define this inside the script and use simultaneous queueing. Here's an example:

Select Resource (HelpDesk_CSQ)
--Connected
----Goto End
--Queued
----Get Reporting Statistic supportCallersWaiting = Contacts Waiting in Support_CSQ
----If (supportCallersWaiting > 0)
------True
--------[normal queued loop goes here]
------False
--------Select Resource (Support_CSQ)
----------Connected
------------Goto End
----------Queued
------------[second queued loop here. be careful to keep your queued loops separate.]

In this scenario, it will put the caller into both CSQs if there are no callers waiting in Support_CSQ.