- Contents
Interaction Web Tools Technical Reference
Skill-based Routing
You can use routing contexts to send interactions to workgroups or agents with particular skills. For example, you could route chats to agents who speak French. You can either set the routing context for all chats and callbacks, or write code that allows website visitors to choose skills that determine the routing context. The ACD server then routes interactions to agents with the appropriate skills.
Overview of using skill-based routing
To use skill-based routing
-
Create and assign agent or workgroup skills.
-
Map internal skill names to external skill names in an Interaction Processor table.
-
Set the routing context for Interaction Web Tools with the chatRoutingContext and callBackRoutingContext parameters in index.html.
Note:
You can optionally make the skill selection available to visitors on your website. This step requires you to write code that passes the visitor’s choice to Interaction Web Tools. If you do not make a selection available, CIC routes all interactions according to the context you set in the parameters. -
(Optional) If not using the built-in Language and Product categories, customize the appropriate handlers to route the interaction.
Create and assign skills
You can create and assign skills to agents or workgroups in the Interaction Administrator Skills container under People. You can also assign values for Proficiency and Desire to use.
Alternatively, you can assign skills to agents or workgroups in the Skills view of the ACD tab of the User Configuration dialog box or the Workgroup Configuration dialog box.
Map internal skill names to external names
Website visitors do not see internal skill names. Map external skills to internal skills in the Interaction Processor Tables container. This mapping prevents the exposure of internal skill names.
The first column is the external name, and the second column is the internal name. The internal name must match the name of a skill you previously created. Use the external name when setting routing contexts in Interaction Web Tools.
Default skill categories
There are two default skill mapping tables: language and product. You can add skill mapping values to the default ININ_Product and ININ_Language tables in Interaction Administrator. See the Tables container under Interaction Processor. You do not need to modify any handlers to parse routing context for the default skill categories of language and product.
For example, if a website visitor wants to talk to an agent who has CIC knowledge and who speaks English, the routing context sent in the request is:
"routingContexts" :
[
{ "context" : "Customer Interaction Center", "category" : "Product"},
{ "context" : "English", "category" : "Language" }
]
In this example, the internal name for the Customer Interaction Center
skill is CIC
and for English
is en.
The ININ_Product
table contains an entry mapping Customer Interaction Center
to
CIC
and the ININ_Language table has an entry mapping
English
to en.
You can create other tables to define custom sets of skills. Doing so requires handler customization to correctly route interactions.
Set routing contexts in index.html
To set routing contexts, use the chatRoutingContext and
callBackRoutingContext parameters in index.html.
The following code fragment gives an example:
function setInteractionWebToolsParams(config, ui, WebServices) {
//Must initialize with one category/context pair.
var routingExample = new WebServices.RoutingContexts("Product","Customer Interaction Center");
//can add additional category/context pairs using add(). Uncomment for routing context.
routingExample.add("Language","English");
return {
//additional parameters here
"callbackRoutingContext": routingExample,
"chatRoutingContext": routingExample
};
}
Routing contexts set by callbackRoutingContext and chatRoutingContext become attributes of the interaction.
In this example, all chats and callbacks are routed to workgroups or
agents with the Customer Interaction Center
and English
skills. The Interaction Processor ININ_Language and ININ_Product
tables for this example map Customer Interaction Center
and English
to internal skill names. Routing will not work if no skill mapping exists.
Example skill mapping in the built-in ININ_Product table.
Because the example uses the built-in language and product categories, no handler customization is required.
You can further control routing by adding a form or other input that allows users to choose skills.
This routing context is available to handlers in XML:
<?xml version="1.0" encoding="UTF-8" ?/> <RoutingContexts> <RoutingContext> <Context>Customer Interaction Center</Context> <Category>Product</Category> </RoutingContext> <RoutingContext> <Context>English</Context> <Category>Language</Category> </RoutingContext> </routingContexts>
In this example, Product and Language are the categories, and CIC and English are the contexts.
Modify handler to parse the routing context
The SystemParseRoutingContexts.ihd handler parses the routing
context where the CustomParseRoutingContexts custom hook
is exposed for customization.
If you add your own Interaction Processor category table and skill mapping
in that table, the Create Chat API and Create Callback API can supply
context for custom interaction values. To look up context in custom category
IP tables, use the CustomACDGetSkills customization point
in the ACDGetSkills handler. For more information about modifying
handlers, see the Interaction Designer Help at https://help.genesys.com/cic/mergedProjects/wh_id/desktop/hid_introduction.htm.

