Transfer Users from a Skill Bot to a Live Agent
Transferring users to live agents can be as simple as adding an agent-integration channel and adding two components to a skill bot's dialog flow. However, you'll likely want to improve the chat experience by giving your users the option to speak with an agent when certain events happen.
- The user asks to speak to someone.
- The skill bot can't discern what the user wants to do.
- The user keeps answering the same question incorrectly.
- The user is frustrated.
Before You Begin
Before you begin working on your skill bot, you need:
- The Oracle Service Cloud interface ID. This is a numeric value. You can see the ID in the Agent Desktop console under Site Configuration when you hover your pointer over an interface name.
-
The field names and values that are used to route the chat session to the agents with the appropriate expertise. You can get these names and values from the chat rule. See Create a Chat Rule.
-
The user name and password for an agent who's associated with an agent profile that:
-
Has access to Chat in the Agent Browser UI (BUI) or the Agent Console in Oracle Service Cloud.
-
Has account authentication and session authentication enabled for the Public SOAP API.
-
Includes the queue that you configured for agent transfer.
This information lets you add the agent-integration channel, which enables Oracle Digital Assistant to communicate with Oracle Service Cloud Chat. You also need it to test the interaction between the skill bot and an agent.
-
Configure the Agent Integration Channel
Create the channel that connects the skill to the agent platform.
Before you begin, confirm with the Oracle Service Cloud administrator that the profile associated with the user name has access to the correct interface and that the profile's Public SOAP API account authentication is enabled. You also need to confirm that your Oracle Service Cloud Account Manager has enabled the Chat Custom Interface API and the Chat Third-Party Queue Integration API.
If you have access to Oracle Service Cloud, you can derive the Domain Name and Hostname
Prefix from the URL that you use to launch the Agent Browser User
Interface. For example, if this URL is sitename.exampledomain.com
, then
the Hostname Prefix is sitename
and the
Domain Name is exampledomain.com
.
- Click to open the side menu, select Development, and then select Channels.
- Click Agent Integrations, and then click + Agent Integration.
- Enter a name and an optional description for this channel. When you use the
System.AgentInitiation
andSystem.AgentConversation
components in your dialog flow to enable the transition to, and from, Oracle Service Cloud, you must use this name for theiragentChannel
properties. - Choose the agent system (Service Cloud) from the Integration Type menu.
- Define the Domain Name, Hostname Prefix, Username, and Password, which are provided by the Oracle Service Cloud administrator. The user name must be for a user who has access to the Agent Browser UI (BUI) in Oracle Service Cloud.
- Click Create.
- To enable the skill to interact with the agent framework, enable the channel by switching on the Interaction Enabled toggle.
Create a Skill Bot
If you aren't enhancing an existing skill bot to integrate with Oracle Service Cloud Chat, then you can create one from scratch or clone an existing skill bot.
The PizzaBot sample is a good choice for cloning because it's short and basic.
- Click , select Development, and then select Skills.
- In the skill bot catalog, enter
pizzabot
in the filter field. - On the PizzaBot card, click Options , and then select Clone.
- Enter a display name, name, and version, select Open cloned skill bot afterwards, and click Clone.
Define an Intent to Transfer to a Live Agent
An intent represents an action that the user wants to do, such as speak to a live agent. You add example utterances to an intent to enable your skill bot to recognize when a user wants to do that action.
When the user types something (an utterance) at the start of a conversation, the skill bot parses the utterance and then looks at the set of example utterances in each intent to identify what a user wants to do.
You can create intents and add utterances manually, or by importing the values from a CSV file.
Define Synonyms for Agent
When users want to talk to an agent, they might use words like live person, human, and representative. Rather than create a set of utterances for each possible term, you can use an entity to define synonyms for agent, and then associate the entity with your intent.
You can add an entity manually, or you can add it by importing the values from a CSV file.
Add Dialog Flow for Transferring to an Agent
After you define an agent transfer intent, you can add the dialog flow for handling the transfer. Then you can update your System.Intent
component to direct the conversation to the start of that dialog flow whenever the component resolves to your agent transfer intent.
Transfer a Chat Session to an Agent When the User is Stuck
If the user is having problems using the skill bot, you can give them the opportunity to speak to a live agent so that the user can complete the task successfully.
One way to discover user problems is to create an intent for utterances that indicate user frustration. You can also enhance your dialog flow to handle unresolved intents and unanswered questions by asking the users if they want to speak to someone.