Novedades y Noticias

Automatiza imágenes y vídeos desde Telegram con n8n

Automatiza imágenes y vídeos desde Telegram con n8n

N8N Automatiza imágenes y vídeos desde Telegram

¿Te imaginas mandar una idea por Telegram —como texto o audio— y recibir en unos minutos una miniatura y un vídeo listos para publicar? En este tutorial, replicamos un flujo real construido en n8n que hace exactamente eso: escucha tu chat, transcribe audios, genera un prompt de alta calidad, crea una imagen con una API (Nanobanana vía Kie) y después un vídeo (modelo BO3), y por último te devuelve ambos directamente en Telegram.
Es una solución perfecta para creadores, agencias o emprendedores que necesitan transformar ideas en piezas visuales rápido, barato y sin fricción.

TL;DR

  • Entrada: mensaje de texto o audio en tu chat de Telegram.
  • Proceso: transcripción (si audio) → agente que traduce y estructura prompt → API de imagen (Nanobanana vía Kie) → análisis de imagenagente que refina prompt → API de vídeo (BO3) → polling + retry → descarga.
  • Salida: imagen + vídeo enviados a tu Telegram.
  • Coste estimado: ~0,03–0,04 € por imagen y 0,30–0,40 € por vídeo (según el caso mostrado).
  • Stack: n8n, Telegram Bot, APIs de Kie (Nanobanana/BO3), transcripción/visión con ChatGPT.

Caso de uso y arquitectura

Objetivo: convertir ideas rápidas (texto o notas de voz) en activos visuales listos para redes: miniatura + microvídeo.
Público: equipos de contenido, solo-makers, pymes.

Arquitectura resumida:

  • Telegram como interfaz natural (captura texto/voz).
  • n8n orquesta todo el pipeline: ramas texto/audio, agentes, APIs externas, polling, envío.
  • APIs Kie:
    • Nanobanana: crea miniatura (imagen).
    • BO3: crea vídeo 1080p relacionado con la miniatura.
  • ChatGPT:
    • Transcripción de audio.
    • Agente de prompt (traduce al inglés y estructura).
    • Visión para analizar la imagen y enriquecer el prompt de vídeo.

Requisitos previos

  • Cuenta de Telegram y acceso a @BotFather para crear tu bot.
  • n8n funcionando (local, VPS o Docker).
  • Cuenta en Kie con API Key y saldo (las primeras pruebas pueden ser gratuitas; después, recarga).
  • Claves para los proveedores que uses en n8n (ChatGPT para transcripción/visión, etc.).
  • Conocimientos básicos de HTTP requests y JSON en n8n.

Flujo en n8n: visión general

  1. Trigger (Telegram): cualquier mensaje entrante.
  2. Switch: detectar si es audio o texto.
  3. Rama texto: normaliza el contenido como text.
  4. Rama audio:
    • Get File del mensaje de voz.
    • Transcripción (ChatGPT) → normaliza como text.
  5. Agente de prompt (imagen + “pre-prompt” vídeo):
    • Traduce al inglés.
    • Devuelve JSON con campos clave para la API de imagen.
  6. Crear tarea de imagen (Nanobanana): POST create task → devuelve task_id.
  7. Wait + Polling (Record Info): espera (p. ej., 30 s) y consulta la tarea hasta HTTP 200.
  8. Descarga y envío de imagen a Telegram.
  9. Visión (ChatGPT): analiza la imagen generada y produce descripción rica en inglés.
  10. Agente de prompt (vídeo): combina descripción de imagen + mensaje original → prompt cinematográfico.
  11. Crear tarea de vídeo (BO3): POST generate con modelo, ratio, seed, etc.
  12. Wait + Polling (1080p video): espera (p. ej., 150 s) y reintenta hasta HTTP 200.
  13. Descarga y envío del vídeo a Telegram.

Paso a paso (configuración completa)

1) Crea y conecta tu Telegram Bot

  • En Telegram, abre @BotFather/start.
  • Comando /newbot → nombra tu bot (debe acabar en bot).
  • Copia el Token (lo usarás en n8n).
  • En n8n, configura las credenciales de Telegram con ese Token.
  • En tu bot recién creado, envía /start para activarlo.

2) Trigger y detección de tipo de mensaje

  • Nodo Telegram Trigger (o HTTP/Webhook si usas pasarela).
  • Nodo Switch con lógica:
    • Si mimetype contiene audio → rama audio.
    • Si hay text → rama texto.

3) Rama texto

  • Normaliza el campo a text para que el siguiente agente tenga siempre el mismo input.

4) Rama audio

  • Get File (Telegram): descarga el file_id del voice.
  • Transcribe Audio (ChatGPT/Whisper): obtén el texto.
  • Normaliza a text (mismo nombre de campo que en la rama texto).

5) Agente de Prompt (imagen + pre-prompt vídeo)

  • System prompt (en inglés) indicando que:
    • Eres prompt engineer para imagen (miniatura) y vídeo corto (8 s aprox.).
    • El usuario hablará en español, tú traducirás y estructurarás al inglés.
    • Output JSON con: image_prompt, video_preprompt, etc.
  • Activa “Require specific output format” en n8n (estructura JSON estricta).

6) Crear tarea de imagen (Nanobanana vía Kie)

  • Nodo HTTP RequestPOST a la endpoint de creación de tarea.
  • Headers: Authorization: Bearer <API_KEY>, Content-Type: application/json.
  • Body JSON: { "model": "nanobanana", "input": "<image_prompt>", "format": "png" }.
  • Guarda el task_id de la respuesta.

7) Wait + Polling de imagen

  • Nodo Wait: 30 s (si 12 s es inestable, usa 30 s).
  • Nodo HTTP GET a “record info” con task_id.
  • Nodo IF: si status 200 → existe resultado → descargar; si no, loop (Wait + GET) hasta éxito o máximo intentos.

8) Descargar y enviar imagen

  • HTTP GET a la URL del archivo (imagen).
  • Activa Binary y nómbralo data.
  • Nodo Telegram: Send PhotoBinary file: data → mensaje tipo “Imagen creada con éxito. El vídeo está en proceso.”

9) Análisis de imagen (Visión)

  • Nodo ChatGPT (Vision) con Binary: data.
  • Prompt: “Describe la imagen en inglés, con máximo detalle (sujetos, objetos, entorno, estilo, luz, encuadre, etc.). Sé objetivo.”

10) Agente de Prompt de vídeo

  • Combina:
    • Descripción de imagen (visión), y
    • Mensaje original del usuario.
  • System prompt: “Eres prompt engineer de vídeo cinematográfico. Devuelve JSON con campos claros (ej. video_prompt, ratio, seed, duration, style), todo en inglés y limpio.”

11) Crear tarea de vídeo (BO3)

  • HTTP POST a la endpoint de BO3 generate.
  • Headers: Authorization: Bearer …, Content-Type: application/json.
  • Body típico:

{
«model»: «b03-fast»,
«prompt»: «»,
«ratio»: «16:9»,
«seed»: 42,
«duration»: 8
}

12) Wait + Polling de vídeo

  • Wait: 150 s (ajusta según carga).
  • HTTP GET a la endpoint de 1080p video usando task_id.
  • IF: status === 200 → descarga; si no, loop (Wait + GET) hasta éxito o timeout.

13) Descargar y enviar vídeo

  • HTTP GET del archivo (Binary data).
  • Telegram: Send Video → Binary data → mensaje tipo: “Aquí tienes tu vídeo (duración: X s).”

Gestión de errores, reintentos y tiempos de espera

  • Imagen: si el GET devuelve ≠ 200, asume “en proceso”. Repite Wait + GET (ej. 3–5 intentos).
  • Vídeo: los 150 s suelen ser cortos en horas pico. Prevé 1–3 reintentos.
  • Límites de API: captura y loguea errores (4xx/5xx). Implementa backoff exponencial si tu volumen sube.
  • Mensajes al usuario: avisa en Telegram cuando reintentas (“El vídeo sigue generándose, reintentando…”).

Costes, rendimiento y escalado

  • Imagen (Nanobanana): ~0,03–0,04 € por miniatura (estimación del caso real).
  • Vídeo (BO3): ~0,30–0,40 € por clip 1080p (estimación).
  • Optimiza costes:
    • Usa b03-fast para borradores y sube de calidad cuando toque.
    • Recicla prompts “base” por temáticas para reducir intentos.
  • Escalado: separa staging y producción; usa colas; paraleliza por usuario/chat; monitoriza latencias y errores.

Buenas prácticas de prompts y calidad visual

  • Siempre en inglés para imagen/vídeo (mejor entendimiento del modelo).
  • Estructura JSON estable para parsear en n8n sin sorpresas.
  • “Video pre-prompt”: usa la descripción de imagen (visión) para mantener coherencia visual entre miniatura y vídeo.
  • Detalles cinemáticos: cámara, lente, luz, composición, movimiento, duración, ritmo.
  • Control de variabilidad: fija seed cuando quieras reproducibilidad; cambia seed para explorar variantes.
  • Itera: si fallan tiempos, sube Wait y número de retries con límites razonables.

Preguntas frecuentes

¿Puedo usar solo imagen o solo vídeo?
Sí. El flujo está modularizado: puedes cortar en la descarga de imagen o entrar directamente en la rama de vídeo.

¿Qué pasa si envío un audio ruidoso?
La transcripción puede degradarse. Recomiendo audios cortos y claros; si es complejo, reenvía un texto.

¿El bot sirve para grupos?
Sí, pero añade filtros (comandos o chat_id) para no procesar conversaciones ajenas.

¿Cómo manejo el límite de peticiones?
Implementa throttling y backoff; muestra mensajes informativos en Telegram cuando entres en reintentos.

¿Puedo cambiar de proveedor de imagen/vídeo?
Claro. El patrón Create Task → Poll → Download funciona igual con la mayoría de APIs modernas.

Conclusión y siguientes pasos

Con este flujo de n8n + Telegram + APIs (Nanobanana/BO3) + ChatGPT, conviertes ideas en segundos en miniaturas y vídeos listos para publicar. La clave está en:

  • separar texto y audio con transcripción,
  • usar agentes que estructuren prompts en inglés,
  • polling con reintentos y tiempos realistas,
  • y cerrar el ciclo enviando resultados al mismo chat que inició la solicitud.

¿Quieres que lo dejemos listo en tu entorno (con dominios, HTTPS, colas, logs y alertas)? Te lo montamos y lo dejamos producción-ready.

¿Quieres este workflow listo para tu equipo con control de costes, monitorización, reintentos inteligentes y versionado? Te lo implementamos en tu n8n, adaptamos prompts a tu marca y lo dejamos operativo en tu Telegram.

Compartir:

Expertbrain
Resumen de privacidad

Esta web utiliza cookies para que podamos ofrecerte la mejor experiencia de usuario posible. La información de las cookies se almacena en tu navegador y realiza funciones tales como reconocerte cuando vuelves a nuestra web o ayudar a nuestro equipo a comprender qué secciones de la web encuentras más interesantes y útiles.