Frequently Asked Questions

What is a chatbot?

A chatbot is a conversational user interface — a tool that receives conversational input (spoken or typed) and responds in a conversational manner.

What can I do with a chatbot?

A chatbot is just a type of user interface — so you can do nearly anything. Popular uses include:

  • food ordering (PizzaBot, BurgerBot)
  • customer service (HelpBot)
  • information service (NewsBot, WeatherBot)

Think about how what you customers might want to have a conversation about, and try to design a bot that fits their needs. For more ideas about what bots can do, see our Introduction to Chatbots.

How do chatbots work?

A chatbot is a conversational user interface. A user sends a message to the bot, and the bot responds. Between user input and user output, the bot can perform actions.

If you have ever used a command line terminal, you have a basic understanding of how chatbots can work: input from user, code execution, output to terminal.

The important interface difference between a terminal and a chatbot is that a chatbot should be conversational. It should understand informal inputs (“Hi!”) and respond in conversational language.

The BotCentral Platform connects with the Facebook Messenger app, so users can talk to your chatbot by sending a message to a Facebook page. Our platform handles pattern matching, replies, contextual menus, and some code execution. Additionally, your chatbot can be connected to RESTful web services — allowing it to fetch information or send requests to your APIs.

Should I connect a bot to a Facebook page or to a Messenger app?

We recommend setting up a bot to connect with a Facebook page — at least at first. This is much easier to set up, and you can immediately start testing your bot by sending a message to the page.

Connecting your bot to a Messenger App requires advanced setup, and is not recommended at this time.

Can BotCentral chatbots connect to non-Facebook platforms?

At this time, BotCentral bots can only be used on Facebook Messenger. (We plan to expand this in the future.)

How to export a bot?

To export a bot, go to your dashboard, then select the Settings menu for the bot you want to export.

The 'Export Bot' link is under 'Settings.'

The ‘Export Bot’ link is under ‘Settings.’

How to import a bot?

To export a bot, go to your dashboard. Next to the Create New Bot button is an expandable menu that hides an Import Bot button.

Import Bot

Import Bot

Can the chatbot remember things about a user?


You can define variables with setBotVariable(). Variables can be set to persist for a session or indefinitely.

How can I “pattern match” to any input? Can I simply have a “wildcard” pattern matching message?

New Bots are created with a built-in default message. This will be triggered if a user input message does not match any other patterns.

The user’s input can then be accessed with the {$query} variable in text content, or the getCurrentUserMessage() function in JavaScript.

What’s the difference between a Bot Response and Bot Message?

Message type. The choices are: Bot Response, Bot Message, and Default.

Message type. The choices are: Bot Response, Bot Message, and Default.

In the Type selection menu when you create a bot, there are three options:

  • Bot Response — This should be used for messages that are triggered by user input.
  • Bot Message — This should be used for messages that are triggered by other messages (usually, using the setTriggerNextMessage() function).
  • Default Search — This sets the message as the default, so it will be triggered by any user input that does not match as pattern.

If I set multiple text result strings in a static text responder, will they all be sent?

No, only one will be sent, chosen randomly.

If you want to sent your responses in multiple chat bubbles, you can use Pre-Result and Post-Result. Combined with the main Result, you can send three chat bubbles.

Alternatively, you could use botContext.sendImmediateReply(), and pass an array of strings. These strings will be sent one after another in separate chat bubbles. You can use this function in any of the places that accept JavaScript.

How can I trace debug logs?

Send the message display userid from the Messenger user to the chatbot. The chatbot will respond with the user id, which you can paste into the Debug tool built into the Messages Editor.

What data serialization formats can be consumed by the web Responder?

At this time, the Responder only supports JSON.

Is there a good way to keep bot messages organized?

Bot Messages are displayed in the BotCentral menu alphabetically. If you have more than a few messages, we recommend prepending their names with double-digit numbers:

  • 00 Welcome
  • 01 Menu
  • 02 Help

You can also use numbers to group related messages:

  • 00 Welcome
  • 00 Welcome Back
  • 01 Menu
  • 01 Help
  • 02 Ask User For Input
  • 02 Compliment User on Choice

This is not required (and you might come up with a better system), but this is what we do for many of the bots we build.

How do you jump from one message to another?

You can use the setTriggerNextMessage() function in any of the Embedded Code panels to hop from one message to another.

How can I present a menu to the user?

There are three ways to present menus to the user: