2.2. Specific tools in the conversation designer
2.3. Turning the Bot on and off
3. BOT MESSAGING: GETTING STARTED
3.2. Specific tools in the conversation designer
Oct8ne's conversational BOT allows users to be served automatically without the intervention of an agent. Through decision flows, you can guide your customers with Q&A navigation until they find the solution they need, transfer that query to an agent, save visitor data, and more.
Oct8ne supports two types of Conversational Bots, depending on the environment in which they are going to be used:
Both types of Bot share quite a few concepts and tools, so these instructions will, for the most part, be valid for both cases. However, since the capabilities available in the web world and in messaging apps are different, certain sections or sections will be described individually.
Regardless of the type of bot, the flow of interaction with users is defined by designing conversations. By means of a visual designer included in the Oct8ne dashboard, you will be able to model the behavior of your Bot by deciding the messages that will be sent to users, capturing their responses, making decisions, or even make complete transactions thanks to its integration capabilities with external systems via HTTP API or native plugins with the most popular e-commerce platforms.
You can view the conversations stored in your account from the Management > Chatbot option in the Oct8ne dashboard. To view conversations specifically designed for Web Bot, select the "Conversational" tab; If you want to view conversations for messaging channels, select the "Messaging" tab:
You can enter to edit a conversation by simply clicking on its name in the list of conversations. By doing so, you will access Oct8ne's conversation designer, a visual tool that will allow you to define the behavior of your Bot in a really simple way.
The behavior of the Bot is modeled by adding successive modules (boxes) linked to each other, which represent the actions that the Bot will perform during the conversation. The initial module, where the conversation will begin, is always identified by a house icon.
Actions can range from simple tasks, such as sending a chat text to the visitor, to more complex functions such as requesting information entry, transferring to human agents, or even making decisions based on data obtained during the conversation. As you will see below, Oct8ne includes a rich set of actions that will allow you to design workflows to cover both purely informational bots and bots capable of completing transactions and performing practically any type of operation.
You can add modules to a conversation from tie points presented by other modules, by dragging the "+" button to the position on the designer's surface where you want to place the new element. Releasing the mouse button will bring up the menu where you can choose the next action to take in the conversation.
The following screenshot shows how, dragging the "+" button from the tree's initial action to the right of the surface displays the module selection menu. Next, the result of selecting the "Multiple Choice" module from the menu appears, where we see that the module has been linked to the first step and, therefore, it will be the next action to be executed after the initial greeting:
When you select a module above the designer by clicking on it, its properties window will open on the side, where you can configure the behavior of the action in detail. As described later in this document, the options to be configured depend on each type of module; For example, in the case of the "Chat" module it will be possible to indicate the message to be sent to the visitor, or in the "Multiple Choice" you will be able to configure the message to be sent to the visitor and the options from which they must choose.
Also, from this point it will be possible to modify the name of the action, which may be interesting to facilitate its identification later. Generally, when adding a new module to the conversation, it will be assigned a name that by default will match the name of the action followed by a sequential number (such as "Chat 1", "Chat 2", ..., "Multiple choice 1", "Multiple choice 2", ...). You can easily modify it by selecting the module and editing its properties:
Modules can be dragged onto the design surface to change their location. You can also use the zoom controls to zoom in or out of the displayed surface, and scroll through it using drag & drop.
In the upper right corner of each module, you will find a context menu identified by the three dots "...", the options of which allow:
Once you're done modeling the conversation, you can use the button on the top toolbar to save your changes.
Conversations for the Web Bot allow you to model the behavior of the Bot during its interaction with visitors to your web page.
To create a new conversation, access the Management > Chatbot option in the Oct8ne dashboard, select the "Conversational" tab and click the "Create conversation" button:
Next, you need to fill in some basic information about the new conversation:
If you identify this conversation as primary, it will be used by default for all your visitors. You'll be able to quickly see which of your conversations is the top because it's highlighted with a home icon:
Oct8ne provides you with a set of predefined templates. You can start from them to create your conversation and modify them later to suit your needs, or you can start from a blank conversation.
Once the conversation is created, the visual designer will automatically open, allowing you to start modeling the Bot's behavior immediately.
Once you've finished modeling your conversation for Web Bots, you can use the buttons on the top toolbar, specific to Web Bots, to perform the following actions:
In a Web environment, the Oct8ne Bot will behave like another agent, so it makes sense to be able to configure its availability when it comes to serving visitors. This can be achieved by using a switch available at the top of the web chatbot configuration screen:
Only if the button is in the connected position (green), the Bot will be able to serve the visitors of the website. In this case, it will also be possible to configure additional configurations by clicking on the "View availability options" link:
The advanced availability configuration options allow you to set the criteria with which Oct8ne will assign your website visitors to the Bot. They can be set via the following dialog box:
The available options, which you can activate independently, are:
Additionally, it is possible to establish filtering criteria, so that the Bot is only available when the specified conditions are met, basically based on the page and language of the visitor. For example, in the following screenshot you can see a configuration that will make the Bot available only when the URL of the page where the visitor is located contains the text "/computers/":
You can use the "Add New Condition" button to insert new criteria.
The process of creating a conversation for Messaging Channel Bots is very similar to the one seen above. In short, just go to the Management>Chatbot section of the Oct8ne dashboard, select the "Messaging" tab and click on the "Create conversation" button:
A dialog box will then be displayed, where you will need to enter some basic information about the conversation you are about to create:
Once the form is filled out, the conversation designer will automatically open, where you can start defining the behavior of the Bot.
Unlike Conversational Bots for the Web environment, in Messaging it is not necessary to configure a conversation as an initial one, since the selection of the conversation to start in each case is something that is configured from the Messaging Setup section of the Oct8ne dashboard, where each queue of an instance can be assigned to a conversation.
For example, the side screenshot shows the configuration of a Messaging queue serviced by Bots, which has been configured so that its initial conversation is the so-called "Black Friday default conversation".
Therefore, in this case, when a visitor is assigned or moved to the "Default queue" queue, the Bot will start the "Black Friday default conversation".
Once you've finished modeling your conversation for Bots Messaging, you can use the buttons on the top toolbar, specific to Bots, to perform the following actions:
An important aspect to keep in mind is that, unlike what happens on the Web, Bots for Messaging do not have a preview mode, so they must be published in order to be tested. However, you can use the following procedure to test your conversations:
In this section, we'll go through the modules that Oct8ne makes available to you to model the Bot's conversations:
The following table summarizes the set of modules and their availability in each Bot type:
This module is used to send messages to the user, which will be displayed in the form of "speech bubbles" or bubbles in their chat interface in Web Bots, or as messages in messaging applications such as WhatsApp or Messenger.
To configure this action, you will simply need to add as many messages as you want to send to the visitor. These messages can use basic text formats, such as bold or italics, using the buttons located in the editor toolbar.
In Bots for the Web, it is also possible to include links and images integrated into the text, although for the latter it is recommended to use the Media module, specially designed for this purpose.
It will also be possible to insert in the body of the message the value of variables previously defined in the conversation, whose values will be replaced at run time. You can use the {x} button on the toolbar to do this:
You can use this module when you want the Bot to request some type of information from the visitor, such as their name, email, or the identifier of the order they want to consult, among others. The information provided by the user will be entered into a variable that can then be used in subsequent modules or actions.
When you enter this action, you'll need to configure the following aspects:
to request the information from you,
such as "What's your name?"
. You can use the same editing tools as in the "Chat" module.
deposited the value entered by the user. Variables can be any word or identifier that begins with a letter and contains only letters and digits, such as "first name" or "last name1."
When the type of data received is not correct, the information will be requested again from the user.
This action allows you to check the availability of an agent or group of agents and branch to different modules based on the result of the check.
Depending on the configuration of the module, the availability of the following will be checked:
This module can be connected with two different possible actions, depending on the result of the availability check. For example, if agents are available, you could connect with the Transfer module to transfer the session to a physical agent; otherwise, the conversation could be modeled so that the user is asked for their contact details to write to you later.
This module transfers the conversation to an available agent, based on the specified criteria.
To configure this action, you must first specify a text, which will be displayed to the agent receiving the transfer.
Next, the destination of the transfer will be defined, to be chosen between:
This action allows you to send the user a list of options, from which the user must select one to continue the conversation.
Its configuration consists of specifying the following information:
Each of the options provided to the user must be connected to the action or module that will be executed when the user selects it. For example, in the following conversation, a Multiple-choice module is configured, and each of the options is linked to a subsequent chat module that will allow the conversation to continue:
It's usually not a good idea to show the user overly long lists of options, because it will make them difficult to read and make their decision more complex. In these cases, it will be more advisable to chop up the question and use several Multiple choices chained together until you reach the answer you want to get from the user:
This module aims to send the user a video, image, or audio. In Web Bots, resources will be displayed in the coviewer area, while Messaging Bots will send them as separate messages in the conversation.
To configure this module, it will be necessary to indicate:
This module aims to send the user a file or a document. In Web Bots, resources will be displayed in the coviewer area, while Messaging Bots will send them as separate messages in the conversation.
To configure this module, it will be necessary to indicate:
This module allows you to link the conversation to another conversation created in the system, or to another module within the same conversation.
To configure this action, it will be necessary to select the target conversation, using a drop-down menu where all the conversations created in the Oct8ne panel previously published will appear, and the destination module within that conversation.
This way, when the dialog with the user reaches this action, the flow will jump to the module specified as the destination, continuing the conversation with the visitor right at that point.
Tagging is a simple formula to classify sessions and allow their subsequent monitoring, statistical analysis and aggregate data collection.
The Tags module allows you to automatically tag sessions when the dialogue with the visitor passes through the point in the conversation where it has been inserted.
In your configuration, the only data required is the selection of the tag to be used, which must have been previously defined from the administration tools of your account.
Similar to the Tags module, this action allows you to send personalized events to Google Analytics that will allow you to track and subsequently use the key points of your conversation statistically.
To configure this action, you'll need to enter the event and, optionally, the subevent you want to send to Analytics.
This module allows you to save information about a contact in Oct8ne whose data has been previously stored in system variables:
The configuration of the module consists of specifying the variables where the information of the main fields of the contact is located:
The selection of variables is done using a drop-down selector, so they must have been previously defined in the conversation.
This module sends the transcript of the current session to the email address specified in your settings.
It is possible to configure the subject of the message, as well as indicate one or more recipients of the email, which can be fixed addresses or variable names written in the form <var>VariableName</var>.
This module allows you to send an arbitrary text to the email addresses that are configured as recipients of the message, optionally, along with the transcript of the conversation.
It is possible to configure the subject of the message, as well as indicate one or more recipients of the email, which can be fixed addresses or variable names written in the form <var>VariableName</var>.
It is also possible to configure the body of the message, as well as indicate whether you want the transcript of the conversation with the user to be added automatically.
If the email can be answered, you can configure the recipient of the reply using the 'Reply to' field.
This module, only available for Web Bots, queries the e-commerce platform for details of an order whose identifier or reference is stored in a system variable, and displays that information through a custom text.
To do this, first of all, it is necessary to select the variable where the code of the order to be obtained is saved. This variable may have been populated by asking the user for its value through a Request data action, or through any of the mechanisms provided by Oct8ne. Next, the text to be displayed to the user when the order data has been retrieved must be indicated. The following internal variables can be used in this text, which will be replaced by the real value obtained from the platform:
{date}, {reference}, {total}, {currency}, {labelState}, {deliveryDate}, {carrier}, {trackingNumber}, {productNumber}, {trackingUrl}
So, if we use, for example, a text such as "Your order {reference} is in status '{labelState}'", a user could get a message in the chat such as "Your order 2293X39 is in the status 'In delivery'".
Finally, it is possible to map the value of these internal variables to variables usable at any other point in the conversation. This is achieved in the last section of the module configuration, adding correspondences between conversation variables and the order status values obtained.
The objective of this action, available exclusively for Web Bots, is to show the user extensive information, using the coviewer area, available in the Oct8ne web visitor interface.
The module will display a short message in the chat window, identified as "Link" in the settings, the pressing of which will cause the viewer to open in the form of a popup showing the title and the full body of the message.
The purpose of this action is to show the user a text and a link to the company's privacy policies, offering the possibility of accepting or rejecting them.
In addition, in Privacy policy you must configure two connections with other modules:
The Delay module allows you to introduce a delay in the conversation, which can be useful to give the user time to read consecutive messages, or to make the interaction more human by simulating the time it would take a person to type between different messages.
In Web Bots, in the configuration of this module it is possible to specify both the time of the pause and whether the message "Typing..." while the delay is being applied.
This module allows you to end the conversation between the Bot and the visitor.
In Web Bots, this will end the conversation, being stored as completed in Oct8ne's history. In this case, the only configurable aspect of the module is whether or not a button appears so that the visitor can send their contact details at that moment.
In Bots Messaging, the session will end and the visitor will be moved to the default queue.
This module, exclusive to Web Bots, allows you to execute arbitrary script code as part of a conversation between a visitor and the Oct8ne Bot. This can be used to trigger an action on the page of your website where the user is located, or a custom code inside the Oct8ne viewer.
The action allows you to configure the following aspects:
This module allows the Oct8ne Bot to communicate via HTTP calls with external systems that have a JSON-based public API during a conversation. This communication could be done in two ways:
The specification of an HTTP call consists of providing the following data:
To map the answers, two aspects must be indicated:
For example, extracting the name of the following JSON response would use the name source, while getting the city would use address.city:
This module allows you to create and assign values to variables that can be used later during the conversation. Unlike other modules such as Request data, which allows you to assign values obtained directly from the user to variables, the Assignment module allows you to assign values that are calculated within the conversation itself.
The Assigment module allows you to specify one or more assignments, setting the value of a variable in the conversation for each of them. For each assignment it will be necessary to specify:
Examples of assigning constant values to variables:
Examples of assigning expressions:
This module allows the Bot to make decisions on its own, based on the information available during the conversation. In a way, it is the action that allows us to provide a certain intelligence to conversations and make them much more interactive and useful for the user.
The Condition action allows you to modify the flow of the conversation based on the fulfillment of the specified condition(s).
When more than one condition is specified, they can be combined as indicated in the "execution mode" box:
Each of the criteria included in a conditional action must indicate:
(Text strings enclosed in quotation marks,
numbers, variables, or function calls).
Finally, you'll need to link the condition to the modules that will continue the conversation when the condition is met and isn't met, respectively, as in the following example:
When several conditions have to be entered consecutively in a conversation, the diagram can grow quite large; For example, consider the following conversation, where we chain three conditions to display a message depending on the number requested from the user:
As you can see, the number of Condition modules will be proportional to the number of options to be managed, resulting in extensive and difficult to manage workflows.
The Conditions List action proposes a more compact formula to achieve the same result, concentrating decision-making on a single point and bifurcating towards the different points of the conversation that are of interest. In this way, the above example could be modeled as follows:
This module has two configuration modes: basic and advanced.
Basic mode is the simplest and most appropriate option when the conversation needs to take different paths based on the exact value of a variable or expression.
Its configuration consists of indicating the expression to be evaluated and then the values of the different execution branches. For example, in the example above, the expression to be evaluated would be the number variable, and the three cases would be the values 1, 2 and 3, which would be inserted individually, and then act as the link points to the continuation of the conversation for each of them.
In advanced mode, on the other hand, you can add different conditions independent of each other. These conditions are set exactly the same as in the Condition module, specifying the left operator, the condition, and finally the right operator. Each of these conditions will define a link point to the next step in the conversation.
You can use this module to create a loop that iterates between two values specified in its definition, allowing mappings to be made within it. It is the ideal formula for processing data sets or arrays (collections of values).
The configuration of the Loop action is done by specifying the following values:
Additionally, you will need to enter one or more mappings, which will be processed as many times as iterations are executed in the loop.
Example: The following conversation asks the user for a number, then shows the user their factorial number (for example, the factorial number of 5 = 5*4*3*2 = 120)
This module is very similar to the Multiple choice action described in this document, as its objective is also to send the user a list of options from which they must select one to continue the conversation.
The main difference with respect to Multiple choice is that, in this case, the options that will be displayed to the user will not be specified directly in the properties of the module, but, instead, in variables or expressions of type array.
To configure this module, it will be necessary to indicate:
For example, the following conversation shows the user a menu to select a color (red, green, or blue), and then displays the hexadecimal value of that color. To do this, two parallel arrays have been used, one for the name of the color and the other for its hexadecimal value:
This module allows your Bot to automatically generate tickets in your Customer Relationship Management (CRM) system.
When the conversation flow reaches this action, the system will get your current CRM settings (set in the Settings > Integrations > CRM section of the Oct8ne dashboard) and use them to insert a ticket with information about the current session.
After carrying out this task, the conversation will continue through the "Success" endpoint, if the information could be sent to your CRM, or "Failure" if not.
To configure the module, you must enter the data that will make up the new ticket, depending on the type of CRM you are using. For example, if you use Zendesk, you will need to enter information about the status in which you want to store the new ticket, its priority or its subject, as well as the email and name of the customer with whom it will be associated. In all these cases, you can either fill them in by directly entering the values you want to send to the CRM, or insert variable in them using the usual syntax <var>VariableName</var>.
This module, exclusive to Web Bot, aims to display HTML frames in both the chat and the coviewer, which would allow arbitrary content to be embedded in both the chat and the Oct8ne coviewer. Examples of use could be embedding a Google Map with a location, a YouTube video, or an online appointment booking website.
To configure this module you will need to:
An important aspect to keep in mind is that many web applications offer the ability to share their content by generating an HTML code to embed on a host site. This is, for example, what happens if you click the "Share" button on a YouTube video, where it could generate a code like the following:
In these cases, you should ignore all the code and extract only the address of the resource (the value of the src attribute of the <iframe> tag highlighted in the code above), entering it in the URL field of the module configuration.
The goal of this module is to show product suggestions to users. You can configure this module to search for products based on the Oct8ne catalog or your store, using keywords or product references as search criteria.
To configure this module, it will be necessary to indicate:
In Bots Messaging, you will need to additionally specify two fields:
This module, exclusive to Web Bots, allows you to display custom forms to users in the chat interface.
To configure this module, it will be necessary to indicate:
This module allows you to integrate Oct8ne with an AI robot. Specifically, the integration is done with OPENAI. Despite the fact that there are other robots and companies dedicated to Artificial Intelligence, Oct8ne only integrates with OPENIA. https://openai.com/chatgpt/pricing
The customer will need to have an OpenAI account in order to integrate successfully.
To configure this module, it will be necessary to indicate:
In advanced parameters we can modify certain aspects of the module:
This module allows you to map data structures in JSON format and assign them to the BOT's own variables in order to display them in conversation.
To configure this module, it will be necessary to indicate:
To map the answers, two aspects must be indicated:
The Move to Queue module, available exclusively in Bots Messaging, allows you to move a user to the queue specified in your configuration. If the target queue is served by humans, the user will be left waiting for an agent to continue the service; On the other hand, if it is attended by a Bot, it will start the conversation it has configured.
When selecting the queue to which the user will be moved, you have two options:
You can check the queue labels available through the Oct8ne dashboard, in the "Queues" section of the properties of the Messaging instances:
Basically, users who communicate with Oct8ne agents via Messaging can be in two states:
The Set pending status module allows you to modify the status of the current user, marking it as pending or not pending to be answered, depending on your interests. This can be useful, for example, if the bot wants to move the user to a human-managed queue and force their state to pending attention so that an agent can resume the conversation.
Apart from Pending/Not Pending statuses, Oct8ne allows you to assign custom statuses to conversations, usually closer to business management needs or customer service processes. For example, you could use statuses like "Pending Review" or "Waiting for Storage" to quickly identify the status of your conversation so you can more efficiently organize interactions with users.
The Status change action allows the Bot to set the status of the conversation. To do this, you need to select the desired state from the drop-down list displayed in the module settings.
Blocks are groups of modules provided by Oct8ne that, working together, define specific behaviors. You can insert them into your conversations, and configure them later to suit your needs.
This block consists of 4 modules that define a workflow to get the details of a visitor's order:
When you start the dialog with a user, you can preload a set of variables by getting their values from the context information of the conversation. These variables must be defined from the conversation settings, adding the variables that you will need during the dialogue with the user.
Context variables act in exactly the same way as the rest of the variables established through modules such as Request Data or Assignment, i.e. they can be used as part of any expression. The difference is that, in this case, their values will be automatically supplied by Oct8ne when the dialogue with the user is initiated.
The environment variables that you can add to the conversation by default depending on the type of Bot used are as follows.
Additionally, it is possible to specify fully customized context variables. These values must be supplied from the page Oct8ne is on, setting them as properties of the page's oct8ne.options.context object , as in the following example:
After ensuring that the value has been inserted into the page, it is necessary to add a new variable of type "Custom" to the set of context variables from the bot designer of the Oct8ne dashboard, indicating:
Also, in Bots Messaging you can specify fully custom context variables. The values for them are defined by the queue the user is currently in. You can configure the values for each queue by editing its properties and entering a valid JSON object in the Variables (JSON) field:
Once done, you need to add the variables present in the JSON object supplied by the queue to the conversation. To do this, you need to insert a new context variable of type "Custom", specifying the name of the variable, which must match the name of the property in the JSON.
For example, if we configure a JSON in the queue as {"userName": "John"}, we will have to configure the context variable with the name "userName", as shown in the attached screenshot.