Transfer conversations to agents by using Omnichannel for Customer Service

Completed

Situations might occur where an agent needs to hand off a conversation to a live agent. This situation often happens when a user has asked for information that the agent doesn't know, or after the agent has captured the necessary information that is required to ensure that the conversation can be routed correctly to a live agent. When an agent hands off a conversation to live agent, it shares the full history of the conversation (the context) and any variables with the agent. Microsoft Copilot Studio agents can be configured to hand off conversations to agents for organizations that use customer engagement applications to conduct a generic handoff, as described in configure generic handoff. This feature allows your customer engagement application to route incoming escalations to the appropriate live agent queue, and it also allows the live agents to review exactly what occurred in the prior conversation so that they can resume at that point. This process prevents agents from potentially asking for information that was previously captured by the agent.

Transfer conversations to agents

Two primary components that are involved when an agent transfers to an agent are:

  • Telling the agent when to transfer the conversation to an agent.

  • Telling the agent where to transfer the conversation.

Tell the agent when to transfer the conversation to an agent

The way that Microsoft Copilot Studio tells the agent that it's time to transfer a conversation to an agent is always the same. Microsoft Copilot Studio includes the Topic management conversation node, which includes options for switching between different topics, and how to potentially end a conversation. It provides multiple actions that can be initiated:

  • Go to another topic – Allows you to specify another topic that the user should be redirected to.

  • End current topic – The current topic is ended to ensure that it's considered completed.

  • End all topics – Any previously initiated topics in the conversation is closed.

  • Transfer conversation - Escalates the conversation to a live agent.

  • Go to step – Allows you to select any node within the current topic to redirect users to.

  • End conversation – Ends the conversation

Screenshot of transfer conversation selected from the menu.

Agent authors can initiate a transfer to an agent from within a specific topic. For example, if a customer indicates that their entire point-of-sale system is down, the agent can automatically call the Transfer conversation node and transfer it to an agent. Another way to accomplish this task is through the Escalate topic. All agents include a conversation topic called Escalate, which includes a message that is presented to the customer. You can modify the Escalate topic to include a Topic Management node that would transfer to an agent. The Escalate topic is automatically triggered when someone types content such as, "speak to agent." You can also trigger the Escalate topic from within another topic by selecting Go to another topic and then selecting it.

Configure where to hand off the conversation

To facilitate the transfer of a conversation to an agent, you need to configure the agent to send the conversation to a customer engagement hub such as Dynamics 365 Customer Service instance.

Your agent can be configured to send conversations to the following customer engagement hubs:

  • Dynamics 365 Customer Service

  • Genesys

  • LivePerson

  • Salesforce

  • ServiceNow

  • ZenDesk

  • Custom engagement hub

Only published agents can be used to ensure that the end-to-end capabilities work as expected. Make sure that you have published your agent prior to validating the integrated experience.

When you create the connection between Microsoft Copilot Studio and Dynamics 365 Customer Service, a Microsoft Entra ID application registration is used to call the agent. Creating the application registration is done on the Azure portal. You can register your apps by going to Microsoft Entra ID and creating a new registration under App registrations.

Three primary areas that can be defined when you create the application registration are:

  • Name - User-facing name of the application. This name can be changed later, if necessary.

  • Supported account types - This area defines who can access the application.

  • Redirect URI (optional) - This area contains the URL for where the app is located.

After you have defined the parameters, select the Register button.

For more information, see Use the portal to create an Microsoft Entra ID application and service principal that can access resources.

Configure transfer to agent

Each agent can only be configured to send conversations to one Dynamics 365 Customer Service instance. You can define the Dynamics 365 instance in the individual agent. If conversations from multiple agents are sent to your Dynamics 365 instance, each agent needs to be configured individually.

To configure the handoff, select Channels and go to Customer engagement hub. This screen allows you to define how the agent facilitates handoff to different applications. Select the Dynamics 365 Customer Service tile to begin the configuration process.

Screenshot of Omnichannel selected.

You need to select the Dynamics 365 Customer Service environment that you want to use with the agent. Make sure that you select an environment where your Dynamics 365 Customer Service instance is provisioned. The list shows all available environments, even if Dynamics 365 Customer Service isn't provisioned.

The primary component that you need to provide is the application ID for the app that you previously created for the Microsoft Entra ID registration. Dynamics 365 Customer Service models agents as application users in the application. Modeling agents as application users ensures that the agent can have conversations sent to it like a human agent would. It's important that the application ID is unique to your organization (your Microsoft Dataverse organization or environment). Each agent that interacts with the same Dynamics 365 Customer Service environment needs to use a different application ID. You might need to create multiple application registrations to support multiple agents.

In your Azure portal, go to Microsoft Entra ID and select App registrations. All registered applications are displayed. Select the application that you want to use with the agent. The application ID is on the Applications overview page. Copy the ID and paste it into the Microsoft Copilot Studio Application ID field.

Microsoft Copilot Studio uses a Microsoft Teams channel to communicate with Dynamics 365 Customer Service. As you go through the setup wizard, if a Teams channel hasn't been enabled, one is enabled automatically.

When the connection has been established, you can select the Go to Omnichannel link to continue configuring the agent connection in Omnichannel for Customer Service.

Note

When your agent is in the same environment as your deployed customer service it automatically detects the instance and makes the connection.

Remove Dynamics 365 Customer Service connection

You can select Disconnect agent to disable the application user that represents the agent in your omnichannel instance. This disconnects the agent from the specified omnichannel environment. To add your agent back, you need to connect it again.

For more information, see Integrate a Microsoft Copilot Studio agent and configure generic handoff.