Table of Contents | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
|
...
After creating your first flow, open it, click "Edit Flow", have your bot side by side and here we go! 😆
...
A few simple steps to send out your first message:
click the green start point
in the edit panel, "Select Next Step"
choose "Send Message" step
click the "Send Message" step
click text type message
enter your message
"Publish"
...
That's it! Let's test!
...
Click "Preview" from the navigation bar and "Open the flow in Messenger". Click "Get Started" if it's the fist time you talk to the bot.
Note |
---|
Preview Feature - Please note that "Preview" feature is not supported in all channels. Channels support "Preview": Facebook, Telegram, WhatsApp, Line and Viber. For channels without Preview, search "talk to bot" in the documentation for guidance. |
Congrats! Your bot is working now. 🤖🤖
Let me show you some more details about Send Message step. These are the message type in common for all/some of the Channels.
Send Text / Variable
...
UChat has integrated with Grammarly to help you get your expression perfect.
...
Insert Custom Field Value and Emoji
Wherever you see "</>", you can insert emojis or variable values to the text.
...
Or simply type "{{" to call the field list:
...
Send Image / Audio / Video / File
There are 4 ways in total:
...
upload from your computer (size limited)
Media Type | Maximum Upload Size |
---|---|
video | 10MB |
audio | 5MB |
file | 5MB |
others(e.g. image) | 2MB |
From a URL link (recommended)
You can search pictures online and copy their direct URL links. But this direct link might change. Alternatively, you can upload photos to your server or other third-party photo storages like Imgur:, then get your direct URL links from that. Direct URL link means the link is pointing to a specific photo, not a website, ending with .jpg or .png, etc. Take the link in the above picture for an example.
search from GIFs gallery
UChat provides you with a GIFs gallery, you can search what you need here.
from Library
Library is the place you can see all the photos, GIFs, audios and videos you have uploaded before. So that you don't need to re-upload the same media, just find them in your library.
Send Card
...
Card is used to display a serious of information nicely like product information. There are 4 factors in a card, picture, title, subtitle and button.
Info |
---|
Please note that to show a card, you must have a title and at least one other factor, picture, subtitle or button. If you want to send card in WhatsApp channel, you will need to create “Carousel Template” and then use “Carousel template” instead. |
Send "For Each"
This message type is also showing cards but in a more automatic way. With "For Each", you don't need to type in each card yourself. It automatically displays all items in a JSON variable. Check Action Step - JSON Operation if you have no idea about what is JSON variable.
...
choose a JSON variable first
click "</>" or type "{{" in the text box
choose "ITEM" to get a sample item from the JSON variable
Value in the JSON variable:
...
Value in "ITEM":
...
The "Sample data" is to quickly fill in the "JSON Path" field. For example, as shown in the picture, click the "price" row, and "$.price" appears in the "JSON Path" itself. This means that, we are displaying the price of each item here. If there is no sample data prompted, you can fill in the path yourself by typing "$.", which refers to each item in the JSON variable, followed by the key of a value.
Value Format
Moreover, for numbers like percentage and price, for date value and time value, UChat has different formats listed for you. For example, in the above picture, the price value is "5" and after choosing a "F03" format, the bot will display it as "$5". While the value in the variable is still the number "5" so that you are able to use it in math calculation or condition comparison without malfunction.
Hidden Keys
Great! Now you see how to use the "For Each". Apart from the keys in the JSON variable, there are 3 hidden key you might need:
...
Key Name | Description |
---|---|
INDEX | index of the item started from 1 |
KEY | key name of the item |
VALUE | value of the item = the item itself |
INDEX Example
When you have a JSON with a list of JSONs in it, use INDEX for checking the sequence number of an item. Let's add an index number before the item name:
...
Testing result:
...
KEY/VALUE Example
When you have a JSON as shown in the following picture instead of a JSON holding a list of JSONs,
...
These are what you will get by using the three keys:
...
Testing result:
...
Send SELECT after "For Each"
When you add a button to your "For Each", the button is going to show with every card. Usually, you might want to put a "Buy" or "Select" button here in the case that you are listing some products or options.
How does the the bot know that which card did the user select?
...
When you select next step for the button, choose "Select":
...
Then select a next step as you usually do, like a Send Message Step to show the selected item or Action Step to deal with the data. You can then access the selected item in "SELECT":
...
For example, let's add a Send Message step, find the system field "SELECT":
...
click the row "item" to get the path "$.item" or type in the path directly
in the JSON path, add key name if needed. In this case, let's show the name of the selected item. So add ".name" after the path.
...
You will see this when you test it:
...
Send Dynamic Content
Dynamic Content helps you send out an API request, to your server or a third-party server, in order to get a response to display. The server can reply differently each time. In this way, your bot is able to display dynamic content to your users.
This feature is practical when your bot logic is complex and rely heavily on other servers.
For example, you have your own AI algorithm to analyze users' questions and calculate corresponding response on your server, in this case, you can send the question in the API request. And the server can generate a response based on the question. Finally, the server send the response back to UChat to display to your users.
A response message can contain several messages, buttons and quick replies with actions. You can even apply simple actions like add tag directly in the response JSON.
Check Action Step - External Request for how to send an API request,
and Response Format for message formatting guidance.
Send Location
...
To send a location, search it on a map, then right-click it to copy its latitude and longitude values:
...
Enter your location name, paste the data and add a label if needed. A label gives additional information like floor or room number.
...
Send Ecommerce Product
Check Ecommerce for how to setup and use built-in ecommerce system.
Send Message Debug Text
The Send Message Debug feature is designed to facilitate debugging for chatbot builders by providing an easy way to send debug messages specifically to testers.
Accessing Debug Text:
Navigate to the Send Message and select Debug Text
...
Adding Testers:
Navigate to Tools -> Testers-> New Tester
Identify the user(s) who will serve as testers for your chatbot.
Add the user(s) to the testers list.
...
Sending Debug Messages:
Once the testers are added, trigger the flow preview where you have incorporated the Send Message Debug Text.
During the preview, the debug text will be visible to the added testers.
Facebook Channels
Send Message
Facebook allows the bot to send texts with 3 buttons and 10 quick replies at most.
Send Text with Button & Quick Reply
...
The difference between button and quick reply on Facebook Messenger:
Type | Usage |
---|---|
button | once sent, always in the conversation to be pressed |
quick reply | similar to button, but disappear when used |
Try to add some buttons, quick replies and test it. You will see their differences.
WeChat Channel
Send Message
WeChat allows the bot to send texts with 10 buttons at most. Message type with WeChat:
...
Send Article
...
This is how it looks like in the chat:
...
Send Mini Program
You can also send mini-programs that associates with your official account.
...
WhatsApp Channel
Send Message
Message types with WhatsApp:
...
Button in WhatsApp is a bit different from that in Facebook. A button in Facebook can be pressed for multiple times while in WhatsApp, only once.
Supported Message Types
UChat supports sending the following types of WhatsApp messages:
Template Message: Pre-defined messages approved by WhatsApp. Users can create new templates directly in UChat or sync existing approved templates.
Single Product Message: Showcases a single product from a Facebook Catalog. Requires a Facebook Catalog ID and Retail ID.
Multiple Products Message: Showcases up to 30 products from a Facebook Catalog. Requires a Facebook Catalog ID and separates products with commas.
Catalog Message: Displays a list of products from a Facebook Catalog. Requires a Retail ID, body text, and footer.
List Message: Presents a list of options for users to choose from. Requires capturing the user's selection and directing the flow based on the chosen option.
WhatsApp Flow: Create a WhatsApp flow to automate the sending of messages and interactions with users.
Note: Linking your WhatsApp number with your Facebook Catalog is mandatory for sending product-related messages (Single Product, Multiple Products, and Catalog Message).
Sending a Template Message
Create or Sync Template: In the Bot Content section of UChat, you can create a new template directly under "Message Templates" in UChat or sync existing approved templates by clicking the "Sync" button.
...
Use in Flow: In "Mensage node" select "Others" and the "(WhatsApp) Template Message" into your UChat flow.
...
Select Template: Choose the desired template from the dropdown menu.
...
Personalize (Optional): If the template includes variables, you can personalize the message content.
Sending Single Product Messages
Facebook Catalog Requirement: You need a Facebook Catalog for these message types.
Use in Flow: In "Mensage node" select "Others" and the "(WhatsApp) Single Produtct" into your UChat flow.
...
Catalog ID & Retail ID:
Locate your Facebook Catalog ID.
Identify the Retail ID, which is the content ID for your product catalog feed.
Insert your Message Informations: Provide the Retail ID, message body text, and footer text for your Catalog Message.
...
Note: You need link your WhatsApp number with your Facebook Catalog before sending product messages.
Sending Multiple Product Messages
Facebook Catalog Requirement: You need a Facebook Catalog for these message types.
Use in Flow: In "Mensage node" select "Others" and the "(WhatsApp) Multiple Products" into your UChat flow.
...
Catalog ID & Retail ID:
Locate your Facebook Catalog ID.
Identify the Retail ID, which is the content ID for your product catalog feed.
Insert your Message Informations: Provide the Retail ID, message body text, header and footer text for your Catalog Message.
...
Note: You need link your WhatsApp number with your Facebook Catalog before sending product messages.
Sending a Catalog Message
Use in Flow: In "Mensage node" select "Others" and the "(WhatsApp) Catalog Message" into your UChat flow.]
...
Catalog ID & Retail ID:
Locate your Facebook Catalog ID.
Identify the Retail ID, which is the content ID for your product catalog feed.
Insert your Message Informations: Provide the Retail ID, message body text, and footer text for your Catalog Message.
...
Sending a List Message
Use in Flow: In "Mensage node" select "Others" and the "(WhatsApp) List Message" into your UChat flow.
...
Define List Items: Select the list items you want to include in your List Message.
...
Capture User Selection: It's crucial to capture the user's chosen option from the list.
...
Conditional Routing: Use a Condition Block to check the user's selection and direct the flow accordingly.
...
Note: Steps 2-4 for List Messages are essential to ensure proper flow based on user interaction.
Sending a WhatsApp Flow Message
Use in Flow: In "Mensage node" select "Others" and the "(WhatsApp Cloud) WhatsApp Flow" into your UChat flow.
...
Set the WhatsApp flow to be sent.
...
Note: See the WhatsApp Flow creation documentation here:
Warning: Do not use the action node to send templates to bot users, this will generate a "forbidden action" error. To do this, use the message node.
SMS Channel
Send Message
SMS bot can send only text and image.
...
Voice Channel
Send Message
Send Text / Audio
...
You can have the bot read out the text with a specified language or record your own audio and upload it.
In the voice channel, you can also provide a audio url directly in the send message node.
You need to make sure the audio url is publicly accessible, it should start with https, and end with .mp3
You can also use the same audio url directly in the question node.
You can find more voice channel supported message type here.
Info |
---|
Note - For voice bot, you can set a default language at the Green Start Point or set it separately for each send message/question step. |
UChat has built a Mini-App called "VoiceMaker" using a third party API which provides you with a better quality of text-to-voice conversion! Download the Mini-App in integration section. The documentation about "VoiceMaker" is in progress.
Google My Business - Send Message
Message types with Google my business flow:
...
All types are covered above, please check message type in common for all/some of the channels. Find location type in "Rich Media".