10 Personalize Your Digital Assistant

Once you have created a digital assistant and added skills to it, you can customize some of the aspects of the digital assistant, such as the invocation name of the digital assistant’s skills and the language in the digital assistant’s help and exit intents.

Invocation Name

An important part of configuring a digital assistant is coming up with good invocation names for each skill. The invocation name is used in explicit invocation of the skill.

Because the routing model gives additional weight to skills invoked explicitly, a good invocation name helps ensure that users are successful when trying to access that skill (and, conversely, do not access that skill accidentally).

A skill's invocation name is also presented to the user in messages and dialogs to help disambiguate intents, show help for the skill, and signal exiting of the skill. So you should take care to make the invocation name sound natural and user-friendly in those contexts.

Modify a Skill's Invocation Name

The invocation name for a skill is initially set in the Invocation field when you are adding the skill to the digital assistant. That field is pre-populated with the skill's display name.

If you later want to update the invocation name for a skill in a digital assistant, do the following:

  1. In the left navigation for the digital assistant, click image of the Skills icon.
  2. Select the skill.
  3. Scroll down to the Interaction Model section of the page and modify the value of the Invocation field.

Invocation Name Guidelines

Invocation names must have the following characteristic:

  • Be unique for each skill within a digital assistant.

They should also have the following characteristics:

  • Have a clear relationship to their function.

  • Be easy to remember.

  • Be easy to pronounce.

  • Not consist of just one word, unless it’s a distinct brand name.

  • Not be phrases that occur frequently in everyday speech like “hello”, ”please”, “thanks”, and ”yes”.

  • Not include words and phrases that would be commonly used when invoking the skill, such as “go to”, “open”, and “tell me”.

Explicit Invocation Patterns

Digital assistants will try to detect explicit invocation within the user input patterns described in the table below. When deciding on a skill’s invocation name, try to imagine if that invocation name would naturally fit into one of these patterns.

Segment 1 Segment 2 Segment 3 Segment 4 Examples (here Pizza Skill is the invocation name)
Starting Phrase (such as “ask”, “tell”, “use”, and “go to”) Invocation Name Preposition, Conjunction, or Punctuation User Intent
  • Go to Pizza Skill to track my orders

Starting phrase Invocation name User Intent -
  • Ask Pizza Skill track my orders

Invocation name User Intent - -
  • Pizza Skill to check my orders

Invocation Name - - -
  • Pizza Skill

Starting Phrase Invocation Name - -
  • Use Pizza Skill

System Intents for Digital Assistants

As the digital assistant essentially functions as a master bot, it comes with a set of built-in system intents that are used to identify when a user has general requests for the digital assistant itself (and not the skills that the digital assistant contains).

The digital assistant's system intents are:

  • exit, which applies when the user signals the desire to exit the current conversation or context in the digital assistant.

  • help, which applies when the user asks for help or orientation. See Start, Welcome, and Help States for details on how the digital assistant routes help intents.

  • unresolvedIntent, which applies to user input that doesn't match well with the exit and help intents. It improves classification of the exit and help intents (so that particularly ambiguous utterances aren't attributed to those intents).

Add Utterances

The built-in intents come with some default example utterances. If you think those utterances don’t reflect the range of phrases that users might use for those intents, you can add more utterances.

  1. Click icon to open the side menu to open the side menu, select Development > Digital Assistants, and open your digital assistant.

  2. In the left navigation for the digital assistant, click This is an image of the Intent icon.

  3. Select the intent for which you want to add an utterance.

  4. In the Examples text field, type the utterance and press Enter.

Specify States for the help and unresolvedIntent System Intents

When a digital assistant matches user input with the digital assistant's help and unresolvedIntent intents, it provides default behavior:

  • For the help intent, it displays a welcome message and then cards for each skill. Each card contains a label based on the invocation name and options derived from example utterances that you gave for the skill's interaction model when you added the skill to the digital assistant.
  • For the unresolvedIntent intent, it offers a message indicating it didn't understand what the user was looking for and then displays the same cards that are displayed for the digital assistant's help intent.

If you'd like to customize the behavior of the digital assistant when the help and unresolvedIntent intents are matched, you can do so by configuring the digital assistant to respond to those intent matches with calls to specific states in a skill that you have added to your digital assistant.

To specify the state for the digital assistant's help intent:

  1. Click icon to open the side menu to open the side menu, select Development > Digital Assistants, and open your digital assistant.
  2. In the left navigation for the digital assistant, click the Settings icon and select the Configurations tab.
  3. Scroll down to the Conversation Parameters section of the page.
  4. For the Digital Assistant Custom Help Skill property, select the skill that contains the state that you want to use.
  5. For the Digital Assistant Custom Help State property, select the state that you want to use.

Note:

If your digital assistant contains only one skill, setting the above properties will have no effect. To determine the help state in this case, the digital assistant will use the Help State setting for the skill (which you can find by opening the skill, clicking itsthe Settings icon, and selecting the Digital Assistant tab). If the Help State setting isn't set, the digital assistant will provide default help behavior for the skill.

To specify the state for the digital assistant's unresolvedIntent intent:

  1. Click icon to open the side menu to open the side menu, select Development > Digital Assistants, and open your digital assistant.
  2. In the left navigation for the digital assistant, click the Settings icon and select the Configurations tab.
  3. Scroll down to the Conversation Parameters section of the page.
  4. For the Digital Assistant Custom UnresolvedIntent Skill property, select the skill that contains the state that you want to use.
  5. For the Digital Assistant Custom UnresolvedIntent State property, select the state that you want to use.

Note:

If your digital assistant contains only one skill, setting the above properties will have no effect. The digital assistant will defer to the skill for handling of the unresolved intent.

Customize Messages and Prompts

The digital assistant has a set of standard messages and prompts to handle situations such as:

  • Welcoming the user.

  • Offering help.

  • Providing a choice between multiple intents when it’s uncertain what intent the user is seeking.

  • Managing the transition when the user breaks the expected flow in a conversation.

    When this happens, the digital assistant helps to manage the transition to and from the original flow.

In addition, there are settings for things like the maximum number of options to display in the help and welcome screens.

To access these settings:

  1. Click icon to open the side menu to open the side menu, select Development > Digital Assistants, and open your digital assistant.

  2. In the left navigation for the digital assistant, click the Settings icon and select the Configurations tab.

  3. Scroll down to the Conversation Parameters section of the page.

System Variables for Digital Assistants

You'll notice that there are several variables that appear in the default values for the conversation parameters. Here is the list of those system variables and what they represent:

  • system.routingFromSkill: the invocation name of the current skill (that the digital assistant is prepared to route away from).
  • system.routingToSkill: the invocation name of the skill that the digital assistant is prepared to route to.
  • system.routingFromIntent: the conversation name of the current intent (that the digital assistant is prepared to route away from).
  • system.routingToIntent: the conversation name of the intent that the digital assistant is prepared to route away to.
  • system.channelType: the type of the current channel.

Limit the Frequency of Prompts

In the course of a conversation, a digital assistant may prompt a user multiple times, asking them to click a button or input text for situations such as:

  • confirming the desire to interrupt the current flow to switch to a different flow
  • confirming the resuming of the previous flow
  • exiting the flow

For example, this screenshot shows a prompt to confirm that the user really wants to switch to a different skill:



But you may prefer the digital assistant to instead provide a message that details the routing change and then immediately start the new flow, like this screenshot shows:



Prompts are important for disambiguation. But you may prefer to use messages in cases where the confidence score for an intent reaches a certain threshold.

Use the following configuration properties to determine conditions for displaying a message instead of a prompt:

  • Interrupt Prompt Confidence Threshold: Determines the confidence threshold that must be met for the digital assistant to respond with a message instead of a prompt when the user enters something that is not relevant to the current flow. By default, this property is set to 1.01 (101%), which effectively means that it is set to always display a prompt.

    When the confidence score reaches or exceeds the value of the Interrupt Prompt Confidence Threshold, a message based on the value of the Interrupt Message property is displayed.

    When the confidence score does not reach the value of the Interrupt Prompt Confidence Threshold, a prompt based on the value of the Interrupt Prompt property is displayed.

  • Resume Response Type: Determines how the user should be notified when an interrupted flow is resumed. The valid values are prompt (which is the default) and message.
  • Exit Prompt Confidence Threshold: Determines the confidence threshold that must be met for the digital assistant to respond to an exit request with only the exit confirmation message. By default, it is set to 1.01 (101%), which effectively means that it is set to always display a prompt.

Tip:

If you do not want any message displayed at all when the Interrupt Prompt Confidence Threshold is reached, you can simply delete the contents of the Interrupt Message property. Similarly, if you do not want any prompt or message displayed upon resuming the flow, set the Resume Response Type property to message and leave the contents of the Resume Message property blank.

To access these settings:

  1. Click icon to open the side menu to open the side menu, select Development > Digital Assistants, and open your digital assistant.

  2. In the left navigation for the digital assistant, click icon for Settings and select the Configurations tab.

  3. Scroll down to the Conversation Parameters section of the page.

Image-Initiated Flows

For each digital assistant, it is possible to designate one skill that is able to start a flow when the user uploads an image.

The conditions are:

  • The user is not currently in a flow.

  • The user input that is intended to trigger the flow must contain only images.

Here’s how to set it up:

  1. Click icon to open the side menu to open the side menu, select Development > Digital Assistants, and open your digital assistant.

  2. In the left navigation for the digital assistant, click icon for Settings and select the Configuration tab.

  3. For the Skill Name For Processing Message With Image Only parameter, enter name of the skill that will use this flow.

  4. For the Skill Start State For Processing Message With Image Only parameter, enter name of the state to route to once the image-initated flow begins.

Set Values for Custom Parameters

If any of the skills that have been added to your digital assistant have defined custom parameters and they are scoped to be shared by the whole digital assistant (in other words, they are prefixed with da.), you can set the value for those parameters in the digital assistant.

To set the value of a custom parameter:

  1. Click icon to open the side menu to open the side menu, select Development > Digital Assistants, and select your digital assistant.
  2. In the digital assistant's left navigation, click Skills icon.
  3. Select one of the skills that uses the parameter.
  4. Scroll down to the Parameters section of the page and enter a value for the parameter.

    The updated parameter value will be applied for all skills that use the parameter.

Auto-Numbering for Digital Assistants

You can set up a digital assistant to use auto-numbering, so that it prefixes buttons and list options with numbers. This is particularly useful for digital assistants that run on text-only channels. When users can’t use tap gestures, they can still trigger the button’s postback actions by entering a number.

To set up auto-numbering for a digital assistant:

  1. Click icon to open the side menu to open the side menu, select Development > Digital Assistants, and open your digital assistant.

  2. In the left navigation for the digital assistant, click icon for Settings and select the Configurations tab.

  3. Scroll down to the Conversation Parameters section of the page and fill in a value for the Enable Auto Numbering on Postback Actions property.

    This property accepts FreeMarker expressions, so you can turn the property on conditionally. For example, the following value turns auto-numbering on for Twilio channels:

    ${(system.message.channelConversation.channelType=='twilio')?then('true','false')}

Disable Selection of Old Actions in a Digital Assistant

Digital assistants have an Enable Clicking History Actions switch that determines whether the users are allowed to select actions that the digital assistant offers to them earlier in the conversation. For example, the user conversation might be offered a menu of Human Resources actions in one turn of the conversation, then enter an unrelated question, and then later try to select one of the Human Resources actions that were presented earlier. By default, this switch is turned on.

Note:

When this switch is turned on, it overrides any handling that may have been set up in any of your skills for user selection of out-of-order actions. If any of your skills are set up to provide their own handling of out-of-order actions, you should set this switch to the OFF position.

To prevent users from being able to click old actions in a conversation:

  1. Click icon to open the side menu to open the side menu, select Development > Digital Assistants, and open your digital assistant.

  2. In the left navigation for the digital assistant, click icon for Settings and select the Configurations tab.

  3. Scroll down to the Conversation Parameters section of the page and slide the Enable Clicking History Actions switch to the OFF position.