Nodo telegram
El nodo telegram proporciona integración con la API de Telegram Bot. Con él, el flujo puede enviar mensajes a chats y canales, mostrar botones en línea, manejar pulsaciones de botones y mostrar notificaciones emergentes al usuario.
Configuraciones del nodo telegram

1. botToken
El token de tu bot de Telegram, obtenido de @BotFather.
Soporta Mustache: el token se puede almacenar en una variable de flujo y sustituirse a través de {{variable}}.
Ejemplo:
{{flow.telegramToken}}
2. chat_id
El identificador del chat o canal al que se enviará el mensaje.
Soporta Mustache. Si dejas el campo vacío, el backend tomará automáticamente el valor de msg.payload.message.chat.id — esto es útil al responder a un mensaje entrante del usuario.
Ejemplo:
{{payload.message.chat.id}}
3. text
El texto del mensaje que se enviará.
Soporta Mustache: se pueden insertar dinámicamente datos de msg.
Ejemplo:
¡Tu pedido nº{{payload.orderId}} ha sido realizado con éxito!
4. parseMode
Modo de formato del texto del mensaje. Opciones disponibles:
- none — sin formato, el texto se envía tal cual.
- Markdown — Markdown básico de Telegram (v1).
- MarkdownV2 — versión extendida de Markdown con soporte para spoilers y otros elementos.
- HTML — marcado HTML (
<b>,<i>,<code>,<a>y otros).
5. replyMarkup
Constructor de botones en línea debajo del mensaje. Los botones se organizan en filas: cada fila contiene uno o varios botones.
Para cada botón se definen:
- Texto — la etiqueta del botón que ve el usuario.
- callback_data — el valor que llegará al webhook en el campo
msg.payload.callback_query.dataal pulsar el botón. Con este valor se puede determinar qué botón fue pulsado y dirigir el flujo a la rama correspondiente a través de un nodo Switch.
Ejemplo de estructura:
Fila 1: [Confirmar | callback_data: confirm] [Cancelar | callback_data: cancel]
Fila 2: [Más detalles | callback_data: details]
6. callbackQueryId
Identificador de la consulta de callback — necesario para responder a la pulsación del botón en línea.
Soporta Mustache. Si dejas el campo vacío, el valor se tomará automáticamente de msg.payload.callback_query.id.
Ejemplo:
{{payload.callback_query.id}}
7. showAlert
Casilla de verificación. Define el tipo de notificación al responder a la pulsación del botón:
- Desactivado — se muestra un breve popup de toast (desaparece automáticamente).
- Activado — se muestra una ventana modal con una notificación que el usuario debe cerrar manualmente.
8. notificationText
Texto de la notificación que aparecerá al responder a la pulsación del botón en línea.
El campo se muestra en el formulario solo cuando showAlert está activado.
Soporta Mustache.
Ejemplo:
Tu elección ha sido aceptada: {{payload.callback_query.data}}
Ejemplos de uso
Ejemplo 1: Envío de un mensaje sobre un nuevo pedido
Flujo:
[events: order_created] ---> [telegram]
Configuraciones del nodo:
- botToken:
{{flow.telegramToken}} - chat_id:
{{flow.adminChatId}} - text:
Nuevo pedido nº{{payload.order.id}} de {{payload.order.userName}}. Total: {{payload.order.totalPrice}} rub. - parseMode:
none
Resultado:
Al crear un nuevo pedido, el bot enviará una notificación al chat del administrador.
Ejemplo 2: Mensaje con botones de confirmación
Configuraciones del nodo:
- chatId:
{{payload.message.chat.id}} - text:
¿Confirmar la realización del pedido? - replyMarkup:
Fila 1: [Sí, confirmar | confirm] [Cancelar | cancel]
Resultado:
El usuario recibirá un mensaje con dos botones. Pulsar el botón enviará callback_data al webhook, donde se puede procesar con un nodo Switch.
Ejemplo 3: Respuesta a la pulsación de un botón con notificación
Flujo:
[http in] ---> [switch: callback_data == "confirm"] ---> [telegram: respuesta con notificación]
Configuraciones del nodo:
- callbackQueryId: (dejar vacío — se toma de
msg.payload.callback_query.id) - showAlert: activado
- notificationText:
¡Pedido confirmado!
Resultado:
Se mostrará un popup emergente al usuario con el texto "¡Pedido confirmado!", que debe cerrar manualmente.