Skip to main content


Inspiring technology by Hunters

Today, our Hunters tell us about Botpress — a platform for building enterprise and open source chatbots via which we can create, train, test and deploy custom bots. These bots can, for example, serve us as a source of information for users of a website or as personal assistants that allow us to centralize our commonly used services (sending emails, searching for information, scheduling meetings…).

What are Botpress’s characteristics?

The Botpress platform makes use of its own NLU engine to interpret user inputs. Natural Language Understanding, as its name says, is a branch of natural language processing and artificial intelligence that is based on understanding a given text. This engine allows it to analyse the messages it receives from the user and, based on the training provided, decide how to respond and what actions to take. 

A Botpress chatbot can respond to a user with content in the form of text, images, audio, or video, among other options. Its training is done through a graphical interface, where we define sequential conversation flows.

Fig. 1: Example of sequential conversation flow in the Botpress graphical interface.

Fig. 1: Example of sequential conversation flow in the Botpress graphical interface.

As we can see in the image (the “Thanks” node), it is possible that a user’s input receives more than one message in response.

It should be noted that it is possible to extract information contained in user messages, such as their name or email, and store this as variables in memory in the short or long term. In this way we could, for example, always refer to the user by name or send periodic emails (newsletter type) with news or offers; this makes it very interesting for applications across departments such as marketing.


How does it work?

Botpress’s response to our messages is obtained as follows:

Fig. 2: Message exchange lifecycle with Botpress

Fig. 2: Message exchange lifecycle with Botpress

  1. Upon receiving a message from the user, the NLU engine interprets the user’s intent.
  2. Botpress searches for the right answer in its training and the static content needed to respond. In the event that it is necessary to execute actions (Node.js code), these will be executed returning the obtained result.
  3. The dialogue administrator will send the returned output to the user.

Can we extend Botpress?

Due to its open-source nature, it is possible to extend it in various ways:

  • In addition to static content, there is the possibility of executing code via actions. Actions are Node.js code files that are provided to Botpress with which it is possible, for example, to perform operations or access external services such as REST APIs or databases.
  • We can also add Hooks, which allow you to execute Node.js code when specific events occur (for example, when the server starts or a conversation ends).
  • Another possibility would be to modify the visual section (for example, the web chat interface, adapting it to fit the style of our website) by creating new components or modifying existing ones.

What about its integration?

To integrate a Botpress bot we have several possibilities:

  • Access the bot via REST API (JSON Data Exchange), facilitating access and integration from other platforms, regardless of their programming language.
  • Integrate into a website using a JS script.
  • Integrate with communication tools such as Facebook Messenger, RocketChat, Telegram, Microsoft Teams and Slack, among others.

Success story with Botpress

VR Bank (a German financial institution) has used Botpress to streamline and automate the loan application process. This bank receives more than 3000 loan applications per year, the processing cost of which usually exceeds €400 each, more than one million euros per year.

To improve their service and reduce costs, VR Bank together with Botpress designed and implemented AVA, a conversational AI solution that delivers tailored information to users 24 hours a day, 7 days a week. The result: a reduction in staff workload and a saving of €150 per application processed, half a million euros per year.


In this video we can see a simple example of training:

Want to know more about Hunters?

At Altia we have designed several programmes so that people who are finishing their career or are newly graduated can start their career in the IT industry, adding their talent and passion for technology. One of these programmes is Hunters: people who like trends, have an innovative soul and contribute to anticipating the challenges of the future. To be part of Hunters is to be part of a transversal group with the capacity to generate and transfer knowledge.

Join the Hunters programme and be part of a transversal group with the ability to generate and transfer knowledge.

LinkedIn Nicolás Cuello

Nicolás Cuello

Software Engineer at Altia