Create your Bot

Create your Bot

Creating a bot is very easy. Click on the plus button on the right bottom of the page to create a new one. First, select the type of bot you want to create (traditional or visual IVR). A visual IVR bot has fewer configurations, the absence of semantic hooks and question nodes, and reduced configurable settings for the menu node.

After that, it is possible to create a bot from scratch or select one from a template. The template is represented by the flows within the Unassigned  Flow section.
In case of a bot created aside from a template, saving the new bot will redirect you to the Flow Designer.
A bot is made up of one or more flows: a flow is just a section of reusable conversation. The easiest bot is made up of just one flow, but, in order to create a manageable and maintainable bot, it's highly recommended to avoid configuring all a conversation within a single flows.


Below you can see a very easy flow, where a customer selects an option and then he is routed to a queue of specialized agents willing to provide the necessary support.


A flow can be built through the selection of various types of nodes, each providing a specific functionality. The node types are divided in five categories:

  • Basic
  • Technical
  • Database
  • Whatsapp
  • GenerativeAI
  • Terminal


The Basic category contains the nodes that allow the bot to have interaction with the user. For example, it's possible to write a message or ask a question.

The Technical category allows the bot to offer a service (i.e. authentication, write and send an email) or to manage the flow (i.e. flow jump, delay, crossroads, ...).

The Database category is available only with Crab integration and allow the bot to access and/or take advantage of the database data.

The WhatsApp category is available only for company with a WhatsApp connector available and allows creating specific type of messages, available only on this channel.

The GenerativeAI category is avaiable only if the company has the Knowledge Base functionality enabled. It allows to add generative capabilities to your bot. See Generative AI chapter for more information

Terminal nodes are used to end the flow or handover the conversation to an agent, via a queue.

All these types of node share some common logics. Each node has:

  • A unique identifier.

  • An icon and a color showing respectively the type of the node and the cateogory.

  • A hook label, a unique label that identifies the node. It can be blank (not set). It’s useful for reporting purposes and for recognizing jump target in case of semantic hooks or jump nodes.


More details on the ConvyAI Administration and Reporting User Guide - chapter 6.3.3 Type Of Nodes

Handover details

The conversation can be handed over to the "ConvyAI Agents".

The handover to "ConvyAI Agent" connects the customer to an agent logged on "ConvyAI Agent Desktop" interface.
More specifically, you can choose where to route the customer by selecting a queue from a dropdown menu or specify it in a variable with the queue eri as value.
Optionally, it's also possible to configure a preferred agent to manage the conversation, as same as for the queue, by the dropdown menu or by defining a variable fot the agent eri.


In the node it's possible to set a numeric priority: Normal (0), High (2), Critical (4) from a menu or set it dynamically with a variable (higher the number, higher the priority). A queue is sorted by priority, so if a conversation with priority zero (Normal) and a conversation with priority 5 are enqueued, the first routed will be the conversation with priority 5.

In the end, it's also possible to select a flow that will be executed after the handover in three different cases:

  • Inactivity of the customer: if a customer doesn't interract for the specified amount of time the conversation will be considered inactive and the system will de-assign it from the agent and use a flow to handle it. With this feature the system automatically free agents from inactive conversations until the customer interacts again. In that moment the conversation can be handled by the configured bot or can be routed back with a preferred agent, i.e. to the latest agent that handled that conversation.

  • Error during the handover procedure: when the queue timeout expires without any available agent picking up the conversation, the handover process terminates with an error. You can handle this case with another section of the bot or enqueue the conversation again, maybe with different logics and priority.

  • End of handover: when the handover procedure ends correctly, a flow can be executed to further manage the customer or let him answer a survey or give some feedbacks.

priority and jump