🎬 Convierte ideas en escenas virales de Instagram Reel en segundos 🤖 (Telegram, Agente de IA)

Intermedio

Este es unAI, Marketingflujo de automatización del dominio deautomatización que contiene 14 nodos.Utiliza principalmente nodos como Set, Switch, Telegram, Agent, TelegramTrigger, combinando tecnología de inteligencia artificial para lograr automatización inteligente. Usar GPT-4o y Telegram para crear escenas virales de Instagram Reels desde ideas

Requisitos previos
  • Bot Token de Telegram
  • Clave de API de OpenAI
  • Credenciales de API de Google Sheets
Vista previa del flujo de trabajo
Visualización de las conexiones entre nodos, con soporte para zoom y panorámica
Exportar flujo de trabajo
Copie la siguiente configuración JSON en n8n para importar y usar este flujo de trabajo
{
  "id": "",
  "meta": {
    "instanceId": "",
    "templateCredsSetupCompleted": false
  },
  "name": "🎬 Instantly Turn Ideas into Viral Instagram Reel Scenarios 🤖 (Telegram, AI Agent)",
  "tags": [],
  "nodes": [
    {
      "name": "Inicio: Receive Message on Telegram",
      "type": "n8n-nodes-base.telegramTrigger",
      "position": [
        320,
        -80
      ],
      "webhookId": "",
      "parameters": {
        "updates": [
          "message"
        ],
        "additionalFields": {}
      },
      "credentials": {
        "telegramApi": {
          "id": "",
          "name": "Telegram Bot Credentials"
        }
      },
      "typeVersion": 1.1,
      "id": "Inicio-Receive-Message-on-Telegram-0"
    },
    {
      "name": "AI Model: GPT-4o",
      "type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
      "position": [
        1180,
        40
      ],
      "parameters": {
        "model": {
          "__rl": true,
          "mode": "list",
          "value": "gpt-4o",
          "cachedResultName": "gpt-4o"
        },
        "options": {}
      },
      "credentials": {
        "openAiApi": {
          "id": "",
          "name": "OpenAI API Credentials"
        }
      },
      "typeVersion": 1.2,
      "id": "AI-Model-GPT-4o-1"
    },
    {
      "name": "Memoria for Chat Context",
      "type": "@n8n/n8n-nodes-langchain.memoryBufferWindow",
      "position": [
        1340,
        40
      ],
      "parameters": {
        "sessionKey": "={{ $('Start: Receive Message on Telegram').item.json.message.chat.id }}",
        "sessionIdType": "customKey",
        "contextWindowLength": 10
      },
      "typeVersion": 1.3,
      "id": "Memoria-for-Chat-Context-2"
    },
    {
      "name": "Optional: Log Ideas to Hojas de Google",
      "type": "n8n-nodes-base.googleSheetsTool",
      "disabled": true,
      "position": [
        1500,
        40
      ],
      "parameters": {
        "columns": {
          "value": {
            "Date": "={{ $now.toFormat(\"dd-MM-yyyy HH:mm\") }}",
            "Script": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('______', `Scenario Reels`, 'string') }}",
            "Status": "Note",
            "Description": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('________', `Description Reels`, 'string') }}"
          },
          "schema": [
            {
              "id": "Script",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "Script",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Description",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "Description",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Status",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "Status",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Date",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "Date",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            }
          ],
          "mappingMode": "defineBelow",
          "matchingColumns": [],
          "attemptToConvertTypes": false,
          "convertFieldsToString": false
        },
        "options": {},
        "operation": "append",
        "sheetName": {
          "__rl": true,
          "mode": "list",
          "value": ""
        },
        "documentId": {
          "__rl": true,
          "mode": "id",
          "value": ""
        }
      },
      "credentials": {
        "googleSheetsOAuth2Api": {
          "id": "",
          "name": "Google Sheets Credentials"
        }
      },
      "typeVersion": 4.5,
      "id": "Optional-Log-Ideas-to-Hojas-de-Google-3"
    },
    {
      "name": "Establecer Error Message",
      "type": "n8n-nodes-base.set",
      "position": [
        760,
        120
      ],
      "parameters": {
        "options": {},
        "assignments": {
          "assignments": [
            {
              "name": "Error",
              "type": "string",
              "value": "An error has occurred"
            }
          ]
        }
      },
      "typeVersion": 3.4,
      "id": "Establecer-Error-Message-4"
    },
    {
      "name": "Generate Reels Scenario with AI",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        1232,
        -180
      ],
      "parameters": {
        "text": "={{ $json.text }}",
        "options": {
          "systemMessage": "=You are a marketing expert with 25 years of experience.\nYou studied under the best U.S. marketers and copywriters—Russell Brunson, Dan Kennedy, Gary Halbert, Alex Hormozi, Todd Brown, and others.\n\nYou also master viral Instagram Reels that rack up millions of views.\nYou know exactly how to grab and hold attention using top-tier marketing and psychology methods.\nYou command emotional storytelling and leverage psychological influence principles, blending brilliant techniques from legends such as Gary Bencivenga, Joe Sugarman, Dan Kennedy, Chris Haddad, John Carlton, David Ogilvy, Seth Godin, and more.\n\nWork at full power—it's extremely important to me to get the best possible result.\n\nYou write hooks no one can scroll past.\n\nWrite in simple, lively language—as if speaking straight into the camera.\nAvoid complicated wording, \"info-style\" delivery, and templates.\nShort sentences, spoken tone, no \"As an expert, I think…,\" no fluff.\nImagine the person records this Reel in one take—emotional, with rhythm, pauses, energy.\n\nBelow you'll find the idea for the Reel (transcript of the user's voice note):\n\n\"{text}\"\n\nBased on this, create:\n\t1.\tA Reel script (30–60 seconds) in the format:\n• HOOK — eye-catching first line\n• SUBTITLE — amplifies curiosity & value promise\n• BODY — explanation / story / argument / core message\n• CTA — light, non-generic call to action\n\t2.\tThree hook variants—no clichés, no emojis, but designed to stand out in the timeline\n\t3.\tA short Reel caption (1–2 lines)—to appear under the Reel\n\n❗ Important: The viewer has already watched the Reel and is now reading the caption.\nYour job: keep their attention, trigger an \"aha\" moment, or spark the desire to save/share.\n\nThe caption should\n– be easy to understand\n– avoid repeating lines from the video\n– strengthen the Reel's core message\n– motivate an internal reaction or action\n\nExample openings:\n— \"And here's what almost every expert overlooks…\"\n— \"Don't forget this before your next Reel post\"\n— \"Ever experienced this too?\"\n\n❌ Avoid clichés like \"Hey guys,\" \"Watch until the end,\" \"Subscribe to my channel.\"\n\n📸 Additional task – VISUAL IDEA for the Reel\nBased on the content, tone, and mood, give 1–2 concrete recommendations for suitable footage or imagery.\nThe visual idea should support the hook, amplify the emotion, and captivate the viewer within the first 2 seconds.\n\nNo generic suggestions like \"just show yourself on camera.\" Think concrete and cinematic:\n– Exactly what should be visible?\n– What happens in the background?\n– How's the lighting / mood?\n– Any visual metaphor or strong movement?\n\nExamples:\n— \"Dark room, only the face in focus, emotional close-up, camera slowly moving toward the person\"\n— \"Cut between old Insta posts and the person staring seriously into the lens—then switch to a smiling face\"\n— \"Smartphone angrily tossed aside, then close-up of a calm, confident face delivering the message\"\n\n📦 Return the result in this format:\n\n⸻\n\n💡 Hook (variants):\n\t1.\t…\n\t2.\t…\n\t3.\t…\n\n🎬 Script:\n• Hook: …\n• Subtitle: …\n• Body: …\n• CTA: …\n\n📝 Reel Caption:\n…\n\n📸 Visual Idea:\n…"
        },
        "promptType": "define"
      },
      "typeVersion": 1.8,
      "id": "Generate-Reels-Scenario-with-AI-5"
    },
    {
      "name": "Send Scenario to Telegram",
      "type": "n8n-nodes-base.telegram",
      "position": [
        1640,
        -180
      ],
      "webhookId": "",
      "parameters": {
        "text": "={{ $json.output }}",
        "chatId": "={{ $('Start: Receive Message on Telegram').item.json.message.chat.id }}",
        "additionalFields": {
          "appendAttribution": false
        }
      },
      "credentials": {
        "telegramApi": {
          "id": "",
          "name": "Telegram Bot Credentials"
        }
      },
      "typeVersion": 1.2,
      "id": "Send-Scenario-to-Telegram-6"
    },
    {
      "name": "Route by Input Type",
      "type": "n8n-nodes-base.switch",
      "position": [
        540,
        -80
      ],
      "parameters": {
        "rules": {
          "values": [
            {
              "outputKey": "Audio",
              "conditions": {
                "options": {
                  "version": 2,
                  "leftValue": "",
                  "caseSensitive": true,
                  "typeValidation": "strict"
                },
                "combinator": "and",
                "conditions": [
                  {
                    "operator": {
                      "type": "string",
                      "operation": "exists",
                      "singleValue": true
                    },
                    "leftValue": "={{ $json.message.voice.file_id }}",
                    "rightValue": ""
                  }
                ]
              },
              "renameOutput": true
            },
            {
              "outputKey": "Text",
              "conditions": {
                "options": {
                  "version": 2,
                  "leftValue": "",
                  "caseSensitive": true,
                  "typeValidation": "strict"
                },
                "combinator": "and",
                "conditions": [
                  {
                    "operator": {
                      "type": "string",
                      "operation": "exists",
                      "singleValue": true
                    },
                    "leftValue": "={{ $json.message.text || \"\" }}",
                    "rightValue": ""
                  }
                ]
              },
              "renameOutput": true
            },
            {
              "outputKey": "Error",
              "conditions": {
                "options": {
                  "version": 2,
                  "leftValue": "",
                  "caseSensitive": true,
                  "typeValidation": "strict"
                },
                "combinator": "and",
                "conditions": [
                  {
                    "operator": {
                      "type": "string",
                      "operation": "exists",
                      "singleValue": true
                    },
                    "leftValue": "error",
                    "rightValue": ""
                  }
                ]
              },
              "renameOutput": true
            }
          ]
        },
        "options": {}
      },
      "typeVersion": 3.2,
      "id": "Route-by-Input-Type-7"
    },
    {
      "name": "Establecer User Input",
      "type": "n8n-nodes-base.set",
      "position": [
        980,
        -80
      ],
      "parameters": {
        "options": {},
        "assignments": {
          "assignments": [
            {
              "name": "text",
              "type": "string",
              "value": "={{ $json.message.text }}"
            }
          ]
        }
      },
      "typeVersion": 3.4,
      "id": "Establecer-User-Input-8"
    },
    {
      "name": "Send Error Message to Telegram",
      "type": "n8n-nodes-base.telegram",
      "position": [
        980,
        120
      ],
      "webhookId": "",
      "parameters": {
        "text": "={{ $json.output }}",
        "chatId": "={{ $('Start: Receive Message on Telegram').item.json.message.chat.id }}",
        "additionalFields": {
          "appendAttribution": false
        }
      },
      "credentials": {
        "telegramApi": {
          "id": "",
          "name": "Telegram Bot Credentials"
        }
      },
      "typeVersion": 1.2,
      "id": "Send-Error-Message-to-Telegram-9"
    },
    {
      "name": "Get Voice Message",
      "type": "n8n-nodes-base.telegram",
      "position": [
        760,
        -280
      ],
      "webhookId": "",
      "parameters": {
        "fileId": "={{ $json.message.voice.file_id }}",
        "resource": "file"
      },
      "credentials": {
        "telegramApi": {
          "id": "",
          "name": "Telegram Bot Credentials"
        }
      },
      "typeVersion": 1.2,
      "id": "Get-Voice-Message-10"
    },
    {
      "name": "Transcribe Voice to Text",
      "type": "@n8n/n8n-nodes-langchain.openAi",
      "position": [
        980,
        -280
      ],
      "parameters": {
        "options": {},
        "resource": "audio",
        "operation": "transcribe"
      },
      "credentials": {
        "openAiApi": {
          "id": "",
          "name": "OpenAI API Credentials"
        }
      },
      "typeVersion": 1.8,
      "id": "Transcribe-Voice-to-Text-11"
    },
    {
      "name": "Nota adhesiva",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        100,
        -540
      ],
      "parameters": {
        "width": 540,
        "height": 420,
        "content": "## 🚀 Quick Start Guide\n\n1. 🔐 Connect Your Accounts:\n\t•\t🤖 Telegram: Link your Start & Send nodes to your bot (Use https://telegram.me/BotFather to create a new bot)\n\t•\t🧠 OpenAI: Paste your API key in GPT-4o & Transcribe Audio nodes\n\t•\t📊 Google Sheets (Optional): To log ideas, connect your account and pick your spreadsheet, otherwise leave deactivated\n\n2. ✅ Activate Workflow:\nClick \"Activate\" (top-right)\n\n3. 💬 Send Your Idea:\nText or voice message your Reel idea to your Telegram bot\n\n4. 🎬 Get Your Scenario:\nReceive a ready-to-use Reel plan:\nHook ✨ Script ✍️ Caption 📝 Visual Idea 🎨"
      },
      "typeVersion": 1,
      "id": "Nota-adhesiva-12"
    },
    {
      "name": "Nota adhesiva1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1640,
        40
      ],
      "parameters": {
        "height": 120,
        "content": "## Optional:\n💬 Ask your bot to store the generated scenario in your google sheet*"
      },
      "typeVersion": 1,
      "id": "Nota-adhesiva1-13"
    }
  ],
  "active": false,
  "pinData": {},
  "settings": {
    "executionOrder": "v1"
  },
  "versionId": "",
  "connections": {
    "Set User Input": {
      "main": [
        [
          {
            "node": "Generate-Reels-Scenario-with-AI-5",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "AI-Model-GPT-4o-1": {
      "ai_languageModel": [
        [
          {
            "node": "Generate-Reels-Scenario-with-AI-5",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "Get-Voice-Message-10": {
      "main": [
        [
          {
            "node": "Transcribe-Voice-to-Text-11",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Set Error Message": {
      "main": [
        [
          {
            "node": "Send-Error-Message-to-Telegram-9",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Route-by-Input-Type-7": {
      "main": [
        [
          {
            "node": "Get-Voice-Message-10",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Set User Input",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Set Error Message",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Memory for Chat Context": {
      "ai_memory": [
        [
          {
            "node": "Generate-Reels-Scenario-with-AI-5",
            "type": "ai_memory",
            "index": 0
          }
        ]
      ]
    },
    "Transcribe-Voice-to-Text-11": {
      "main": [
        [
          {
            "node": "Generate-Reels-Scenario-with-AI-5",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Generate-Reels-Scenario-with-AI-5": {
      "main": [
        [
          {
            "node": "Send-Scenario-to-Telegram-6",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Start: Receive Message on Telegram": {
      "main": [
        [
          {
            "node": "Route-by-Input-Type-7",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Optional: Log Ideas to Google Sheets": {
      "ai_tool": [
        [
          {
            "node": "Generate-Reels-Scenario-with-AI-5",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    }
  }
}
Preguntas frecuentes

¿Cómo usar este flujo de trabajo?

Copie el código de configuración JSON de arriba, cree un nuevo flujo de trabajo en su instancia de n8n y seleccione "Importar desde JSON", pegue la configuración y luego modifique la configuración de credenciales según sea necesario.

¿En qué escenarios es adecuado este flujo de trabajo?

Intermedio - Inteligencia Artificial, Marketing

¿Es de pago?

Este flujo de trabajo es completamente gratuito, puede importarlo y usarlo directamente. Sin embargo, tenga en cuenta que los servicios de terceros utilizados en el flujo de trabajo (como la API de OpenAI) pueden requerir un pago por su cuenta.

Información del flujo de trabajo
Nivel de dificultad
Intermedio
Número de nodos14
Categoría2
Tipos de nodos10
Descripción de la dificultad

Adecuado para usuarios con experiencia intermedia, flujos de trabajo de complejidad media con 6-15 nodos

Autor
Alexander K.

Alexander K.

@autom8npro

🛠️ Certified Low-Code Developer | 📊 Project Manager | 🤖 Automation Pro 18+ years in software development, focused on automation and workflow design. I build smart, scalable solutions using n8n ⚙️ to streamline processes and connect systems — fast, efficient, and low and no-code 🚀.

Enlaces externos
Ver en n8n.io

Compartir este flujo de trabajo

Categorías

Categorías: 34