Skip to main content


Declarative tag — describes the chatbot structure, defines dependencies between files, rules for transitions between states and reaction tags.

Class — state.

Channel — communication channel type: Telegram, Viber, etc.

Chatbot — system that allows to simulate client’s communication with a living person and perform the necessary actions if they are required by user. Within our chatbot system, it is a set of scripts that describe the business logic of chatbot behavior.

ChatAdapter — interface that gets messages of various types (text, buttons, pictures, etc.) in a uniform form and converts them into a format specific to each channel (Telegram, chat on the site, etc.).

ChatAPI — interface designed for direct interaction with the bot by simple exchange of messages like bot_request/bot_response defined in json-format.

CRM — a system that facilitates controlling relationships with customers and automating business processes.

Converter — an auxiliary script for interpreting the text values in each token, allows you to convert data for use in scripts.

Entity is a unit of the NLU core. An entity is a sequence of words linked by an intent or rule. For example: names, date and time, location, etc.

Tovie DSL (Domain Specific Language) — language, designed to describe the logic of the chatbot behavior and provides a convenient format for describing the finite state machine for the chatbot.

JS-script — JavaScript code.

Intent is a key unit of the NLU core; it unifies a set of phrases, user intent and other metadata.

Matcher — module that performs pattern matching.

Named Entities — elements of a named entities dictionary.

Named pattern — part of the pattern that is allocated to a separate entity which can be used several times.

NLG (Natural Language Generation) — NLP section, which is engaged in the generation of literate statements in natural language.

NLP (Natural Language Processing) — scientific direction, engaged in the construction of algorithms for the analysis of the meaning of texts in natural language, as well as algorithms for generating literate text.

NLU (Natural Language Understanding) — NLP section, which analyzes the meaning (“understanding”) of natural language statements.

Parse tree ($parseTree) — formal structure of the text obtained as a result of parsing. The process of matching text with a pattern allows you to get a parse tree, the elements of which become text fragments that fall into the named patterns.

Pattern — formal rules describing key concepts, expressions, and phrase structure. Patterns help to assign client query to one of the existing system states, in order to perform reactions corresponding to the state.

Prechat field — special field that will appear in the online chat window. The user needs to fill it in before starting a chat with an agent. This can be the input field for the email address, phone number, order number, contract number, etc.

Reaction — set of actions performed in response to a user phrase.

Named entities dictionary — required for the processing of a large number of any names, for example, cities, countries, proper names, currencies, etc. Set as csv files.

State — element of the script that describes the behavior of the bot in a specific context.

Reaction tag — tag that is executed when a dialog gets into a certain state.

Skill — bot skill.


  1. set of all rules for request classification, request processing and response generation;
  2. file with the .sc extension;
  3. set of all files in which the chatbot logic is encoded.

Script descriptor — contains lists of all script files, dictionaries and js-scripts, as well as general parameters of the chatbot. It is defined in the chatbot.yaml file.

Session is a series of interactions between the client and the bot within a single conversation context. A session starts when the client sends its first message to the system provided that this client has no other active sessions. Session termination conditions vary depending on the specific bot; these conditions are configured at the script level.

Test — test that is executed during chatbot deployment, written in XML.


  1. text unit, obtained in the process of tokenization (≈word);
  2. text fragment that matched a named pattern.

Tokenization — breaking into tokens (words).

Unique user is a user who has unique characteristics (that can be used to identify him or her as an individual customer) and has interacted with the bot on the channel at least once within the reporting period. If a user uses multiple channels, such as messengers, voice assistants, etc. (in particular, within a single interaction on the same issue), he or she is recognized as a unique user for each of these channels.

YAML-dictionary — is used to store diverse information relating to one project or skill. One file can contain bot responses, API Keys and volume settings.