...
Any request to be fulfilled by the Virtual Assistant/Bot must be defined in a logical entity called as, Skill, where you define the intention of the user request, required information to process the user request , and fulfillment details that resolves the user’s request. A conversation is started and completed when the user request/intent understood and fulfilled by the Virtual Agent. These components together provide the back and forth conversation between the bot and the user and can enhance the end user's service management experience. This article details how to build skills and take advantage of the many configurable options.
...
- On the Skill Builder page, click Create Skill as shown below.
- The Create Skill a page appears as shown below.
- Skill Details
- Specify the Skill Name. Keep this name user-friendly as it may be in the Welcome Skill or in a validation message to a user while chatting with the bot.
- The system automatically suggests a skill Identifier, which can be edited.
- Enter the Image URL that you wish to get displayed. We can even skip this field as it is not mandatory.
- Specify the skill description. Use user-friendly terminology as the description is used as the sub-title when a skill is in the Welcome Skill.
- Specify the Category to which this skill belongs. The category helps Administrators and developers organize related skills for filtering and finding skills within the Bot Builder interface. This has no impact on permissions or access. You can create your own category by typing the Category name, else, you can even select an existing category from the drop-down list.
- Optionally select Mark as Sub-Skill. Checking this checkbox means that the Skill cannot be triggered directly by a user phrase instead, it can only be triggered by other Skill.
- The status is automatically set to active and can be set to inactive if you need to make the skill inaccessible i.e. if the skill is not required or is pending changes. .
- KPI Metrics
KPI Metrics indicate how this skill adds value to the organization. The parameters set here are used by Luma to calculate KPI metrics presented in the KPI Dashboard. Set KPI Metrics as shown below:
- Actionable Support Requests: Specify the Number of minutes saved on Actionable Support Requests by executing the Skill Skill. This is selected by default for all new Skills and existing skills for a tenant. The default value is set to 5 minutes.
- Automated Resolutions: Specify the Number of minutes saved on Automated Resolutions by executing the Skill.
- Deflected Support Requests: Deflected support request means by using this Skill, the user request is directly fulfilled avoiding the support request. If the Skill deflects support request, this parameter needs to be set up. Specify the Number of minutes saved saved by executing the Skill Skill and deflecting support request.
- Skill Details
- Click Next.
...
For better understanding please refer Create Attributes
The following is an example of a Salesforce Account Request Skill with several instances of attribute tagging. Based on the attributes tagged in the phrase the NLP engine can skip one or more of the prompts in the skill.
...
The Conversation Flow section allows you to build the conversation between the user and the bot. To create a conversation flow, do the following:
In the Conversation Flow section, select the required Conversation Item from the drop-down list. Conversation Item drop-down list includes Attribute, Integration Rule Set, and Information Message.
...
Info |
---|
Every Attribute added to the conversation flow is marked as Mandatory by default. In such a case, a default value is required. If the attribute prompt type is Static, you can unselect the Mandatory field. While executing a Skill, End-user can skip Static Prompt attributes using Skip command. Refer System Commands on Bot Settings more information on Skip Command in Luma. |
...
- Set Attribute: 'Set Attribute' option allows the skills developer/administrators to assign value in a JSON or Xpath expression to a Global, Local, or Custom User Attribute.
To set Inbound mapping, follow the below steps:- Select Set Attribute in Conversation Item.
- In Add Attribute, select Set Attribute.
- To Set an attribute, add the below details.
- Expression Type and Expression: These represent the type (Value or JSON) and the location path of the value to be assigned to attribute.
- Use Expression Type → Value when a direct value is to be assigned to the attribute e.g. @{response.body}, @{response.code}.
- Use Expression Type → JSONPath when a value from the received JSON response is to be assigned to the attribute e.g. Expression points to a JSON path e.g. $.data.TicketIdentifier, $.data.items[*].Priority.
- Use Expression Type → Indirect JSONPath when a value from a JSON type attribute is to be assigned to the attribute e.g. Expression points to an attribute that holds a JSON path e.g. @{local.items}→$.[*].TicketIdentifier
- Use Expression Type → Xpath when a value of XPath expression to be assigned to the attribute i.e. Expression points to a Path e.g. //AddResponse/Description
- Scope: Represents the scope of the attribute to be used to hold the values
- Use Global to assign value to a Global attribute to be used in the skill. Though the attributes are available for other skills to use, the value is retained during the current skill execution.
- Use Local to create and set the value to a local attribute. These attributes are only valid and available during skill execution. The local variable value is retained between the prompts and is used to pass data between multiple integrations, user messages, or rules. If used after a bot response, value in the Local attribute is lost.
- Use User Custom to assign value to a User Custom Attribute. The values of the User custom Attribute is retained across skills unless overwritten.
- Attribute: This is the name of the attribute
- Data Type: Represents the data type of the attribute
- Expression Type and Expression: These represent the type (Value or JSON) and the location path of the value to be assigned to attribute.
- Transform: Transform functions are used to transform the values and assign the transformed/formatted/customized value to a Global, Local, or Custom User Attribute. Luma Virtual Agent provides a range of Transformation functions to allow skill developers to convert the data as required such as Split, Trim, Substring, Replace, Custom Date-Time, and more.
To use the Transformation function use Transform and add details. For more information on how to use Transform functions, refer Transformation functions.
Information Message
An Information Message is used to communicate an update to the user. Typically Information Message is used to inform the updates during the conversation and post the integration call, you might have to inform the user result of the integration call. The message can be in the format of Text, Quick Replies, Card, or Image.
...
Info | ||
---|---|---|
| ||
|
...
You can end or exit a conversation without fulfillment or completing the skill. If you do not want to proceed with the existing skill and want to exit it, use the Abort/Exit Skill defined for your tenant to come out of the skill, and execute another skill. Refer section Abort/Exit skill for more details