How to Use Chatbot Builder Elements
With SendPulse, you can create a chatbot that will greet your new subscribers, assist users, sell products, as well as collect and filter data and send it to you for further processing. All of your flow elements can be dragged to the working field by left-clicking on them.
In this article, we will talk about the elements you can add to your chatbot flow.
Start
You can choose the first element that launches your flow: "Message," "Filter," "Randomizer," and "API Request."
For example, using the "Filter" and "API Request" elements, you can check the subscriber's data and personalize your communication by starting your flow only for those users who have or do not have the requested data or branch your flow and send different messages. Using the "Randomizer" element, you can diversify your chatbot's auto-replies or create an A/B test.
To make an element a start element, connect the desired element to the “Start.”
To see which trigger starts your flow, click on the "Start."
Message
Using the "Message" element, you can create a message of any type and add various blocks to it: text, video, gallery, buttons, user data request, and so on.
Text is a default element. You can personalize text messages. To do this, click on the {} in the right corner of the text field and choose a variable from the drop-down menu. Each user will receive a message with a value of the given variable from their contact info in your auditory list.
You can add the following types of variables:
- Custom variables for contacts. You can transfer variables when a user subscribes to your chatbot. Set and update variables manually in the "Audience" section. Set and update variables automatically in a flow using the "Action — set variable," "User input," and "API request" elements.
- System variables. You can insert the text of the last message from your subscriber using the
last_message
variable. You can also add a subscriber ID usingcontact_id
and a subscriber Telegram ID usingtelegram_id
. - Global variables. You can create your own variables in your bot settings and use messages with predefined values that will be shared with all of your subscribers. By default,
$bot_name
,$bot_id,
and$current_date
are available.
You can also format text to better visualize and highlight information.
Button can call the next message in the flow. For this, specify the name of the button and link it to the next block. Otherwise, the button can transfer a user to a website. For this, specify the name of the button and add a link to a website.
Click + Add button to add a button to the message.
Select the type of button: "Continue flow," "Link" or "Payment."
Name your button in the first field. Note, you are limited to 20 characters. Also, you can add emoji to the button’s text.
The text on the button should be easily understandable - it’s important for users to understand what will happen when they click on the button and know what specifically they need to choose. Make sure that the next element in your flow corresponds to what the button says it will do to maintain the logic of your bot.
For a button with the "Link" type, you can also attach a link to a third-party resource.
After the button details are set, click Add.
Not more than three buttons can be added under one element.
To add an additional element to the "Message" block, click "Add" and select the necessary element.
Image allows you to send pictures in a message. Click Select file to upload an image from a computer or a device, or drag the necessary file to the upload area.
To upload an image from a link, select "Upload image by URL" in the drop-down menu and specify the link to the image in the field.
You can also specify a dynamic path to the image. For example, using the "API request" element or an a360 event, launching the flow via API, you can send a product picture and use this variable in the following message, displaying order data to the client.
To do this, select a variable or specify a JSON path in the field and pass the path to the image in the variable's value. Thus, each client will receive an image according to their order.
Card is an element where users can present anything they sell. It can contain an image of an item, its title, description, and a button. To add several cards, click +.
The service allows you to add up to ten cards in one element. To switch between the cards, click the arrow buttons. To delete a card, click the cross button.
If you add two or more cards in the editor field, they will show up in a row and go beyond the block.
File lets users sharing documents with their subscribers. Click Upload from disk or drag a file into the upload area to add it to the message.
If you have a catalog with products configured in Facebook Commerce Manager, you can add a card or a list of products. Product cards can be used to, for example, advertise hotels, flights, travel destinations, and vehicles.
Enter the Catalog ID, Product ID, message body, and footer. To add multiple products, divide the products into sections.
Learn more: "How to Add a Product Card in a WhatsApp Chatbot."
Delay imitates typing. Specify the time in seconds during which the input indicator will be displayed to a subscriber.
A message is not sent when the indicator is shown. Correlate the time of typing and the size of the message it is displayed before.
User input allows subscribers to enter a value that you can validate by type and save to variables in your "Audience" tab. Thus, you can save phone numbers, email addresses, links, geolocations, dates, and all other data.
You can also choose the period to wait for a response from the user. If the user does not respond within the selected time, the wait for a response from the user will expire and the chatbot will no longer check the entered data for validity to record user's response.
Also, under the message, you can add quick replies buttons so users can choose from predefined responses instead of typing their own.
You can add quick replies for data with the "String," "Number," and "Regular expressions" validation types. For example, enter a specific word by the user, enter the quantity of a product, or select a product category.
Quick reply is a short answer in the form of a button. A subscriber clicks this button, and the text is sent as a message in a chat triggering the corresponding flow. Click Quick replies to add a quick reply. Type the text and press "Enter" to save it. The input field in quick replies is limited to 20 characters. Click the cross in the quick reply box to delete it.
You can divide your scenario and send the next message, depending on whether the user entered the requested data (green dot branch) or not (red dot branch).
Delete an element with the bin button, move it up and down with the arrow buttons. The buttons appear when you pause a mouse pointer on an element.
Flow
It allows you to link another flow to the one you are creating. Drag the "Flow" block to the editor and link it to a button or a quick reply, which will trigger this flow. In the "Flow" panel, open the "Start another flow" drop-down menu and select the flow you want to add.
Action
You can perform the following actions with the subscriber's data who gets to the "Action" element:
- open the chat (open a chat with a subscriber in the "Conversations" section);
- unsubscribe from the bot (unsubscribe a user from bulk and automated messages);
- block in a group or channel (block a subscriber in a selected group or channel);
- unblock in a group or channel (unblock a subscriber in a selected group or channel);
- add tag (assign a tag to a subscriber);
- remove tags (remove a tag assigned to a user);
- add variable (set the variable value to be assigned to the subscriber or updated. You can also create a new variable);
- send webhook (send a POST request with user data to your URL);
- create deal (create a deal in your CRM when a specific action is performed, for example, clicking the "Buy" button).
- notify me (send a message on behalf of your chatbot to the system chatbot or Telegram group).
The "Block in a group or channel" and "Unblock in a group or channel" actions are available only for Telegram chatbots.
Learn more: How to Use the "Action" Element.
Filter
Segment customers based on their personal data and previous messages received. Select the element in the left sidebar, and drag it after the element that will start your script branching.
Then select the condition itself. You can filter your customers by:
- variable value (all types: string, number, email, phone, and link);
- assigned tag;
- subscription to your business account;
- subscription to another business account;
- number of followers;
- interaction with your flow;
- campaigns received;
- last activity;
- subscription date;
- day of the week;
- trigger date;
- trigger time;
- payment;
- group or channel membership;
- chat opens;
- incoming messages;
- unread messages.
You can only check your or another business account’s subscription status and the number of followers only in Instagram chatbots while channel or group membership can be checked in Telegram chatbots.
Read also: How to Use the "Filter" Element in the Chatbot Flow Builder.
Combine conditions by adding the operators “any” or “all,”, or add independent additional conditions.
After adding conditions, add the additional flow elements to each of the Filter element options if the condition is met (green dot) or not met (red dot).
Pause
This is the period during which no automatic messages are sent to the subscriber. The pause can be set in minutes, hours, or days.
You can choose to pause in between using the "Time period" option or until a specific time using the "Till date" or "Till Time" option.
The "Till date" option is only available for Telegram and VKontakte chatbots.
Select the "Time period" option and set a pause between sending flow elements from 1 minute to 24 hours. Use it in a flow, for example, to warm up a client. After the specified time, the next message will be sent.
If you select a pause of more than 1 day between elements, you can set the time at which the message will be sent. The system considers the next day any time after 00:00 according to the time zone set in the settings of your personal account.
Also, you can select "Till date" or "Till time" and set a delay until a particular time. For example, you can use this option to indicate business hours or promotion hours.
Also, using the "Pause" element, you can set the condition for executing the next element of the flow: always or when the subscriber is inactive.
API Request
Send requests to a third party server to create objects or retrieve data. Get data and use it in your chatbot messages.
You can save the received data to a variable or add it to a message as JSONPath.
Drag the "API Request" element to the workspace, connect it to the element, after which you want to retrieve data. Select the type of request and enter the URL to send the request to.
After testing the request and receiving a successful response, configure the mapping settings. If you need to save the value from the response to a variable, select the key from the received request and the variable to save to. If you want to use the received value once without saving it to a variable, copy {{$ ['somekey'] ['nestedkey']}}
and use it in the next message element.
Random choice
Send elements from your chatbot script at random for A/B testing, creating quizzes, and more. You can customize the size of the recipient group for each option and send random information and test different chatbot scenarios.
Drag the item "Random choice" element to the working area, connect it to the item you start branching the script from.
Adjust the ratio for each option — the percentage of users that will receive each option, or split the flow into equal parts. The higher the value, the more users will get this option.
Other Features
Use the zoom buttons to increase or decrease the editor box. Also, you can move the editor box to get more space for flow building.
To arrange all elements, click the magic wand button in the upper-right corner. All elements will be placed equal distances apart.
Last Updated: 21.02.2023
Sign up with
Sign in with Facebook Sign in with Google