Jump straight into the Answers solution by quickly learning your way around the web interface, some basic terminology, and building your first simple keyword-based chatbot.
Note that this quick start section is intended to give you a high-level overview of the system and how to get started in it. Make sure to check out the relevant sections of the docs for more complex chatbot requirements and tutorials.
Before getting started with Answers it is important to familiarize yourself with some core terminology which is heavily used throughout the web interface and documentation.
Make sure to check out the relevant sections of the docs for a deeper understanding of some of these terms.
Chatbot components: Chatbots are made of the following core components:
- Keywords allow the chatbot to identify and route end users to the next relevant dialogs in the chat depending on their responses. Keywords also work with synonyms so as not to have to add multiple similar words separately.
- Attributes add context to your conversations as it would by humans interacting. They are used to capture information about your customers to be stored and used in communication exchanges.
- Dialogs are the building blocks that make up the various parts of your chatbot conversation and are based on Intents. They are made up of various elements and are responsible for routing end users on to the relevant next steps in the customer journey.
- Elements are the components which make up your dialogs. Various element types are available across different channels and can be anything from simple text to conditional routing.
AI Chatbots: In addition to the chatbot components, AI chatbots include the following:
- Intents define the end-goal of the conversation or in other words the reason why the user is starting the conversation. Intents are made up of training phrases to help provide the chatbot with context.
- Named Entity Recognition (NER) is an AI-powered feature of Answers and is used to capture relevant conversation entities with the aim of training the chatbot. It works by classifying user inputs into predefined categories.
Templates are predesigned chatbots that uses example content, configuration, and integration to simulate real-life chatbots.
You can use a chatbot template in the following ways:
- Use it as it is for testing and learning. You can activate the template immediately.
- Use it as a base to build a chatbot. Instead of creating a chatbot from scratch, use a template to create the chatbot. Customize the chatbot for your use case and requirements, and use it in a live environment.
- Use it as a base to build advanced chatbots to use in a live environment.
Each template is for a specific channel and language.
In order to create/edit/import chatbots you need to be assigned the role of Answers Designer or Answers Manager. If you have another user role you will only have view permissions.
Read more about user roles
The Answers dashboard is the central command center for all things chatbots. From here you can view, edit, create, delete, export chatbots, as well as access chatbot-specific analytics.
- Answers module - Click between modules to enter different solution dashboards. The Answers dashboard is accessible via the chatbot icon
- Chatbot view - Selected by default, this view displays all existing chatbots, as well as several edit, configuration, and create options
- Analytics dashboard - Global-level analytics of collective chatbot performance. Flick between the sub-views in this window to see more analytics by type
- Import chatbot - Import previously exported chatbots with all settings and setup intact for quick multi-bot creation
- Create chatbot - Build chatbots either using a template or from scratch.
- Chatbot list - This is your list of existing chatbots sorted by modified date. Click the headers to edit sorting. All chatbots are displayed regardless of status
- Search - Use the search option to quickly filter out your desired chatbot by name. This is useful for quick access when multiple chatbots are deployed or archived
- Chatbot analytics - Use the individual analytics options to view performance for specific chatbots. This is only available for chatbots which have collected data
- Actions menu - Use the individual actions menus to perform quick actions such as edit, duplicate, export, and delete
- Help and support - Access Infobip's various resources for help with using the system, use cases, the latest release notes, and more
Build a simple chatbot
This is a quick guide to building your first simple chatbot. Note that detailed explanations are omitted from this tutorial for the sake of brevity. Make sure to check out the relevant sections of the docs for more information.
For this guide, you will be creating a simple keyword-driven chatbot. Keyword-driven chatbots are equally as powerful as AI-driven bots, however, the customer journey solely relies on response association to keywords, attribute storing, and conditions.
This tutorial is broken up into two main parts. The parameters behind the chatbot's logic, and the physical composition of the chatbot customer journey which end users will experience.
Let's build a simple weather app. Log in to the web interface and head to the Answers dashboard. Once there click Create chatbot to begin. Only users with create permissions can create chatbots.
- Give your chatbot a name (recommended unique), and select the channel you will be using. Define the sender account (optional at this stage), and set the chatbot language. Hit Create chatbot.
- Now you should be in the chatbot editor in Dialogs. Go to the Settings tab if you need to make any immediate edits to the information provided in the previous step. Here you can also add your escape phrases and chatbot timeout logic.
- First, we need to add some keywords for the chatbot to recognize. Go to the Keywords tab. Here, you're going to add all the words which are going to allow your chatbot to understand where to route users in the conversation based on their responses. We are adding keywords now so that we can use them later when building the customer journey.
Make sure to provide as many synonyms as possible for your keywords so that your chatbot doesn't get stuck with what to do.
- Now go to the Attributes tab. Here, you are going to create the custom objects needed to capture and store the specific information we need for this example. As we are expecting various API responses for this chatbot, let's create those attributes to store those responses.
Set the value type depending on what format you are expecting to receive your response in (JSON, XML, etc.)
- Intents are used in AI-powered chatbots running on training phrases enabling the chatbot to work beyond just keyword recognition. Make sure to check out the section on intent-driven chatbots for more information and guides on how to build these types of chatbots.
Now it's time to put your chatbot together! Go back to the Dialogs tab and get ready to build the customer journey.
- The main steps in the customer journey when conversing with chatbots is broken up into dialogs. By default, you will be in the Default dialog, which we will use for a greeting message, and quickly find out what the user wants to know.
Pull the Text element into the editor and add a greeting. Add the Reply button element underneath and present users with a few options to choose from based on your keywords. Set the Postback value to match the relevant keyword.
- Let's create the global dialog structure for this chatbot. Use the +Add dialog option and add dialogs as required for separate topics of conversation. These should correspond to your keywords.
You do not need to populate these dialogs with any channel elements yet. We will come back to this later.
If your dialogs are largely made up of the same content and/or logic, build a base dialog first then use the duplicate option
- Let's add an "end" dialog so that we can redirect users to it when they're finished with their query. Add a new dialog and use the Text element to add a goodbye message. Place the conditions element underneath and add a condition. Set the condition to lastReceivedMessage to is not null.
Place the To dialog element under the condition and select a dialog. Place the Close session element under Else.
- Now go back to the Default dialog and add the User Input element. Select your keywords related to the options you added above. When a user selects an option from your reply button, the chatbot will take that response and route it to the appropriate dialog.
Drag the To dialog element under each user input option and set it to the corresponding dialog matched with the keyword.
Make sure to add a fallback action for the User Input element so that the chatbot knows how to handle unrecognized inputs from the user. Select a dialog to fall back to, or alternatively create a dedicated fallback dialog.
- Your additional dialogs can now be set up and configured as requested as per their dedicated function. For this example, the Forecast dialog makes a call to a weather app via API and saves the response to the dedicated attribute.
Configure the response settings on how to store data from the response, either from headers or from the body. Then add in the desired channel element which will display the response in a readable format to users.
Make sure to route users on to the next steps in the customer journey, for example, back to the main menu, or to the "end" dialog.