Building Chatbots

Bot Types

Concierge Bot

  • The Concierge (Welcome) Bot is the first respondent for a customer who swipes in from the Connect application, Micro Connect, or Web Connect to report an Issue.
  • This Bot asks high-level questions to determine the type of service a customer needs and reroute it to the appropriate team, agent, or bot. The Concierge Bot can also gather information for issue diagnostic. When a support agent joins the chat, the Concierge Bot will automatically leave the chat room and allow the live user to take over the troubleshooting process.
  • The Concierge Bot comes pre-built by the Boomtown team but can be customized for each partner, if desired.
The Issue Diagnosis Bot (IDB) is the first responder when a user swipes in from Connect.

Concierge Bot Welcome Message

 

Knowledge Bot

  • Knowledge Bots can be created for many use cases, such as troubleshooting specific devices and automating internal operations FAQs.
  • This Bot is completely customizable thanks to Boomtown’s proprietary Visual Bot Editor and inline buttons that allow admins to improve and edit bots without having to leave the chat room. The Editor allows you to easily build your own Bot, no coding necessary. Please note, however, that, depending on the required capabilities and their associated complexity, creating effective Knowledge Bots can require a high level of technical understanding.
  • Boomtown will create new Knowledge Bots or make custom updates to existing Knowledge Bots for partners at an extra monthly cost. Currently, Boomtown has pre-made device-specific Knowledge Bots designed to troubleshoot the Vx520, Poynt, Foundry POS, Clover, Dejavoo, and other devices.
A Poynt Knowledge Bot in action.

A Poynt Knowledge Bot in action.

 

Melody Bot

  • The Melody Bot allows teams to easily collaborate and create their own Bots, no coding or technical expertise needed.
  • Teams can access their Melody Bots from within their own team chatroom.
  • Melody Bots are a great tool for smaller teams that want to place information in an easily accessible Bot that will live within their most used chat rooms.

 

Training a Melody Bot

NOTE: Without the Train Concierge Bots permission, a user will be able to communicate with a Melody Bot, but will not have access to the buttons shown below that allow for an existing question to be modified or new questions to be created.

  1. Ask the Melody Bot a question. Make sure to use #[name of the Melody Bot you’re addressing].
  2. If the Melody Bot doesn’t know the answer, it will let you know and give you the chance to answer. Click the Answer button to provide an answer.
  3. Provide the Bot with the correct answer so other users can access it later.
  4. Try asking the Bot that same question again.
  5. The Melody Bot remembers the answer to the question that the user specified and provides optional buttons that allow you to:
    • Modify: Change the answer or change the keywords associated with that question/answer.
    • Accept: Publish the answer so the customer/merchant can see it in the Issue Public Chat Room.
    • Personalize: Add a personalized message to the end of the answer and publish it so the customer/merchant can see it in the Issue Public Chat Room.
The Melody Bot allows teams to easily collaborate and create their own Bots.

The Melody Bot in action

 

Inline Buttons (Knowledge Bots)

NOTE: This functionality requires the Train Bots permission.

Ask the Bot a question and wait to see the inline buttons. Inline buttons allow admins to improve and edit bots without having to leave the chat room.

  1. The New Answer button allows you to provide a new answer to a Bot question that is queued.  In the example below, this would change the text answer that the bot provided to the user.
  2. The Improve Score appears when a user’s question has less than a 90% match with the most relevant bot question/answer. In the example below, by clicking the Improve Score button the user’s query that queued this question/answer from the bot would be added as a keyword. The result is that in the future, if a user responds again with a similar query, this question/answer will score higher and there will be a greater chance that is queued again.
Inline buttons allow admins to improve and edit bots without having to leave the chat room.

Inline buttons for Knowledge Bots

 

 

Using the Visual Bot Editor (All Bots)

Visual Bot Editor – Topics Overview

NOTE: You must have the Train Bots user permission to access this feature.

  1. Go to System  Bots and click the Pencil icon next to the relevant Bot to access the Edit Bot window.
  2. Click the Topics icon to access the Visual Bot Editor. Topics are also known as the questions the Bot can respond to.
  3. The main view shows a list of all of the topics that the Bot knows, including their:
    • Key: A unique identifier for a particular topic (question).
    • Subject: The title, or user-friendly identifier for a particular topic.
    • Keywords: The individual keywords or phrases that the Bot looks for when deciding the proper question/response to queue.
    • Text: The Bot’s answer to the question.
    • Rate-able: Whether or not optional thumbs up/down rating buttons will appear with the question’s answer.
    • Timeout: The amount of a time a user has to respond to a question’s response before the Bot automatically responds again with a customizable message.
    • Typing Timeout: The number of seconds a Bot will wait after the user stops typing to evaluate the user’s response.
    • Parse Delay: Ties into typing timeout and is used when the question/topic has multiple responses to evaluate. Should usually be set to the same value as the Typing Timeout.
    • Status: Determines whether the topic is Active (visible) or Deleted (not visible).
    • Updated: The timestamp of the last instance of that topic being updated.
  1. You can use the Search bar to search for topics to edit. Then double-click on any topic to edit it.
The Relay Visual Bot Editor.

The Relay Visual Bot Editor.

Visual Bot Editor – Adding Topics

1) While in the Topics toggle of the Edit Bot window click the Add button to begin adding a new question/topic.

Accessing the Edit Topic window.

Accessing the Edit Topic window.

 

2) Begin creating a question/topic by setting the following fields:

  • Status: Set the question/topic as Active or Deleted.
  • Subject/Title: The title / user-friendly identifier for a particular topic. Usually set to the question that is being answered.
  • Text: The answer to the question that the bot responds with when it is queued.
  • Keywords: The individual keywords or phrases that the chatbot looks for when deciding the proper question/response to queue.
  • Typing Timeout: The number of seconds a chatbot will wait after the user stops typing to evaluate the user’s response.
  • Parse Delay: Ties into typing timeout and is used when the question/topic has multiple responses to evaluate. Should usually be set to the same value as the Typing Timeout.
  • Rate-able: Whether the topic is Active (visible) or Deleted (not visible)
  • Time-out: Overrides the default timeout behavior. A timeout occurs when a user doesn’t respond to a bot’s response in a set amount of time. When a timeout occurs the bot automatically responds to the user with a customizable message.
Adding/editing questions/topics in the Visual Bot Editor.

Adding/editing questions/topics in the Visual Bot Editor.

 

3) Scroll further down to add user responses or action buttons to the question to further enhance the way users interact with the bot.

Adding responses/action buttons to bot topics.

Adding responses/action buttons to bot topics.

 

 

Adding Responses to Topics

1) Start off by selecting a Validator and then specifying a Value for it. In the example below, we selected the Botton Validator which means that the response will appear in the form of a button for the user to click. The Value to specify in this case is a label to appear on the button. What the Value does will very based on the Validator selected. Reference the chart below for more details.

Validator Purpose Purpose of ‘value’
button Button displayed as part of a message. Great for thumbs up and thumbs down. The text to place inside of a button, may reference an (emoticon)
option Options are presented in an option pick-list The text displayed in an option pick-list/used for word scoring/matching
text No options presented/used for text matching The text used for word scoring/matching
formula Formulas provide an easy way to evaluate a response The formula to evaluate (available variables: {text}, {number}, {length}, {word_count})
min_words Matched when the response exceeds a minimum number of words The minimum number of words permitted in the response
max_words Matched when the response contains less than a maximum number of words The maximum number of words permitted in the response
yes Requires that the response matches the ‘yes’ utterances Unused
no Requires that the response matches the ‘no’ utterances Unused
2) After you’ve finished setting the Validator and its Value you can either specify a standard message to be sent to the user when the response is initiated OR you can check the ‘Go-to other topic’ checkbox to specify a follow-up question. A follow-up question means that when the response is queued another question and it’s answer (and potentially subsequent responses) will be sent by the bot. This functionality allows you to create nested layers of questions so users can go from high-level to granular questions and answers. Use the ‘GoTo’ selection list to specify the follow-up question that will be sent.
Adding responses to questions in the Visual Bot Editor.

Adding responses to questions in the Visual Bot Editor.

 

 

Adding Action Buttons to Topics

Action Buttons allow you to have the bot perform non-conversational actions when the user clicks on the button. These Action Buttons appear at the bottom of a question’s answer that the bot provides.

NOTE: Unlike Response Buttons, Action Buttons can be clicked more than once and by any user regardless of whether or not they asked the question that prompted the bot’s response.

1) Enter the Key and Label for the Action Button. The Key is a unique identifier for the Action Button and the Label is the text that appears on the Action Button for the user. The Key and Label can be left the same if desired.

2) The URI Type defines the type of action performed.

  • URL: Takes the user to a defined URL when the user clicks on the Action Button.
  • User Say: Causes the user to respond with whatever is defined when the user clicks on the Action Button.
  • Bot Topic: Allows you to specify a bot and a topic/question within that bot to prompt when the user clicks on the Action Button.
  • Relay Route: Allows you to specify a relay sub-URL such as the sub-URL of a specific Issue within Relay. When the user clicks on the Action Button they will be taken to the Issue Detail Modal for that Issue.

3) Depending on which URI Type you select you will have more settings to specify. In the example below, we had to choose a bot and a topic/question within that bot to queue when the user clicks the Action Button.

Adding Action Buttons to questions/topics in the Visual Bot Editor.

Adding Action Buttons to questions/topics in the Visual Bot Editor.

 

 

Bot Tokens for Advanced Conversations

Add these tokens to the Text field of a Bot’s Topic to further customize a Bot’s response to a user. NOTE: Make sure to include the surrounding double brackets.

  • {{BR}} – Single line break
  • {{NP}} – Double line break (new paragraph)
  • {{NEXT}} – Split the response into an multiple messages
  • {{OPTION_LISTING}} – Specify the location of the auto-generated response option pick-list (otherwise appended to end)
  • {{EOT}} – End-of-topic condition flag for Concierge Device bots
  • {{DXT}} – Device-exit-topic condition flag for Concierge Device bots
  • {{TYPING}} – Triggers the bot to send typing/composing state after sending the message
  • {{HALT}} – Causes the bot to leave the conversation after responding to the user. Append this to the end of the bot’s message.
  • {{from}} – The sender’s nickname
  • {{group}} – Nickname of the room’s group, falls back to #Boomtown
  • {{admin}} – Nickname of the room’s admin/partner/team user, falls back to {{group}}
  • {{tech}} – Nickname of the room’s technician user, falls back to {{group}}
  • {{member}} – Nickname of the room’s member, falls back to {{group}}
  • {{user}} – Nickname of the room’s member/team/partner user, falls back to {{group}}
  • {{sponsor}} – Nickname of the room’s assigned issue sponsor, falls back to {{group}}
  • {{owner}} – Nickname of the room’s assigned issue owner, falls back to {{group}}
  • {{sponsor_name}} – Name of the room’s assigned issue sponsor, falls back to -NA-
  • {{owner_name}} – Name of the room’s assigned issue owner, falls back to -NA-

Available Bot Tokens for use with the Relay Chatbots.