Understanding Blocks
Blocks are the fundamental building units of your bot’s conversational flow. They are predefined components that handle specific functions, ensuring consistency and reliability. While you can’t create new block types, you can configure them to fit your needs.
Block Types Overview
Section titled “Block Types Overview”Blocks are the fundamental building units of your bot’s conversational flow. Each block serves a specific purpose and can be configured to fit your unique conversation needs.
1. Message Block
Section titled “1. Message Block”This block is for sending text messages to customers. The message can be any text and even the attribute value that can be set up in other block types and in the Attribute Sections.
The Message configuration has two sections: “General” and “Settings”. In the General Section, you provide the content where text and existing attribute names can be used by typing ’@’. Settings has optional configuration for enabling reactions.
Configuration Table:
| No. | Name | Purpose | Tabs |
|---|---|---|---|
| 1. | Content | Static text and dynamic value from existing attribute name by typing ’@‘ | General |
| 2. | Reactions Enabled | Switch to on/off the reactions in message | Settings |
2. Buttons Block
Section titled “2. Buttons Block”Buttons function as Quick Replies, providing users with pre-defined selection options such as specific menus, services, or product types. A key feature of this block is the ability to store a user’s selection as an ‘Attribute,’ which can then be reused to personalize later parts of the conversation. Attributes are managed in detail within the Condition Block and Attributes sections.
The configuration is divided into two sections: General, where you set up the bot’s message and the individual buttons, and Settings, where you define the visual layout and selection rules.
Configuration Table:
| No. | Name | Purpose | Tabs |
|---|---|---|---|
| 1. | Bot Message | The message content, including static text and dynamic attribute values (inserted by typing ’@’). | General |
| 2. | Button List | A list of Quick Reply buttons. Each button requires a label and a value, which is stored as an attribute for flow logic. | General |
| 3. | Button Layout | Select the organization of buttons: ‘Horizontal’ or ‘Vertical’. | Settings |
| 4. | Allow Multiple Selection | Enables or disables the selection of multiple buttons by the user. | Settings |
| 5. | Minimum Required | The minimum number of buttons a user must select to proceed. | Settings |
| 6. | Maximum Allowed | The maximum number of buttons a user is allowed to select. | Settings |
| 7. | Reactions Enabled | A switch to enable or disable customer reactions to the message. | Settings |
3. Typing Indicator Block
Section titled “3. Typing Indicator Block”The Typing Indicator block enhances the user experience and can be added anywhere in the flow. Specify the desired duration in seconds.
Configuration Table:
| No. | Name | Purpose | Tabs |
|---|---|---|---|
| 1. | Duration (in seconds) | Displays a typing animation for some seconds while the system processes a response to make the interaction feel more natural. | - |
4. LLM Block
Section titled “4. LLM Block”This block enables conversations with the LLM Agent. Use of the LLM service requires activation, which is managed under Settings → Integration → AI Assistant. Once the service is active and training is configured, only two fields are required: Instruction and Fallback Message.
[Video Placeholder for LLM Block]
Configuration Table:
| No. | Name | Purpose | Tabs |
|---|---|---|---|
| 1. | Instructions | The specific prompt for the Agent’s reply | - |
| 2. | Fallback Message | The default message returned if the LLM fails to respond | - |
5. Condition Block
Section titled “5. Condition Block”This logic block directs the conversation based on values collected in previous blocks. It acts as a central hub, allowing the conversation to branch out depending on the conditions set. For example, if a previous Button Block allows a choice of ‘A’ or ‘B,’ the Condition Block directs the subsequent conversation flow to Branch ‘A’ or Branch ‘B’.
The configuration requires setting up one or more branches. Each branch can contain one or multiple conditions. The entry checkpoint for all conditions in a branch can be set to “All” or “Any,” determining whether all conditions or at least one must be met before proceeding to the next message.
When the Condition Block is added to the flow, it initially displays a condition node and a default fallback branch placeholder. The user then creates branches, each with specific conditions, in the configuration panel, and these newly created branches appear as placeholders on the canvas. Finally, the user drags and assigns the appropriate blocks from the list into these placeholders. This structured sequence distinguishes the Condition Block from other block types in the flow.
Configuration Table:
| No. | Name | Purpose | Tabs |
|---|---|---|---|
| 1. | Attribute Name | The name of the attribute (data point) collected from a previous block, such as User Input or Quick Reply Buttons. | - |
| 2. | Operator | The comparison logic (e.g., Equal, Greater Than, Contains) used to evaluate the Attribute Name against the specified Value. | - |
| 3. | Value | The target value that the stored Attribute Name must be compared against to determine if the condition is met. | - |
6. Redirect Block
Section titled “6. Redirect Block”The Redirect Block, a Logic category tool, allows for the reuse of existing blocks or templates. This significantly reduces flow construction time and prevents duplication of effort. This block allows redirecting to both templates and blocks.
Configuration Table:
| No. | Name | Purpose | Tabs |
|---|---|---|---|
| 1. | Type | Choose whether to redirect to a “Template” or a specific “Block.” | - |
| 2. | Redirect To | Select the specific destination from the template list if “Template” was chosen, or from the block list if “Block” was selected. | - |
7. User Input Block
Section titled “7. User Input Block”The User Input Block is designed to collect data by prompting users to fill in a form field. It includes settings for a field label, value definition, and error message validation for incorrect input.
Configuration Table:
| No. | Name | Purpose | Tabs |
|---|---|---|---|
| 1. | Content | The message content, including static text and dynamic attribute values (inserted by typing ’@’). | - |
| 2. | Is Active | Toggle the block ‘On’ to request user input, or ‘Off’ to skip the request. | - |
| 3. | Input Type | Defines the data format (e.g., number for age, string for names, or email for addresses) to validate user input. | - |
| 4. | Save to Attribute | Saves the collected value to a specific attribute for use later in the conversation. | - |
| 5. | Label | The descriptive text that informs the user what information is being requested. | - |
| 6. | Default Value | A fallback value used by the system if the user does not provide input. | - |
| 7. | Error Message When Failed | The message displayed to the user if they enter invalid data, prompting them to try again. | - |
8. End Block
Section titled “8. End Block”The End Block is the logic component that terminates the conversation flow at a specific point. No additional configuration is required for this block; simply adding it to the canvas applies the termination logic.
9. Recommendation Block
Section titled “9. Recommendation Block”This block provides specific product or shop recommendations. There are two kinds of UI in the configuration form when the block is dragged into the canvas. The initial UI tells you that integration into the bot flow requires a prior setup completed in Settings → Integrations → API Integrations. After API integration is done, the form will ask some instructions, and key mapping between integrated data and the attributes used in the conversations.
[Video Placeholder for Recommendation Block]
Configuration Table:
| No. | Name | Purpose | Tabs |
|---|---|---|---|
| 1. | Instruction | The specific prompt for the Agent’s reply | - |
| 2. | Recommended Criteria | A list mapping data keys from the integrated POS system to specific attributes used within the conversation. | - |
Block Connection Rules
Section titled “Block Connection Rules”The system allows users to drag and drop blocks onto the canvas or move existing ones. The flexibility of connections between blocks varies depending on the type of the preceding block. The first rule is that a new block cannot be attached to the output node of a Condition Block, as it contains its own branches. Additionally, logic blocks such as the Redirect and End blocks cannot be followed by another block because they terminate the flow within their own configuration.
Block Compatibility Table:
| No | Block | Can be followed by (blocks) |
|---|---|---|
| 1. | Message Block | ALL |
| 2. | Buttons Block | ALL |
| 3. | Typing Indicator Block | ALL |
| 4. | LLM Block | ALL |
| 5. | Condition Block | Based on the branch block type |
| 6. | User Input | ALL |
| 7. | Redirect Block | NONE |
| 8. | End Block | NONE |
| 9. | Recommendation Block | ALL |
Block Deletion
Section titled “Block Deletion”To delete a block, click the Trash icon in the action bar. Keep in mind that deleting a condition block wipes out all branches connected to it, whereas other blocks are deleted one by one.