Microsoft Azure

Content on this page is for a product or feature in controlled release (CR). If you are not part of the CR group and would like more information, contact your CXone Account Representative.

Microsoft Azure Bot Service is a third-party platform that provides virtual agents. Virtual agents interpret what your contacts say and respond appropriately. They do this using technologies such as:

Virtual agents are flexible and can provide a range of functions to suit the needs of your organization. For example, you can design your virtual agent to handle a few simple tasks or to serve as a complex interactive agent.

CXone supports using Microsoft Azure Bot Service with voice channels only.

Microsoft is retiring LUIS on October 1, 2025. As of April 1, 2023, no new LUIS resources can be created. Microsoft recommends migrating your LUIS resources A square with an arrow pointing to the outside. to conversational language understanding (CLU).

Conversation Flow for Voice Virtual Agents

To start an interaction with a voice virtual agent, contactsClosed The person interacting with an agent, IVR, or bot in your contact center. call a phone number and reach your organization. The contact may be connected directly to the virtual agent, or they might need to choose an option in an IVRClosed Automated phone menu that allows callers to interact through voice commands, key inputs, or both, to obtain information, route an inbound voice call, or both. menu. Once the conversation with the virtual agent begins, the contact's utterancesClosed What a contact says or types. are transcribedClosed Also called STT, this process converts spoken language to text. into text so the virtual agent can analyze them. The virtual agent's responses are converted to synthesized speech using a text-to-speechClosed Allows users to enter recorded prompts as text and use a computer-generated voice to speak the content. service before being sent to the contact. Transcription and speech synthesis can happen in CXone or, in some cases, in the provider's platform.

After the conversation has started, the virtual agent analyzes the contact's utterances to understand the purpose or meaning behind what a person says. This is known as the contact's intent. When the intent is identified, the virtual agent sends an appropriate response to the contact.

Requests and responses are sent via Virtual Agent Hub and the script with each turn. This option allows for customization of the virtual agent's behavior from turn to turn. For voice virtual agents, this is the utterance-based method of connection. All text virtual agent providers use this method.

At the end of the conversation, the virtual agent sends a signal to the Studio script. It can signal that the conversation is complete, or that the contact needs to speak with a live agent. If the conversation is complete, the interaction is ended. If a live agent is needed, the script makes the request. The contact is transferred to an agent when one is available.

Once the conversation is complete, post-interaction tasks can be performed, such as recording information in a CRMClosed Third-party systems that manage such things as contacts, sales information, support details, and case histories..

Prerequisites

To use Microsoft Azure virtual agentsClosed A software application that handles customer interactions in place of a live human agent. with CXone, you need:

Components of an Integration

The integration of Microsoft Azure involves the following components: 

Custom Scripting Guidelines

Before integrating a virtual agentClosed The meaning or purpose behind what a contact says/types; what the contact wants to communicate or accomplish, you need to know: 

  • Which script you want to add a virtual agent to.
  • The virtual agent Studio action you need to use.

  • Where the Studio actions must be placed in your script flow.
  • The configuration requirements specific to the virtual agent you're using.
  • How to complete the script after adding the virtual agent action. You may need to: 
    • Add initialization snippets as needed to the script using Snippet actions. This is required if you want to customize your virtual agent's behavior.
    • Re-configure the action connectors to ensure proper contact flow and correct any potential errors.
    • Use the OnReturnControlToScript branch to handle hanging up or ending the interaction. If you use the Default branch to handle hanging up or ending an interaction, your script may not work as intended.
    • Complete any additional scripting and test the script.

Ensure that all parameters in the virtual agent actions you add to your script are configured to pass the correct data. The online help pages for the actions cover how to configure each parameter.

Additionally, ensure that you completely configure your virtual agent on the provider side. Verify that it's configured with all possible default messages. This includes error messages or messages indicating an intent has been fulfilled.

If you need assistance with scripting in Studio, contact your CXone Account Representative, see the Technical Reference Guide section in the online help, or visit the NICE CXone Community A square with an arrow pointing from the center toward the upper right corner. site.

Supported Studio Action

Voicebot Exchange Action

The Voicebot Exchange action is for complex virtual agents, or for when you need to customize the virtual agent's behavior from turn to turn. It monitors the conversation between the contact and the virtual agent turn by turn. It sends each utteranceClosed What a contact says or types. to the virtual agent. The virtual agent analyzes the utterance for intentClosed The meaning or purpose behind what a contact says/types; what the contact wants to communicate or accomplish and context and determines the response to give. The action passes the virtual agent's response to the contact. When the conversation is complete, the action continues the script.

This is the preferred action for use with voice virtual agents. If you want to configure barge in or no input, additional scripting is required.