Use Variables in Skills
The Luma VA Platform provides various context variables that can be used for representing in skill conversations, configuration settings, and across the Bot Builder application.
Variables can be used in the following scenarios:
- Execute web services
- Override web services in Skill fulfillment
- Inside Information Message for the Bot Replies to the user.
Following is a list of the parameters and the scenarios where they are used.
Types of Variables | Description | Examples | Out-of-the-box (OOTB) Variables |
---|---|---|---|
Global Attribute | Global Attributes store data extracted from user input, third party integration operations, responses, and more. Global Attributes are used as placeholders in user message templates, rules, integrations, action workflows, and more. | @{global.<attributeIdentifier>} For example, @{global.itsm_ticketDescription} is used to store the ITSM ticket description, which is extracted from the user's input. |
|
Local Attribute | Local Attributes are used to store data during skill execution temporarily. The value stored in a local variable is retained for the skill execution. Unlike a Global Attribute that is can be used in multiple skills and events, a Local Attribute is not available outside of the skill or operation that it's defined in. | @{local.<localAttributeName>} For example, @{local.ticketId} is used to store the ticket ID. | @{local.ticketId} |
Custom User Attribute | Custom User Attributes store User Profile Attributes defined by a system administrator. They typically store information like Department, Location, VIP Status, and more that skills can use for rules and branching. Custom User Attributes are used as placeholders in the user message templates, rules and more. | @{user.<userProfileAttributeName>} For example, @{user.firstName} is used to store the user's first name in the current channel. |
External integration parameters:
|
Channel Attribute | A Channel Attribute is used to store the details of the channel used to interact with the bot. | @{channel.<channelAttribute>} For example, @{channel.channelType} is used to store the current channel type, for example, WeChat. |
|
Bot Attribute | Bot Attributes store the current bot specific attributes. | @{bot.<botAttribute>} For example, @{bot.name} is used to store the current bot name. |
|
Application or Connected App Instance Configuration Attributes | Connected App Instance Configuration Attributes store the parameters configured in the Connected App Instance. They are used to add parameter values in the user message templates, rules, Integrations, action workflows and so on. | @{app.<parameterName>} For example, @{app.headers.user_auth_token} is used to store the user's authentication token during a webservice integration. |
|
Connected App Operation HTTP Request | This attribute contains the values of HTTP requests sent to other systems. | @{request.<parametername>} For example, @{request.timeout} is used for the request timeout in an API call during a bot conversation. |
|
Connected App Operation HTTP Response | This attribute contains the values of HTTP responses received from other systems. | @{response.<parametername>} For example, @{response.statusCode} is used to display the response status code in an API call during a bot conversation. |
|
Conversation | A Conversation context attribute is used to store the details of the attribute in use, during skill execution. | @{conv.<parametername>} For example, @{conv.currentAttributeName} stores the name of the attribute being used while executing a skill. |
Note: for variables like chat transcript to work, we need to enable them from the backend, Need to raise a support request to enable chat transcript for the specific tenant. |
Disambiguation | These attributes contain details of the skill disambiguation resolved by your bot | ||
Followup | These attributes contain details of the actionable followups configured and triggered for your tenant. | @{followup.<parametername>} For example, @{followup.attemptNumbers} stores the number of attempts configured for the followup being triggered. | |
Format | These attributes are used to format bot messages displayed on the chat channels. | ||
Re Transfer Group | 'Re Transfer Group' attribute is used to store the details of the Support Group to which the user request is assigned. | @{retransferGroup.newGroupName} represents the support group name whenever the user requests to talk to a Support Agent. |
|
Skill Command | Skill command stores information on the skills used by the user to exit conversation with the Virtual Agent or SupportAgent OR transfer the conversation to Support Agents. | is tenant-specific and set to '//abort' by default. |
|
Support Agent | Support Agent attributes are used to store details related to the Support Agent logged in to the Agent Chat Console to assist users with their request. | @{supportagent.<attribute>} |
|
Support Agent Chat | Support Agent Chat stores the details of the conversation between the end-user and Support agent | @{supportagentchat.<attribute>} @{supportagentchat.transcriptJson} stores the transcript of the conversation between the EndUser and the Support Agent in JSON format |
|
Support Agent Action | Support Agent Action attributes stores the details of the actions taken by the Support agent on behalf of the end-user. | @{supportagentaction.<attribute> For example, @{supportagentaction.formField.<fieldname>} is used to refer to the value provided in the support agent action form field. |
|
Support Group | Support Group attributes are used to store details related to the selected Support Group | ||
System | System attributes are used to store Luma API details such as Base URL, URI path, gateway etc. | @{system.<attribute>} For example @{system.application.base.url} is used to refer to the base URL of logged in environment. |
|
System Commands | System commands are used to trigger a system action | @{systemcommand.skip} Skip command is used to determine if the end-user has requested to skip the prompt during skill execution. |
|
Tenant | Tenant Attributes are used to store information related to the tenant to which the user is connected. | @{tenant.<attribute>} | |
Group | Group attributes are used to store details related to the group available in Luma. | @{group.<attribute>} For example, @{group.name} |
|
Request | Request Attributes are used to refer to the information sent as a request to the web service integration | @{request.<attribute>} For example, @{request.body} is used to store the outbound request payload |
|
Response | Request Attributes are used to refer to the information received from the web service as response. | @{response.<attribute>} For example, @{response.body} is used to refer to the inbound response (in JSON, text or XML format) received from the web service. |
|
Catalog | Catalog Context variables are used to refer to the catalogs in search results of Luma VA's initial search or the custom search using 'Search Catalog' conversation Item | @{catalog.<AttributeIdentifier>} For example, @{catalog. } is used to refer to the number of catalogs found in the search. | |
Knowledge Article | Knowledge Context variables that are used to refer to the Knowledge Articles found as search results of Luma VA's initial search or the custom search using 'Search Knowledge' conversation Item | @{knowledgeArticle.<AttributeIdentifier>} For example, @{knowledgeArticle.topConfidenceLevel} is used to refer to the Confidence Band of the Knowledge articles found as part of the search. | |
Matched Skill | Skill Context variables are used to refer to the matching skills found in Luma VA's initial skill search. | @{matchedSkill.<AttributeIdentifier>} For example, @{matchedSkill.topSkillIdentifier} that holds the skill identifier of the best matching skill found as part of the search. | |
AI NLQ | AI NLQ context variables are filled when the AI NLQ step is executed in the conversation. | @{ainlq.need}
| |
AI Task | AI Task context variables are filled when the an Generative AI Task is executed in the conversation. | @{aitask.response} For example, @{aitask.response} holds the response received by executing the Generative AI task. | |
User Intent | User Intent context variables are filled when user's phrase is categorized using the User Intent Categorization step in the conversation. | @{userintent.domain} For example,@{userintent.domain} holds the business domain identified from the user's phrase. |
Smart Lookups
Luma provides a smart lookup feature enabling the System Administrator/ Developer to access the context variables. quickly.
This helps to avoid typing manually, remembering the format, and referring to the API documentation. It allows you to directly lookup for the attributes available for your skill. Attributes are grouped together into various categories to help you to quickly identify the required attribute.
Type @ to invoke the smart lookups pop-up to see the list of categories of context variables.
Results are displayed in alphabetical order A-Z. You may search or scroll through the result set and select the required Context Variable. The selected item will be populated into the respective field.
Info
Smart Lookups feature is available on System skills, Small talk, Skill builder, Integrations, Bot Configurations, and Tenant Settings.
© 2019 Serviceaide 1-650-206-8988 http://www.serviceaide.com info@serviceaide.com