How Machine Learning based routing works
Machine Learning based Skill Routing (ML Routing) is a UCC A Unified Contact Center, or UCC, is a queue of interactions (voice, email, IM, etc.) that are handled by Agents. Each UCC has its own settings, IVR menus and Agents. Agents can belong to one or several UCCs and can have multiple skills (competencies). A UCC can be visualized as a contact center “micro service”. Customers can utilize one UCC (e.g. a global helpdesk), a few UCC’s (e.g. for each department or regional office) or hundreds of UCC’s (e.g. for each bed at a hospital). They are interconnected and can all be managed from one central location. feature which can ask an Azure ML service for a skill for a specific phrase.
Example Use Case
Below an example on how Machine Learning based routing can work:
Webchat: What's your name?
Customer: Alice
Webchat: Hi Alice, please ask me a question and I will connect you to an appropriate agent.
Customer: I want to renew my Attendant Console license.
Webchat: Thank you, please hold while I try to reach an agent for your question.
// HTTP REST request to Azure ML service: Execute("I want to renew my Attendant Console license.")
// HTTP REST response from Azure ML service: { "Subject": "License", "SubjectProbability": 0.88456247 }
// This means that the ML service is for 88% sure that the question is about 'License'
// UCC will place the chat in the License IDR Interactive Dialogue Response (IDR) is an application to take orders via keypad or button through a computer. By choosing menu options the contact receives information, without the intervention of a human operator, or will be forwarded to the appropriate Agent. queue
// Agent accepts chat
Agent: Hi Alice, if you have your account number and Company Name I will renew your license.
Alice: 12345 Contoso Ltd
Agent: I see your current license is valid for 3 days from now. Do you want to renew your license for another year?
Alice: Yes
Agent: Okay, you will receive the license within 24 hours on your e-mail account.
Agent: Is there something else I can help you with?
Alice: No that would be all, thank you!
Requirements
- A default configured UCC
- License is Enterprise Plus or higher
- Azure Machine Learning Service
Configuration
To configure this functionality, the following SharePoint site parameters must be set:
Name |
Default value |
Description |
---|---|---|
MLBasedSkillRoutingEnabled |
False |
Enables or disables the functionality |
MLBasedSkillRoutingBaseUrl |
NULL |
The Azure ML service URL (can be found in the Azure ML portal) |
MLBasedSkillRoutingApiKey |
NULL |
The Azure ML API Key (can be found in the Azure ML portal) |
MLBasedSkillRoutingThreshold |
0.0 |
ML based skill routing is only used when the skill probability is above this value. |
MLBasedSkillRoutingFeedbackInterval |
180 |
The interval in minutes for sending feedback to Azure ML engine |
MLBasedSkillRoutingMessageAskQuestion |
Please, ask your question and we will connect you to an agent. |
This message is displayed after the User entered his/her name in the webchat. |
To enable ML based routing for a chat endpoint simply change the Endpoint's modality to ChatML. Set the skill to a default fallback skill which is used when the MLBasedSkillRoutingEnabled is False OR MLBasedSkillRoutingThreshold is higher than the result's probability OR there was an error (connection errors, Azure errors, Unknown skill returned by Azure etc.).
Presence
The chat endpoint presence behavior is as follows:
Presence |
Conditions |
---|---|
Offline |
UCC is turned off |
Away |
UCC is outside business hours [OR]UCC is in holiday |
Busy |
Conditions of Offline, Away and Available are not met |
Available |
Chat endpoint modality is ChatML [AND]Skill is set on endpoint [AND]Conditions of Offline and Away are not met |
Maintaining the ML Service
To use the service, the customer needs to import the ML Skillbased routing template into Azure. The template works out of the box, however the customer is free to make customizations as long as the service responds with a Subject/SubjectProbability pair. The customer is responsible for maintaining the data in the Azure ML service.