CONVERSATION
1. Bot Messages
Under the Bot Messages heading, the bubbles you see here are the actual messaging bubbles that go in the bot. You can simply add the questions/statements here. At the bottom right of the bot messages section there is a blue drop down menu in which creators can choose how users can respond to these messages.
In the visual builder we have several different ways to receive input from users. These range from standard text input in chat to quick reply buttons and custom input specific UI’s like calendar, file upload and geo location. You can find more about the different types of Input UI that appear in this dropdown menu over here.
2. User Input Type
This is the message that customers reply to the bot. You can save necessary information from this message into customer attributes to synchronize with CRM, Google Sheets, etc.
2.1 Text Input
Using the text input option can accept text from users. Within this option however, creators will find several options for configuring what type of text is taken in.
The first option that creators have is to customize the Input Type.
Each of these configurations accepts text in a different form
- Custom Text - Will accept any text
- Full Name - Will accept text in the form First Name and Last Name with ie (e.g. John Smith)
- Email - Will accept text in the form [email protected]
- Telephone - Will accept all international phone number formats.
- Address- Will accept address input
- Number: The bot only accepts content entered by the customer as a number. If the input is incorrect, the bot will display a message prompting the customer to re-enter. You can choose to display this error message or turn it off in Settings > Notifications.
- Amount of money: Similar to the number field, the content entered by the customer must be a number (it can include a comma, e.g., 100,000). If the input is incorrect, the bot will display a message prompting the customer to re-enter. You can choose to display this error message or turn it off in Settings > Notifications.
2.2 Quick Replies
It is similar to buttons but is arranged horizontally. Comes with the Branching option to choose connection with the next conversation.
2.3 Buttons
Buttons have a maximum display of 3 buttons for the user choice. It comes with the Branching option to choose a connection with the next conversation. For example, when you select "Buy", you will come to the conversation which give a list of products. But if you select "Not Interested", you can end the conversation. This type of message is very useful for flow development.
2.4 Cards
It is similar to Button reply option but it has more images and more detailed information. It is very suitable and recommended for displaying products to order.
2.5 File Upload
Creators have the option of getting input in the form of an image or a file. This can be selected from the Input Type dropdown. The end result will look like this:
2.6 Star Rating
Creators can take user input in the form of ratings. For example, the rating input option can be used for collecting feedback for example.
Perhaps the most universal way of rating something is by using a star based rating system. As such, we have added this as an input UI option.
Number of stars – within this option users can decide how many stars the rating system can have. As of now you can choose between 5 or 10.
You can view customer feedback statistics by opening the Dashboard Menu.
2.7 User Feedback
An enhanced version of the Star Rating.
2.8 Shopping Address
The bot sends a message to the customer containing a form to collect their shipping information.
You can set the expiration date for this request.
The customer clicks the "Enter Address" button to fill in their information.
The address will be saved to Meta Pay, allowing customers to resend this address to the bot in future transactions without needing to re-enter it.
2.9 Date and Time
The bot sends a message prompting the customer to input a date/time. This message type includes the "Require Correct Format" option: if the customer enters an incorrect format, a notification will prompt them to re-enter.
2.10 Webform
Creators can take user input in the Web Form. This can be used for collecting user phone number, and address for example.
View the detailed guide on how to create a Webform here.
2.11 Lucky Spin
Display the Lucky Spin form for customers. It’s perfect for running giveaway minigame campaigns. View the detailed guide on how to create a Lucky Spin here.
2.12 Lucky Gift
Display the Lucky Gift game form for customers, such as the "Open Gift Box" or "Shake Tree for Luck" game. It’s perfect for running giveaway minigame campaigns. View the detailed guide on how to create a Lucky Gift here.
2.13 Messenger List
The bot will send a message to the customer requesting registration to receive notifications. This request allows the bot to send daily messages to the customer without violating any policies. View the detailed guide on how to create Messenger List here.
2.14 OTN Request
The bot will send a message to the customer requesting registration to receive notifications. This request allows the bot to send a one-time message to the customer without violating any policies. View the detailed guide on how to create OTN Request here.
2.15 No Input
This is useful if you want to insert some intermediate message between two blocks, but don't want to interrupt the user by asking for anything.
Select it from the Input Type Dropdown menu, and click on Save. That's it.
3. Navigation
3.1 Branching:
When multiple buttons/quick replies/cards are made by a builder and this option is on, bot creators can redirect the conversation flow based on the button the user selects.
For example when the builder does not keep this option on there is only one connector from the block. When the bot creator turns this option on, connectors appear for each button so that selecting each one leads to a different block.
3.2 Conditional Branching
Each branch contains a set of conditions. You can take a value from elsewhere in the flow (e.g. a user response or data from an api call) and check to see whether it meets those conditions.
The Bot starts from the first Branch (Top most/Left most) and checks for all the conditions that you have set. It will then simply jump to the first branch for which conditions are met. A branch giving true/matching conditions means that the conditions within that branch are met and satisfied. Jumping to that branch means it will follow the direction of that branch (i.e. wherever you connected the corresponding socket).
If so take the example from below:
Over here we are checking the user response from a block named star, hence the value we are comparing is {{ursp.star}}.
In the first branch we check if {{ursp.star}} is greater than OR equal to 4. In the 2nd Branch, it has conditions to check if the user response on block star is greater than OR equal 3. The third and final branch is a default branch, more on this in a moment.
The system checks each branch in order from top to bottom. So in the above example it will take the first branch and check whether {{ursp.star}} is greater than or equal to 4. If the response meets these conditions, it will not check branch 2 and push the conversation in the direction of branch 1 (i.e. wherever you connected the socket corresponding to branch 1). If it doesn’t meet this condition, it will check branch 2. If it does meet the conditions in branch 2, the conversation will move in the direction of branch 2 (i.e. wherever you connected the socket corresponding to branch 2).
But what if it meets neither of these conditions? What if in the above example {{ursp.star}} is 1? It is not greater than or equal to 4 so branch 1 will not be activated. It is not in between 3 and 4 so branch 2 will not be activated. This is where the default branch comes into play. The default branch is a fallback. If the bot checks every branch that you have created and none of them are activated, then the bot will send you in the direction of the default branch.
3.3 Input Validation
Allows bot creators to check what sort of input is being given by users:
- Full name validator- Validates that input text is in the form <first name> <last name> (e.g. john smith)
- Email Validator- Validates that input text is in the form [email protected]
- Mobile Number Validator- validates that input is in the form of a 10 digit number
3.4 Skip to next Block
This is useful if you want to insert some intermediate message between two blocks, but don't want to interrupt the user by asking for anything. It is the same as the No Input option.