Crear un asistente de IA en Telegram (voz + texto) con n8n
· Por AI Compare
Un bot de Telegram que entiende voz y texto, recuerda el contexto y usa sus herramientas, creado en n8n.
Qué va a crear
Un asistente personal de IA con el que habla en Telegram. Envíele un texto o una nota de voz; transcribe la voz, entiende la petición, usa herramientas (calendario, correo, contactos, búsqueda web) y responde en texto o audio. Recuerda la conversación reciente, así que las preguntas de seguimiento funcionan.
Sigue la estructura de la plantilla de la comunidad de n8n «Turn Telegram into an AI assistant with OpenAI voice, memory and tools».
Qué necesita
- Una instancia de n8n con una URL HTTPS pública (n8n Cloud, o autoalojado con dominio). Telegram tiene que poder llegar a su webhook.
- Una cuenta de Telegram.
- Una clave de API de OpenAI (chat, transcripción y, opcionalmente, texto a voz). Para el chat puede usar otros proveedores de modelos.
- Opcional: credenciales de Google para las herramientas de Calendar y Gmail.
Paso 1: crear el bot de Telegram
- En Telegram, abra @BotFather y envíe
/newbot. - Elija un nombre visible y un nombre de usuario que termine en
bot(5–32 caracteres). - Copie el token que le da BotFather.
- En n8n, cree una credencial de Telegram y pegue el token como Access Token.
Paso 2: la estructura del workflow
| # | Nodo | Función |
|---|---|---|
| 1 | Telegram Trigger (updates: message) | Recibe cada mensaje enviado al bot |
| 2 | IF: comprobación del remitente | Permitir solo su propio ID de usuario de Telegram, para que desconocidos no usen su asistente (ni su presupuesto de API) |
| 3 | Switch: texto o voz | Dirige según exista o no message.voice |
| 4 | Telegram: Get File (rama de voz) | Descarga la nota de voz como datos binarios |
| 5 | OpenAI: Transcribe a recording | Convierte el audio en texto |
| 6 | Edit Fields (Set) | Pone el texto de cualquiera de las ramas en un mismo campo, por ejemplo prompt |
| 7 | AI Agent | Razona sobre la petición y decide qué herramientas llamar |
| 8 | Modelo de chat + memoria (subnodos) | OpenAI Chat Model y Simple Memory con el ID del chat de Telegram como clave |
| 9 | Herramientas (subnodos) | Google Calendar, Gmail, búsqueda web, calculadora |
| 10 | Telegram: Send Message | Responde en el mismo chat |
Paso 3: configurar el AI Agent
- Prompt: mapee el campo unificado
promptdel paso 6. - Mensaje de sistema: describa el papel del asistente, su zona horaria y las reglas, por ejemplo: «Eres mi asistente personal. Hoy es {{ $now }}. Confirma antes de enviar correos.»
- Memoria: use Simple Memory con la clave de sesión
{{ $('Telegram Trigger').item.json.message.chat.id }}para que cada chat tenga su propio historial. - Herramientas: añada cada herramienta como subnodo y dele una descripción clara, como «Crear eventos de calendario. Entrada: título, hora de inicio, hora de fin.»
Paso 4: responder con voz (opcional)
Añada un nodo de OpenAI Generate audio (texto a voz) después del agente y envíe el resultado con Telegram Send Audio o Send Voice. Mantenga la respuesta en texto como opción predeterminada; las respuestas de voz cuestan más y son más lentas.
Consejos de seguridad y coste
- Compruebe siempre el ID de usuario del remitente. Un bot público sin esta comprobación puede usarlo cualquiera que lo encuentre.
- Pida al agente que confirme antes de acciones que envíen correos o eliminen cosas.
- La transcripción de voz y las conversaciones largas consumen tokens. Limite la memoria a los últimos 10–20 mensajes.
n8n frente a Zapier y Make en este caso de uso
Los triggers de Telegram existen en las tres herramientas, pero el AI Agent de n8n, con herramientas y memoria en un solo workflow, lo convierte en el lugar más práctico para crear un asistente de verdad. En Zapier o Make necesitaría varios pasos por herramienta y más operaciones por mensaje. Vea Agentes de IA en Zapier, Make y n8n.

