Want to Use WhastApp API?

Building a Chatbot in Mumble: The Canvas Guide

Picture of Mumble Team

Mumble Team

May 25, 2026| זמן קריאה: 7 דקות

Summary

The canvas is a visual workspace where you build the conversation flow of a chatbot in Mumble. Every step in the conversation is a block, and the links between blocks define where the conversation goes based on the customer’s reply. This article explains the different blocks you build a bot from, the actions you can trigger on each block, the difference between canvas variables and message template variables, and the toolbar at the bottom of the screen.

Background: where the canvas fits in

The chatbot in Mumble is made up of two separate areas: the settings area and the canvas area. In settings (a separate screen) you define the bot’s name, the keywords that trigger it, the customer lists it runs on, and reset conditions. In the canvas you build the flow: what the bot says, how the customer replies, and where the conversation continues. Don’t confuse the two. Settings = who, when, under what conditions. Canvas = what the conversation says and how it flows. The settings screen has its own article (link at the end).

The basic structure of a flow

Every bot flow is built on the same recurring principle:

  1. The bot sends a message.
  2. The customer replies (text, a button tap, or even not replying at all).
  3. The bot checks the reply and moves to the next block based on the result of the check.

The opening block (the main one, marked “Start of conversation” or “Main”) is special in that it captures any message the customer sends to the bot. In its “Customer message” field you will see the * sign, which means “matches anything.” There is nothing to edit there. Every other block in the canvas requires you to define the reply that leads to it: exact text, a button value, or * if you want it to capture anything as well.

Block types in the canvas

In the left sidebar of the canvas there are nine block types you can drag into the flow:

  • Regular message. Free text. Sends the customer a message within 24 hours of their last message. Does not require Meta approval. The most common use.
  • Message template. Sends a message template that has passed Meta approval. Needed when the customer has not written in the last 24 hours (outside the conversation window). Requires an approved message template on the account.
  • Menu message. A list of options. An important point: in the Mumble preview it looks like plain text, but to the customer on WhatsApp it appears as a real interactive menu. Don’t be confused by how the preview looks.
  • Buttons message. Up to three Quick Reply buttons. Three is the cap Meta enforces, and Mumble enforces it in turn.
  • Media message. An image, video, document, or audio. Only one file is allowed per block.
  • Agent. Hands the conversation to a human agent. At this point the bot finishes its role and exits the conversation.
  • Chatbot. Transfers the conversation to another bot. Useful for splitting into separate bots (for example, a Hebrew service bot and an English service bot, or a main bot that splits into topic-specific bots).
  • HTTP request. Sends an API call to an external server, receives a response, and returns it to the flow. Useful for retrieving information (for example, order status from your system) or for an action (creating a lead in a CRM).
  • AI. Activates Dolores AI on the current conversation. The bot will reply to the customer using AI based on the prompt and knowledge base you configured in Dolores.

Configuring a response: what each block can do beyond text

Every response block has a panel called “Actions” where you can trigger additional actions unrelated to the message content. The available actions:

  • Continue to the next message? If yes, the bot moves automatically to the next message without waiting for the customer to reply. Useful for multi-line opening messages, for a continuous explanation split into several short messages, or for moving from an introduction step to a question step.
  • Add the customer to a list. Adds the customer to a list of your choice the moment they reach this block. Useful for marking “interested in product X,” “reached the payment page,” or “requested an agent.”
  • Change the customer’s status. Updates the conversation’s status to one of the 18 possible statuses.
  • Turn off the bot for the customer. The bot exits the conversation from that point on. Common at the end of a flow, or before a manual handoff.
  • Save point. Marks the block as a future continuation point. If the customer does not reply and returns after the bot has been reset, they will return here and not to the start. Useful in long flows you don’t want to drop out of.
  • Save the customer’s response to a variable. This action turns the canvas into a dynamic flow: the customer’s response is saved for use in later blocks. When you enable it, the message the customer sends after this block will be saved to a variable you name. You can use the variable in any block that comes afterward, for example: “Nice to meet you {{first_name}}, how can I help?”.

Variables in the canvas

A common point of confusion: the variables in the canvas are completely different from the variables in a message template.

  • In a message template (the one that passes Meta approval): numeric variables only, {{1}}, {{2}}, {{3}}. This is a Meta requirement.
  • In the canvas (within the bot’s internal flow): named variables, like {{first_name}}, {{Business Name}}, {{utm_campaign}}. This lets you refer to them clearly by their meaning.

The variables in the canvas fall into two groups:

  • Custom fields. Fields you defined on the account (Birthday, Business Name, Role, etc.). The values come from the customer profile. If you saved a customer response to a variable in the canvas, it becomes a custom field on the profile.
  • System variables. Over 50 fields that Mumble populates automatically, including identity (full_name, email, phone), conversation state (conversation_status, last_interaction), source (utm_campaign, fbclid, gclid), and device (device, country).

To add a variable to the block text, open the variables menu (the variable icon in the text editor), select the variable, and it will be inserted in the format {{variable_name}}.

The toolbar at the bottom of the canvas

At the bottom of the canvas there is a toolbar of buttons for managing the session:

  • On / Off. Activates or deactivates the bot in production. When the bot is off, the icon is red and conversations will not enter it.
  • Save. Saves changes to the canvas. The canvas does not save automatically, so it is important to click it after every significant change.
  • Settings. Opens the bot’s settings screen (name, keywords, assignment, reset).
  • Lock. Locks the canvas against accidental editing. Useful when working as a team.
  • Zoom. Three buttons: zoom out, reset view, zoom in.
  • Auto-arrange. Arranges the blocks in the canvas in a logical layout. Useful in large bots that have turned into a messy collection of blocks.
  • Logs. Shows the logs of the HTTP requests in the bot. Needed when an HTTP block isn’t working as expected and you want to see what the external server returned.
  • Test bot. Opens a test conversation alongside the canvas, where you can run the bot as if you were the customer, see how each block responds, and verify that the flow works before going live.
  • AI checker. Runs an analysis of the bot with Dolores AI and shows potential issues: flows that end in mid-air, branches that receive no response, a mismatch between a button and the block waiting for it.

Operations: every block counts as one operation

It is important to understand up front: each run of a block counts as one operation out of your plan’s monthly quota. A 5-block bot that a customer goes through end to end = 5 operations. The plans include 25 (Standard), 100 (Pro), 500 (Scale), or 1,000 (Enterprise) operations per month for bots. Going over costs one dollar per operation.

Implications for design:

  • Shorten flows. If a flow needs five blocks to reach the same outcome as three, the three are preferable.
  • Use “continue automatically” carefully. It’s convenient, but every automatic continuation still counts as a separate operation.
  • HTTP and AI blocks also cost one operation each. For quota purposes, they are measured like a regular text block.

Example: a language-selection bot

A simple three-block flow that demonstrates the canvas:

  1. Main block (captures any incoming message, *). The bot responds: “Welcome. Which language would you like us to chat in?” with two buttons: “Hebrew” and “English.”
  2. “Hebrew” block (triggered when the reply is “Hebrew”). A Chatbot-type block that transfers the conversation to the “Customer Service Hebrew” bot.
  3. “English” block (triggered when the reply is “English”). A Chatbot-type block that transfers to “Customer Service English.”

Two branches, three blocks, and every customer who enters is transferred to the right bot within one or two operations.

Common issues

The bot doesn’t respond when a customer writes

Cause: either the bot is off (red icon in the bottom toolbar), or the customer is not on the list the bot is assigned to (depends on the assignment settings in the settings screen), or the keyword that triggers the bot was not entered. Solution: check the status in the toolbar, and the “Chatbot assignment” area in the settings screen.

The customer taps a button and the bot doesn’t respond

Cause: in the block the button is supposed to lead to, the “Customer message” field does not match the text on the button. The text returned to the customer when they tap a button is the text of the button itself. Solution: make sure the text in the “Customer message” field of the target block is exactly identical to the text on the button (including emojis, spaces, and punctuation).

A menu message looks like plain text in my preview

Cause: the preview in Mumble always shows menus as text. Solution: this is not a bug. On the customer’s side in WhatsApp, the menu will be displayed as a real interactive menu with a clickable list. For a real check, send it to yourself or to a test number through “Test bot” or through a real conversation.

{{first_name}} appears as text in the message and isn’t replaced with the name

Cause: either the variable was not inserted through the variables menu but typed manually with a space or a typo, or you did not configure the variable properly (the variable is replaced with the field value from the customer profile). Solution: delete the variable and reinsert it through the variables menu. Check on the customer card that the field is actually populated.

The bot stops in the middle and doesn’t continue

Cause: usually, you reached a block where “Turn off the bot for the customer” is enabled, or a dead end: a block the customer responded to with something that no follow-up block catches. Solution: use the “AI checker” in the bottom toolbar. It will run on the bot and report blocks with no continuation, buttons with no target block, and other gaps.

Related articles

Bottom line

The canvas is a response block, a button or text that drives the next step, and another response block. The block types, the actions panel, and saving the customer’s response to a variable are everything you need to build a flow that works. What complicates bots is the settings layer, the actions panel, and the variables layer, so it’s worth planning the flow on paper before you start dragging blocks.

Picture of Mumble Team

Mumble Team

מאמבל מתמחה בשינוי תקשורת עסקית באמצעות פתרונות וואטסאפ חדשניים. עם התמקדות באופטימיזציה של מכירות, ניהול לידים ואוטומציה של אירוסי לקוחות, Mumble מעצים עסקים לצמוח בצורה חכמה ומהירה יותר. עם תשוקה ליעילות וחדשנות, הצוות ממשיך להגדיר מחדש איך חברות מתחברות עם הלקוחות שלהן.