Configure the Intent OCP miniApps®
The welcome prompts are the initial prompts responsible for establishing the interaction with the system, thus providing a more natural feel.
OCP miniApps® allow you to fully configure three custom initial prompts depending on the error level of the initial system prompt:
Prompt 1: Initial System Prompt that handles the initial prompt to be played to the caller
Prompt 2: Rephrase after 1st error (No Response, No Interpretation), it handles cases where you want to re-prompt to the caller, for example, if there was a
No Responseor a
Prompt 3: Rephrase after 2nd error (No Response, No Interpretation), it handles cases where you want to re-prompt for a second time to the caller, for example, if there was a
No Responseor a
Sometimes, when prompted for input, a caller may first greet the application instead of giving the input directly. For these cases, it is possible to configure a Greeting Reaction, which will trigger in conjunction with the initial prompt resulting in a more human-like experience.
To set up a greeting reaction, proceed as follows:
Navigate to the Initial Prompt section.
Click Greeting Reaction. The pop-up window opens.
Insert the greeting text into the input field.
Click OK to save changes.
If you want to activate barge-in for each step, use the toggle on the right side of each initial prompt:
Currently the barge-in option works for the whole action, not for each individual prompt. This will be supported in a later version of the OCP miniApps®.
You can also adjust the ASR timeout range slider to specify how long the system waits to trigger a
Custom NLU tag
Apart from the selection of an NLU model in the Natural Language Understanding section,It is possible to add a custom tag value in the corresponding text box, used to define a more specific context. Tag Hour for example. Under that tag context, a number input, for example, four, will be marked and understood as the time of the day from the system (four o’clock). So in general tags help differentiate and define a more specific meaning from user inputs.
Start Over Prompts
Can only be triggered with the help of a Flow application, so should not be used in standalone miniApps.
This functionality allows you to specify Start Over prompts that will be used after the user requests to start over. For instance, the following conversation may take place:
System: How may I help you?
User: I want to get information about my account.
If for some reason the system takes the wrong path here, the user might be inclined to interrupt with something like “no no, can we please restart”. In that case, in your Flow you can specify that upon hearing the word “restart”, the system will enter this miniApp with the specific Start Over prompt, like “Let’s take it from the top. How can I help you?” as in the screenshot below.
If you decide to use this functionality, you can additionally inform the user about which words will trigger the Start Over functionality by making the following announcement:
“Welcome to our service. At any point you can say 'start from the beginning' to take it from the top.”
After you configure the prompts, click Save Changes.
New Task Prompts
In case the caller responds positively to a question such as "Is there anything else I can help you with?", New Task Prompts will continue the conversation based on the defined prompts.
System: Is there anything else I can help you with?
System: How may I help you?
To enable the DTMF response, use the DTMF Response Toggle button. When enabled, you can choose which button will be used as a DTMF response to transfer a call to an agent:
You can also select the option Any Key, which will allow the caller to use any key for DTMF. If this option is turned on, all the other options for picking a key will be hidden.
If DTMF Response is enabled, you can also edit the DTMF Response prompts.
Reask Prompts tab
Here you can set and edit re-ask prompts.
Manage Intents tab
In the Manage Intents tab, you can perform various actions on intents, like browsing intents, creating intent groups, and setting disambiguation intents.
In this tab you can browse through the intents associated with the selected Intent miniApps, see the different sample utterances and understand what this Intent covers so you can later use it:
To create an Intent Group
To create a Disambiguation for this Intent
To create a specific announcement for this Intent
To export the announcements in TSV file.
In this tab you can group intents together and:
Use Intent Groups into Conditions for Announcements
Get the Intent Group Name back as a result on the CCaaS side (this is not applicable for the standalone version)
Some intents may be too general for your domain. To disambiguate them further, in this tab you can set custom prompts that re-ask the intent in a different way, depending on what information is known up to that point (such as any data we have captured, including the intent or other NLU entities). This will make the dialog more conversational and motivate the caller to provide more information to trigger a more precise intent.
For example, you can set the following conditions:
As seen in the screenshot below, the conditional values that can be set include an Intent, various entities (from CardType to UserSegment), ANI, DNIS and SessionChannel information, and external values passed from other miniApps.
If none of the listed values matches the requirement, click the edit button to add a Custom tag.
In addition, there are several selections for the logic operator such as Equals to, Not equals, Defined, Not defined.
Once you have defined the suitable conditions, you can set the disambiguation prompt to be the following:
This means that when the miniApp recognizes that a caller is asking for balance without specifying whether it’s for a personal or business account, it will ask a clarifying question and accept a free-form answer.
Instead of the Open Disambiguation option, you can also use the Yes/No Disambiguation. For example, if a caller’s intent is recognized to be Appointments (conditional operator equals to), you can set the following prompt and disambiguation:
If the caller wants to book a new appointment, the intent becomes Appointments-Book; if not, then we can either assume they want to reschedule an existing appointment OR we can reask them and inquire what they want to do exactly, or ask them an open-ended "How can I help you?" in hopes of capturing a more precise intent, as in the screenshot below.
Double Intents and Intent Confirmations
This tab is applicable to use if you have an unconfirmed intent that needs to be confirmed.
For instance, the following dialog might take place:
Caller: "I want to know my balance and make a payment" (Intent miniApp)
System: "Your balance is $200" (Announcement miniApp)
Since the Intent miniApp is able to understand double intents, after the first intent is executed ("Your balance is $200"), the system will activate the second intent, but it will enable the user to confirm the intent before proceeding. This is done by setting its status as Optioned. If one invokes an Intent miniApp by having an active intent with status Optioned, the Intent miniApp will look if there is an intent confirmation that matches.
The Optioned status is set by default to the second intent, whenever there is one.
If a matching intent exists, the system will just confirm the intent by using the user-specific prompt such as "Do you wish to proceed with the payment?".
System: "Do you wish to proceed with the payment?" (Intent miniApp with Optioned Intent)
Caller: "Yes" (Intent miniApp with Defined Intent)
System: "Please tell me how much do you want to pay?"
In that sense, the Intent miniApp is not used to understand a new intent, but to confirm the existing one. If the caller confirms the intent, the Intent miniApp will change the status of the intent to Defined. Now, the system is ready to execute the Intent. "Please tell me how much do you want to pay?"
If the user disconfirms the intent, the system removes it so the Intent miniApp will ask for a new intent using the questions specified in the Reask Prompts tab: "So, is there anything else I can help you with?"
Natural Language Understanding
In this tab you can use the OCP ML-NLU Service to create a custom NLU model/application from your own set of utterances-intents, or to add intents in an existing model. To do so, select the Train/View NLU models button.
In the Announcements tab you can set as many announcements as you want and link them to one or more intents from the Conditions tab. You can also choose additional entities in your conditions if you want to make the announcement more specific.
Announcement order matters. If two announcement conditions match, the top one will be selected.
Make sure you put 'failover' announcements using the 'Any(*)' operator to the bottom.
For intent conditions, the operator is by default Equals to and cannot be changed.
Add a second condition
Adding a second condition allows entering an entity from the list of entities or even adding a custom entity.
To add a second condition:
Click the +Add Condition button.
Select an entity from the list, or create a custom entity.
Enter the JSON path accordingly if required.
Select an operator from the dropdown list.
Enter the condition values.
The second condition can have a custom entity value. Click the edit button to add a custom value.
To add a custom entity, click on the edit button
It is possible to disable an announcement by using the Intent enable/disable the Toggle button.
Once disabled, the announcement will be greyed out and it won’t be used on runtime.
In the Dialog Evolution tab, you can check how the dialog unfolds and decide the next step (Reask Intent, End Call or Transfer Call). Keep in mind that the Manage re-ask prompts button is just a shortcut to the main Reask tab.
It is not possible to delete a re-ask prompt if it is being used in an announcement. Make sure that no announcement is using the re-ask prompt you want to delete.
To browse the set intents and sample utterances, select the Browse Intents button.
In the Browse Intents pop-up window, you can view the set intents and the respective sample utterances.
Commas between values act as an 'OR' operator and new lines act as an 'AND' operator.
To export the intents and sample utterances, select the Export examples to TSV button.
In the Nice Reactions window you can optionally set nice reactions. Whenever the application identifies an intent that is not ambiguous, then it throws a nice reaction before the announcement randomly (according to weight) to make the dialog sound more conversational.
In the Goodbye Message window, you can optionally set goodbye messages.
To export the announcements in a .tsv file, select the Export Announcements button.
To import announcements from a .tsv file, select the Import Announcements button.
Then, browse for the .tsv file and select the Import Announcements button.
Agent Handling tab
To see the details on how to configure the Agent Handling tab, check out this article.
To see the details on how to configure the Properties tab, check out this article.
To see details about the Chat tab, check out this article.
To see details about the DTMF tab, check out this article.
User Functions Tab
To see details about the User Functions tab, check out this article.
Manage Languages tab
To see the details on how to configure the Manage Languages tab, check out this article.