Chatbot types

Chatbot Types

Chatbot types are as follows.

  • Rule-based chatbots
  • Artificial intelligence (AI) chatbots

Rule-based Chatbots

Rule-based (opens in a new tab) chatbots work based on predefined rules and keyword recognition. These chatbots are used to help end users with simple customer service queries and frequently asked questions (FAQ).

Rule-based chatbots are also known as keyword-driven, flow-based, or decision-tree chatbots.

The chatbot functionality consists of the following:

  • Defining and recognizing keywords
  • Providing a series of options to the end user
  • Storing user responses in attributes
  • Defining rules or conditions

Rule-based chatbots do not use artificial intelligence (AI), However, a well-designed Rule-based chatbot can be as powerful as an AI chatbot.


For examples of rule-based chatbots, refer to the Create rule-based chatbot section.

Artificial Intelligence Chatbots

An artificial intelligence (AI) chatbot (opens in a new tab) uses machine learning and natural language processing to simulate human-like conversations. For more information about AI chatbots, refer to the AI Chatbots section.

Difference between rule-based and artificial intelligence chatbots

Rule-based chatbotAI chatbot
Works based on keywords.Works based on machine learning and natural language processing.
Supports limited freeform input from end user, based on predefined keywords.Supports freeform input from end user.
Provides predefined responses to end user queries.Extracts entities from end user messages (NER attributes) and uses these entities to continue the conversation.
The end user gets the experience of talking to a chatbot.Because an AI chatbot understands natural language, it can simulate human interaction and provides a better conversational experience.
Use when the chatbot structure is not complex.
Rule-based chatbots follow a decision tree structure. Example: If the end user needs to go to a specific dialog, they need to start from the main menu and go through all the submenus that lead to this dialog.
Use when the chatbot structure is complex.
The end user does not need to follow a specific path to go to the required action. Example: The end user types their query. If the chatbot is trained well, the user can go directly to the relevant dialog.

Chatbot Types based on Functionality

Chatbots can also be classified based on their functionality as follows:

  • Secured
  • Voice enabled
  • Integrated
  • Multi-lingual


If you chatbot handles sensitive information, you can protect the chatbot, its contents, and the information captured from end users during their conversation with the chatbot.

Use one or more of the following options to add layers of security to specific attributes, dialogs, or even entire chatbots.

Authenticated Dialogs

Some dialogs in the chatbot may contain sensitive data. Example: Dialogs that obtain or update personal information. Access to such dialogs needs to be available only to authenticated end users.

Use the authentication dialog to verify the identity of end users. When an end user enters a protected dialog, redirect them to the authentication dialog. The authentication dialog verifies the end user's data against either the Infobip People solution or a third-party application. If the authentication succeeds, only then the end user can access the protected dialog.

The lock icon in a dialog indicates that the dialog is protected.

How authentication dialog works

When an end user is authenticated, the authenticated predefined attribute is set to True.

You can configure authentication such that it expires after a specific period.  After this  period, end users need to authenticate themselves again. When the authentication expires, the authenticated predefined attribute is set to False. Example: The authentication timeout is set to 5 minutes. After authenticating themselves, the end user leaves the chat open and rejoins after 5 minutes. Because the authentication has expired, the end user needs to authenticate themselves again.

You cannot restrict Default and Session Expire dialogs through authentication.

You can add only one Authentication dialog to a chatbot. You cannot add an intent to this dialog.

Use the To Dialog element to route end users to the authentication dialog. Use the step-by-step instructions to create  a secured chatbot.


Use a Session expire dialog so that the chatbot session expires after a defined period.

Apple Authentication

If your chatbot uses the Apple Messages for Business channel, use the Apple authentication element. This enables you to authenticate end users against either the Infobip People solution or a third-party application, from within the Messages for Business application.

Authentication through API

Use the API element to configure authorization headers and response settings to GET user information from either the Infobip People solution or a third-party application.

Sensitive Attributes

When using outbound attributes to store potentially sensitive data, use the Sensitive data field to encrypt the attributes. The attribute value is displayed as a hashed value.

Example: The attribute is used for authentication and contains usernames or passwords.

Customized Code

Use the Code element to customize security for chatbots and chat content.

Voice-enabled chatbots

In addition to sending and receiving messages as text, voice-enabled chatbots can send and receive voice messages.

Chatbot to end user: Use either the Voice element or a voice-enabled element to send voice messages to end users.

End user to chatbot: Instead of sending text messages, end users can send voice messages to the chatbot. They can use voice messages to reply to the chatbot's question as well as to ask the chatbot any questions. Example: Instead of typing I want to build a chatbot, the end user can send this message as a voice message.


Voice functionality is available for WhatsApp.

How it works

Answers uses the following services for the voice functionality:

  • Text-to-speech: When you send a voice-enabled message in text format to the end user, the text-to-speech service converts it into a voice message when the end user receives it.
  • Speech-to-text: When end users send voice messages to your chatbot, Answers converts the voice message into text by using the speech-to-text service. From the message, the chatbot identifies the information that it needs to continue the conversation.

In AI chatbots, similar to identifying the intent of an end user's text message, the chatbot can identify the intent of an end user's voice message.

Create a voice-enabled chatbot

Do the following:

  1. Enable voice functionality for your chatbot.

  2. To send voice messages to end users, do one or more of the following:

    • Use the Voice element.
    • Use a voice-enabled element.


Use Answers channel elements to enable integration with other Infobip products and with external solutions.



Create rule-based chatbots in any language that Answers supports. AI chatbots support a limited number of languages. Refer to the Language section in Chatbot settings for a list of supported languages.

Need assistance

Explore Infobip tutorials

Encountering issues

Contact our support

What's new? Check out

Release notes

Unsure about a term? See


Research panel

Help shape the future of our products
Service Terms & ConditionsPrivacy policyTerms of use