On Premises

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.

Note: This feature is only available to Enterprise Plus License users.

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!


  • A default configured UCC
  • License is Enterprise Plus or higher
  • Azure Machine Learning Service


To configure this functionality, the following SharePoint site parameters must be set:


Default value




​Enables or disables the functionality



​The Azure ML service URL (can be found in the Azure ML portal)



​The Azure ML API Key (can be found in the Azure ML portal)



​ML based skill routing is only used when the skill probability is above this value.



​​The interval in minutes for sending feedback to Azure ML engine


​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.).


​​​The chat endpoint presence behavior is as follows:




​UCC is turned off


UCC is outside business hours [OR]UCC is in holiday


​Conditions of Offline, Away and Available are not met


​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.