Créer de vrais publicités vidéo UGC en synchronisation labiale avec GPT-4o, ElevenLabs et WaveSpeed

Avancé

Ceci est unContent Creation, Multimodal AIworkflow d'automatisation du domainecontenant 38 nœuds.Utilise principalement des nœuds comme If, Set, Wait, Switch, Telegram. Créer des publicités vidéo UGC authentiques avec synchronisation labiale GPT-4o, ElevenLabs et WaveSpeed

Prérequis
  • Token Bot Telegram
  • Peut nécessiter les informations d'identification d'authentification de l'API cible
  • Clé API OpenAI
Aperçu du workflow
Visualisation des connexions entre les nœuds, avec support du zoom et du déplacement
Exporter le workflow
Copiez la configuration JSON suivante dans n8n pour importer et utiliser ce workflow
{
  "meta": {
    "instanceId": "7914110285fa02b6fbc6c97080a41909334a12a40fb7c7c8ccd7922fbaeffe1b",
    "templateCredsSetupCompleted": true
  },
  "nodes": [
    {
      "id": "61107d11-7270-4882-956b-49ad972a342f",
      "name": "Note adhésive7",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -2944,
        720
      ],
      "parameters": {
        "color": 5,
        "width": 528,
        "height": 640,
        "content": "## Muhammad Farooq Iqbal - Automation Expert & n8n Creator\n\nI am a passionate automation expert and recognized n8n Creator specializing in intelligent workflow automation. With extensive experience in n8n, AI automation, Zapier, and Make.com, I have created innovative workflow templates with 500+ downloads across the global automation community\n\n### Expertise\n- **Workflow Automation**: n8n, Zapier, Make.com, AI automation\n- **AI Integration**: Gemini AI, API integration, data processing\n- **Platform Mastery**: Google Sheets, Google Drive, custom scripts\n\n## Need Help with This Workflow?\n\nIf you face any issues with this workflow or need customization support, feel free to reach out:\n\n**📧 Email**: mfarooqiqbal143@gmail.com  \n**📱 Phone**: +923036991118  \n**💼 LinkedIn**: [Connect with me](https://linkedin.com/in/muhammadfarooqiqbal)  \n**🌐 Portfolio**: [View my work](https://mfarooqone.github.io/n8n/)\n\n*I'm always excited to help with automation challenges and workflow optimization!*\n"
      },
      "typeVersion": 1
    },
    {
      "id": "b7032772-7423-43f9-b6af-1b7abe7e06d3",
      "name": "PROMPT REVUE DE PRODUIT",
      "type": "@n8n/n8n-nodes-langchain.chainLlm",
      "position": [
        -1808,
        1280
      ],
      "parameters": {
        "text": "=Your task: Create an image prompt as guided by your system guidelines.\n\nYou shall make sure that the reference image is depicted as ACCURATELY as possible in the resulting images, especially all text.\n\nDescription of the reference image:\n{{ $json.content }}\n\n# Output\n- Dalam bahasa English\n- Berikan output TANPA tambahan kata atau simbol apapun termasuk tanda kutip\n- Tanda kutip ganti dengan simbol -",
        "batching": {},
        "messages": {
          "messageValues": [
            {
              "message": "=Buat satu fotografi testimoni produk profesional berdasarkan foto produk yang diberikan, saiz output gambar mestilah menggunakan aspect_ratio 9:16 sesuai dengan phone view\n\n\nPastikan sentiasa sertakan grain halus untuk kesan sinematik.\n\n#Arahan Utama\n\nTentukan terlebih dahulu sama ada produk tersebut boleh dipakai atau tidak.\n\n#Tetapan Asas\n\nHasilkan 1 babak unik review produk oleh watak utama.\n\nWatak ialah orang Malaysia sebenar yang kelihatan natural.\n\nWatak sedang memberi testimoni penggunaan produk dengan ekspresi jujur.\n\nTiada sebarang teks atau sarikata dalam gambar (nyatakan dalam prompt).\n\n#Watak\n\nJika watak tidak jelas, tambahkan keterangan berikut:\n\nLelaki atau perempuan berusia 25–30 tahun cantik atau handsome, pilih jantina yang sesuai dengan produk.\n\nGaya dan gerak-geri natural.\nPastikan dalam gambar akhir, watak seolah-olah memegang, menyentuh, atau menggunakan produk yang sedang diulas.\n\n#Jenis Produk\n\nFesyen: Tunjukkan model memakai pakaian atau aksesori tersebut.\n\nPerhiasan / Aksesori: Fokus pada model memakai perhiasan itu (close-up bahagian relevan).\n\nProduk yang tidak boleh dipakai: Watak hanya memegang atau membawa produk secara natural.\n\nHaiwan: Watak berdiri di sebelah haiwan dengan ekspresi ceria dan tenang.\n\nPerabot / alatan rumah: Watak menggunakan perabot atau alat tersebut mengikut fungsi sebenarnya.\n\n#Sudut & Gaya Foto\n\nPastikan keseluruhan gambar produk kelihatan jelas dan utuh seperti asalnya.\n\nGunakan sekurang-kurangnya 2–3 arahan kamera berikut:\n\nPaparan telefon iPhone terbaru,framing genggam,komposisi tidak simetri,cahaya semula jadi,bayangan lembut,sedikit blur pergerakan,auto exposure,tampilan tidak dipoles,grain halus\n\n#Suasana & Realisme\n\nTerima ketidaksempurnaan seperti:\n\ntekstur kulit semula jadi\n\nrambut sedikit berterabur\n\nlatar belakang agak sibuk\n\nGaya seolah-olah gambar sebenar, bukan hasil studio.\n\nWatak kelihatan tulus, santai, dan tidak berlebihan.\n\nTiada orang lain yang memegang kamera.\n\nDeskripsi produk akan dikirimkan kepada Anda. Balas hanya dengan prompt akhir, tidak ada yang lain, wajib TANPA / TIDAK BOLEH ADA SIMBOL tanda kutip ganda. \n"
            }
          ]
        },
        "promptType": "define",
        "hasOutputParser": true
      },
      "typeVersion": 1.7
    },
    {
      "id": "80172961-c769-47cb-ab89-92d6b38d18a2",
      "name": "Analyseur de sortie structurée",
      "type": "@n8n/n8n-nodes-langchain.outputParserStructured",
      "position": [
        -928,
        1504
      ],
      "parameters": {
        "autoFix": true,
        "jsonSchemaExample": "{\n\t\"caption\": \"caption\",\n\t\"textospeech\": \"text\"\n}"
      },
      "typeVersion": 1.3
    },
    {
      "id": "8b28affe-3dbe-45a9-920b-d3163be8be47",
      "name": "TTS & SOUS-TITRE1",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        -992,
        1280
      ],
      "parameters": {
        "text": "=anda akan diberikan data description produk ini :\n\n{{ $('Analyze YAML').item.json.content }}",
        "options": {
          "systemMessage": "=Anda adalah **Sosial Media Manager**. anda akan diberikan **description produk dan karakter**.\n\n# Buatkan Text To Speech dan wajib dalam bahasa Malaysia mix english natural\n\n* **Konsep Automatic** (Anda yang buatkan secara kreatif tetapi mestilah masuk akal).\n* Durasi maximum **10 Saat Sahaja**.\n* Isi Text To Speech adalah **testimoni singkat atau review** yang menggambarkan pengalaman menggunakan produk di description, terasa **penuh emosi**, dan **memujuk orang lain untuk mencuba**.\n* Gunakan gaya percakapan yang **natural, menunjukkan expresi jelas, dan bersemangat**, seolah-olah anda betul-betul berpuas hati dengan produk tersebut.\n\n# Output\n\nTulis **Hantar terus hasil akhir tanpa tambahan lain**, **tanpa tambahan kata, simbol, atau tanda kutip** di awal mahupun akhir output.\n\n"
        },
        "promptType": "define",
        "hasOutputParser": true
      },
      "typeVersion": 2.2
    },
    {
      "id": "cbf9ec2a-2d03-44e6-9e74-7b323fe9678f",
      "name": "Analyser YAML",
      "type": "@n8n/n8n-nodes-langchain.openAi",
      "position": [
        -976,
        752
      ],
      "parameters": {
        "text": "=Analisis gambar yang diberikan dan tentukan apakah gambar tersebut terutama menggambarkan sebuah produk atau karakter, atau KEDUANYA.\n\n# Jika gambar adalah sebuah produk, kembalikan analisis dalam format YAML dengan field berikut:\n\nbrand_name: (Nama brand yang terlihat di gambar, jika ada atau dapat disimpulkan)\ncolor_scheme:\n\nhex: (Kode hex dari setiap warna utama yang digunakan)\nname: (Nama description dari warna tersebut)\nfont_style: (Jelaskan jenis font atau gaya yang digunakan: serif/sans-serif, tebal/tipis, dll.)\nvisual_description: (Satu atau dua kata ringkas yang merangkumi apa yang terlihat pada gambar, abaikan latar belakang)\n\n# Jika gambar adalah sebuah karakter, kembalikan analisis dalam format YAML dengan field berikut:\n\ncharacter_name: (Nama karakter jika terlihat atau dapat disimpulkan)\ncolor_scheme:\n\nhex: (Kode hex dari setiap warna utama yang digunakan pada karakter)\nname: (Nama description dari warna tersebut)\noutfit_style: (description gaya pakaian, aksesori, atau feature menonjol yang lain)\nvisual_description: (Satu atau dua kata ringkas yang merangkum terlihat pada karakter, abaikan latar belakang)\n\nkenalpasti produk sesuai untuk lelakki atau perempuan, dan juga adakah produk tersebut unisex\n\nHanya kembalikan YAML. Jangan menjelaskan atau menambahkan kata, simbol atau komentar lain.\nOutput dalam bahasa English\n\nJika gambar adalah KEDUANYA, kembalikan kedua deskripsi seperti panduan di atas dalam format YAML",
        "modelId": {
          "__rl": true,
          "mode": "list",
          "value": "chatgpt-4o-latest",
          "cachedResultName": "CHATGPT-4O-LATEST"
        },
        "options": {},
        "resource": "image",
        "imageUrls": "=https://api.telegram.org/file/bot{{ $('Set Bot Token').item.json['bot id'] }}/{{ $json.result.file_path }}",
        "operation": "analyze"
      },
      "credentials": {
        "openAiApi": {
          "id": "aU3oyDayilaqb6iD",
          "name": "OpenAi account D"
        }
      },
      "typeVersion": 1.8
    },
    {
      "id": "24335a64-d6d8-4bcd-88a7-5f290a78a4e3",
      "name": "OpenAI Modèle de chat4",
      "type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
      "position": [
        -1376,
        1600
      ],
      "parameters": {
        "model": {
          "__rl": true,
          "mode": "list",
          "value": "gpt-4o",
          "cachedResultName": "gpt-4o"
        },
        "options": {}
      },
      "credentials": {
        "openAiApi": {
          "id": "aU3oyDayilaqb6iD",
          "name": "OpenAi account D"
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "19a41615-17ca-477c-983d-877b5345c78a",
      "name": "Attente5",
      "type": "n8n-nodes-base.wait",
      "position": [
        -1456,
        1280
      ],
      "webhookId": "47b96955-f67e-4b58-b71d-b743286be320",
      "parameters": {},
      "typeVersion": 1.1
    },
    {
      "id": "45bff024-ce1e-4677-8e1e-d5433035c492",
      "name": "Si3",
      "type": "n8n-nodes-base.if",
      "position": [
        -1136,
        2976
      ],
      "parameters": {
        "options": {},
        "conditions": {
          "options": {
            "version": 2,
            "leftValue": "",
            "caseSensitive": true,
            "typeValidation": "strict"
          },
          "combinator": "or",
          "conditions": [
            {
              "id": "9835b082-c46b-4a11-a27e-7079cd2c3771",
              "operator": {
                "type": "string",
                "operation": "equals"
              },
              "leftValue": "={{ $json.data.status }}",
              "rightValue": "completed"
            }
          ]
        }
      },
      "typeVersion": 2.2
    },
    {
      "id": "4dbe6920-2390-4c86-a903-e46e26577a3f",
      "name": "Extraire les données audio ElevenLabs",
      "type": "n8n-nodes-base.extractFromFile",
      "position": [
        -1360,
        2256
      ],
      "parameters": {
        "options": {},
        "operation": "binaryToPropery",
        "destinationKey": "=data"
      },
      "typeVersion": 1
    },
    {
      "id": "f048b919-ebad-44c4-b6de-18887898c3c5",
      "name": "Convertir l'audio en format WAV (voix féminine)",
      "type": "n8n-nodes-base.convertToFile",
      "position": [
        -1136,
        2256
      ],
      "parameters": {
        "options": {
          "mimeType": "audio/wav"
        },
        "operation": "toBinary",
        "sourceProperty": "data",
        "binaryPropertyName": "=data"
      },
      "typeVersion": 1.1
    },
    {
      "id": "dc2012ab-984e-4825-862a-6f07707bc132",
      "name": "Changer GENRE",
      "type": "n8n-nodes-base.switch",
      "position": [
        -1808,
        2352
      ],
      "parameters": {
        "rules": {
          "values": [
            {
              "outputKey": "perempuan",
              "conditions": {
                "options": {
                  "version": 2,
                  "leftValue": "",
                  "caseSensitive": true,
                  "typeValidation": "strict"
                },
                "combinator": "and",
                "conditions": [
                  {
                    "id": "38d1a55f-6aa5-4963-9e48-fb7533e465b4",
                    "operator": {
                      "type": "string",
                      "operation": "equals"
                    },
                    "leftValue": "={{ $json.content }}",
                    "rightValue": "perempuan"
                  }
                ]
              },
              "renameOutput": true
            },
            {
              "outputKey": "lelaki",
              "conditions": {
                "options": {
                  "version": 2,
                  "leftValue": "",
                  "caseSensitive": true,
                  "typeValidation": "strict"
                },
                "combinator": "and",
                "conditions": [
                  {
                    "id": "ae933594-4a20-4946-b550-03732f266124",
                    "operator": {
                      "name": "filter.operator.equals",
                      "type": "string",
                      "operation": "equals"
                    },
                    "leftValue": "={{ $json.content }}",
                    "rightValue": "lelaki"
                  }
                ]
              },
              "renameOutput": true
            }
          ]
        },
        "options": {}
      },
      "typeVersion": 3.2
    },
    {
      "id": "e225d3b3-fd2e-46b2-bd18-0b0e454d367f",
      "name": "CLONAGE AUDIO CE",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        -1584,
        2256
      ],
      "parameters": {
        "url": "https://api.elevenlabs.io/v1/text-to-speech/UcqZLa941Kkt8ZhEEybf",
        "method": "POST",
        "options": {},
        "jsonBody": "={\n  \"text\": \"{{ $('TTS & CAPTION1').item.json.output.textospeech }}\",\n  \"model_id\": \"eleven_multilingual_v2\"\n}",
        "sendBody": true,
        "sendHeaders": true,
        "specifyBody": "json",
        "headerParameters": {
          "parameters": [
            {
              "name": "xi-api-key",
              "value": "YOUR_ELEVENLABS_API_KEY"
            }
          ]
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "590c6447-7681-4076-82d1-039a4f009a44",
      "name": "Extraire les données audio ElevenLabs (masculin)",
      "type": "n8n-nodes-base.extractFromFile",
      "position": [
        -1360,
        2448
      ],
      "parameters": {
        "options": {},
        "operation": "binaryToPropery",
        "destinationKey": "=data"
      },
      "typeVersion": 1
    },
    {
      "id": "b4fb1721-f909-407f-a0ce-473261914ad9",
      "name": "Convertir l'audio en format WAV (voix masculine)",
      "type": "n8n-nodes-base.convertToFile",
      "position": [
        -1136,
        2448
      ],
      "parameters": {
        "options": {
          "mimeType": "audio/wav"
        },
        "operation": "toBinary",
        "sourceProperty": "data",
        "binaryPropertyName": "=data"
      },
      "typeVersion": 1.1
    },
    {
      "id": "5723ded8-b897-4a95-b6c0-b3ffb267fb89",
      "name": "CLONAGE AUDIO CO",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        -1584,
        2448
      ],
      "parameters": {
        "url": "https://api.elevenlabs.io/v1/text-to-speech/lMSqoJeA0cBBNA9FeHAs",
        "method": "POST",
        "options": {},
        "jsonBody": "={\n  \"text\": \"{{ $('TTS & CAPTION1').item.json.output.textospeech }}\",\n  \"model_id\": \"eleven_multilingual_v2\"\n}",
        "sendBody": true,
        "sendHeaders": true,
        "specifyBody": "json",
        "headerParameters": {
          "parameters": [
            {
              "name": "xi-api-key",
              "value": "YOUR_ELEVENLABS_API_KEY"
            }
          ]
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "86f1b593-97e0-482a-9eb5-3baba3a9228f",
      "name": "TÉLÉVERSER AUDIO LIPSYNC",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        -912,
        2352
      ],
      "parameters": {
        "url": "https://api.cloudinary.com/v1_1/YOUR_CLOUDINARY_CLOUD_NAME/auto/upload",
        "method": "POST",
        "options": {},
        "sendBody": true,
        "contentType": "multipart-form-data",
        "authentication": "genericCredentialType",
        "bodyParameters": {
          "parameters": [
            {
              "name": "file",
              "parameterType": "formBinaryData",
              "inputDataFieldName": "data"
            },
            {
              "name": "upload_preset",
              "value": "Picture"
            }
          ]
        },
        "genericAuthType": "httpBasicAuth"
      },
      "credentials": {
        "httpBasicAuth": {
          "id": "NvNiZpPploGsDbKY",
          "name": "Unnamed credential 2"
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "be462716-ca7b-4f48-b3b8-28911cef578d",
      "name": "Si4",
      "type": "n8n-nodes-base.if",
      "position": [
        -1232,
        1280
      ],
      "parameters": {
        "options": {},
        "conditions": {
          "options": {
            "version": 2,
            "leftValue": "",
            "caseSensitive": true,
            "typeValidation": "strict"
          },
          "combinator": "and",
          "conditions": [
            {
              "id": "7e6516d2-b83b-47ad-b481-12329ad95d93",
              "operator": {
                "type": "string",
                "operation": "notContains"
              },
              "leftValue": "={{ $('PROMPT PRODUK REVIEW').item.json.text }}",
              "rightValue": "\""
            }
          ]
        }
      },
      "typeVersion": 2.2
    },
    {
      "id": "8b51c9ce-fa77-4151-8353-886c07eb33b9",
      "name": "Attente 140s",
      "type": "n8n-nodes-base.wait",
      "position": [
        -1584,
        2976
      ],
      "webhookId": "c946501f-fbc7-4128-bbc9-1c4ac4d9549e",
      "parameters": {
        "amount": 140
      },
      "typeVersion": 1.1
    },
    {
      "id": "c415ece3-4275-4d3d-bce4-c02072c66a25",
      "name": "Si5",
      "type": "n8n-nodes-base.if",
      "position": [
        -640,
        1280
      ],
      "parameters": {
        "options": {},
        "conditions": {
          "options": {
            "version": 2,
            "leftValue": "",
            "caseSensitive": true,
            "typeValidation": "strict"
          },
          "combinator": "and",
          "conditions": [
            {
              "id": "f956c9c4-79e8-4f55-a227-d7c6a5365c6b",
              "operator": {
                "type": "string",
                "operation": "notContains"
              },
              "leftValue": "={{ $json.output.caption }}",
              "rightValue": "\""
            }
          ]
        }
      },
      "typeVersion": 2.2
    },
    {
      "id": "a98e088d-bd9a-46ac-8de2-a9b12c0a8b59",
      "name": "CRÉER LIPSYNC V1",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        -1808,
        2976
      ],
      "parameters": {
        "url": "https://api.wavespeed.ai/api/v3/wavespeed-ai/infinitetalk",
        "method": "POST",
        "options": {
          "redirect": {
            "redirect": {}
          }
        },
        "sendBody": true,
        "sendHeaders": true,
        "bodyParameters": {
          "parameters": [
            {
              "name": "audio",
              "value": "={{ $('UPLOAD AUDIO LIPSYNC').item.json.secure_url }}"
            },
            {
              "name": "image",
              "value": "={{ $('UPLOAD NEW IMG V1').item.json.secure_url }}"
            },
            {
              "name": "prompt",
              "value": "=Natural everyday motion, subtle realistic actions.. kadang-kadang melihat, menyentuh dengan satu atau dua tangan mengikut kesuaian kegunaan produk, character juga boleh menunjuk ke produk sambil tetap melihat ke arah kamera hadapan"
            },
            {
              "name": "resolution",
              "value": "480p"
            },
            {
              "name": "seed",
              "value": "-1"
            },
            {}
          ]
        },
        "headerParameters": {
          "parameters": [
            {
              "name": "Authorization",
              "value": "Bearer YOUR_TOKEN_HERE"
            }
          ]
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "e05a370a-3414-4b36-a16b-b3a78543cb12",
      "name": "TÉLÉVERSER VIDÉO REVUE V1",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        -912,
        2960
      ],
      "parameters": {
        "url": "https://api.cloudinary.com/v1_1/YOUR_CLOUDINARY_CLOUD_NAME/auto/upload",
        "method": "POST",
        "options": {},
        "sendBody": true,
        "contentType": "multipart-form-data",
        "authentication": "genericCredentialType",
        "bodyParameters": {
          "parameters": [
            {
              "name": "file",
              "value": "={{ $json.data.outputs[0] }}"
            },
            {
              "name": "upload_preset",
              "value": "Picture"
            }
          ]
        },
        "genericAuthType": "httpBasicAuth"
      },
      "credentials": {
        "httpBasicAuth": {
          "id": "NvNiZpPploGsDbKY",
          "name": "Unnamed credential 2"
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "f70d9c8e-57fc-4e2f-9ebd-5c7d39e4d62a",
      "name": "Attente",
      "type": "n8n-nodes-base.wait",
      "position": [
        -752,
        752
      ],
      "webhookId": "34c44f13-73c4-437b-b260-9082d5902f08",
      "parameters": {},
      "typeVersion": 1.1
    },
    {
      "id": "2f208089-21ba-44c2-81c7-f8e70d0902f6",
      "name": "CRÉER NOUVELLE IMG1",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        -1808,
        1824
      ],
      "parameters": {
        "url": "https://api.wavespeed.ai/api/v3/google/nano-banana/edit",
        "method": "POST",
        "options": {
          "redirect": {
            "redirect": {}
          }
        },
        "jsonBody": "={\n  \"aspect_ratio\": \"9:16\",\n  \"enable_base64_output\": false,\n  \"enable_sync_mode\": false,\n  \"images\": [\n    \"https://api.telegram.org/file/bot{{ $('Set Bot Token').item.json['bot id'] }}/{{ $('Image Path (getFile)').item.json.result.file_path }}\"\n  ],\n  \"output_format\": \"jpeg\",\n  \"prompt\": \"{{ $('PROMPT PRODUK REVIEW').item.json.text }}\"\n}",
        "sendBody": true,
        "sendHeaders": true,
        "specifyBody": "json",
        "headerParameters": {
          "parameters": [
            {
              "name": "Authorization",
              "value": "Bearer YOUR_TOKEN_HERE"
            }
          ]
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "ac00d570-f904-4200-a519-9f905374246a",
      "name": "Attente 65s1",
      "type": "n8n-nodes-base.wait",
      "position": [
        -1584,
        1824
      ],
      "webhookId": "c946501f-fbc7-4128-bbc9-1c4ac4d9549e",
      "parameters": {
        "amount": 65
      },
      "typeVersion": 1.1
    },
    {
      "id": "3e3d0500-359c-425d-b2e0-6a206b23310e",
      "name": "Si1",
      "type": "n8n-nodes-base.if",
      "position": [
        -1136,
        1824
      ],
      "parameters": {
        "options": {},
        "conditions": {
          "options": {
            "version": 2,
            "leftValue": "",
            "caseSensitive": true,
            "typeValidation": "strict"
          },
          "combinator": "or",
          "conditions": [
            {
              "id": "9835b082-c46b-4a11-a27e-7079cd2c3771",
              "operator": {
                "type": "string",
                "operation": "equals"
              },
              "leftValue": "={{ $json.data.status }}",
              "rightValue": "completed"
            }
          ]
        }
      },
      "typeVersion": 2.2
    },
    {
      "id": "87481d57-6f97-4c92-b4bf-d59e230cd702",
      "name": "OBTENIR STATUT NOUVELLE IMG1",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        -1360,
        1824
      ],
      "parameters": {
        "url": "=https://api.wavespeed.ai/api/v3/predictions/{{ $json.data.id }}/result",
        "options": {
          "redirect": {
            "redirect": {}
          }
        },
        "sendHeaders": true,
        "headerParameters": {
          "parameters": [
            {
              "name": "Authorization",
              "value": "Bearer YOUR_TOKEN_HERE"
            }
          ]
        }
      },
      "retryOnFail": false,
      "typeVersion": 4.2,
      "waitBetweenTries": 3000
    },
    {
      "id": "601d1712-c1d8-4035-bb5b-3f186bee3a8f",
      "name": "TÉLÉVERSER NOUVELLE IMG V1",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        -912,
        1920
      ],
      "parameters": {
        "url": "https://api.cloudinary.com/v1_1/YOUR_CLOUDINARY_CLOUD_NAME/auto/upload",
        "method": "POST",
        "options": {},
        "sendBody": true,
        "contentType": "multipart-form-data",
        "authentication": "genericCredentialType",
        "bodyParameters": {
          "parameters": [
            {
              "name": "file",
              "value": "={{ $json.data.outputs[0] }}"
            },
            {
              "name": "upload_preset",
              "value": "Picture"
            }
          ]
        },
        "genericAuthType": "httpBasicAuth"
      },
      "credentials": {
        "httpBasicAuth": {
          "id": "NvNiZpPploGsDbKY",
          "name": "Unnamed credential 2"
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "b68551d3-4fa5-462a-9523-9b95682cd47d",
      "name": "OBTENIR STATUT LIPSYNC V1",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        -1360,
        2976
      ],
      "parameters": {
        "url": "=https://api.wavespeed.ai/api/v3/predictions/{{ $json.data.id }}/result",
        "options": {
          "redirect": {
            "redirect": {}
          }
        },
        "sendHeaders": true,
        "headerParameters": {
          "parameters": [
            {
              "name": "Authorization",
              "value": "Bearer YOUR_TOKEN_HERE"
            }
          ]
        }
      },
      "retryOnFail": false,
      "typeVersion": 4.2,
      "waitBetweenTries": 3000
    },
    {
      "id": "f64964fb-e44d-43f0-8a94-30ad128bd8bb",
      "name": "Telegram Déclencheur",
      "type": "n8n-nodes-base.telegramTrigger",
      "position": [
        -1872,
        752
      ],
      "webhookId": "54e3bc4b-608f-4432-8c03-811c75afa4b1",
      "parameters": {
        "updates": [
          "message"
        ],
        "additionalFields": {}
      },
      "credentials": {
        "telegramApi": {
          "id": "GAEE7YofmSUolvTh",
          "name": "Viral CCTV animal"
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "97029fa3-d4da-4507-9bfa-505dcbff8295",
      "name": "Définir le jeton du bot",
      "type": "n8n-nodes-base.set",
      "position": [
        -1648,
        752
      ],
      "parameters": {
        "options": {},
        "assignments": {
          "assignments": [
            {
              "id": "e4524d93-d12a-47aa-a6bf-c15e6d1b29c1",
              "name": "bot id",
              "type": "string",
              "value": "YOUR_TELEGRAM_BOT_TOKEN"
            }
          ]
        }
      },
      "typeVersion": 3.4
    },
    {
      "id": "28386600-e8dc-4ecd-92cc-7cab0249ba6f",
      "name": "Chemin d'image (getFile)",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        -1424,
        752
      ],
      "parameters": {
        "url": "=https://api.telegram.org/bot{{ $json['bot id'] }}/getFile?file_id={{ $('Telegram Trigger').item.json.message.photo[0].file_id }}",
        "options": {}
      },
      "typeVersion": 4.2
    },
    {
      "id": "4ab95eb8-27f8-47eb-8ac6-e912d7866a4f",
      "name": "Télécharger le fichier → Image",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        -1200,
        752
      ],
      "parameters": {
        "url": "=https://api.telegram.org/file/bot{{ $('Set Bot Token').item.json['bot id'] }}/{{ $json.result.file_path }}",
        "options": {}
      },
      "typeVersion": 4.2
    },
    {
      "id": "aca9fc24-cd9d-4f59-a419-e262af880e13",
      "name": "Envoyer une vidéo",
      "type": "n8n-nodes-base.telegram",
      "position": [
        -688,
        2960
      ],
      "webhookId": "fb0598c7-fc18-478b-b88d-cc961c43f430",
      "parameters": {
        "file": "={{ $json.url }}",
        "chatId": "52664079",
        "operation": "sendVideo",
        "additionalFields": {}
      },
      "credentials": {
        "telegramApi": {
          "id": "GAEE7YofmSUolvTh",
          "name": "Viral CCTV animal"
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "dc3e4287-cfef-43be-bd56-0a9a9349d189",
      "name": "Envoyer un message photo",
      "type": "n8n-nodes-base.telegram",
      "position": [
        -912,
        1728
      ],
      "webhookId": "fb0598c7-fc18-478b-b88d-cc961c43f430",
      "parameters": {
        "file": "={{ $json.data.outputs[0] }}",
        "chatId": "52664079",
        "operation": "sendPhoto",
        "additionalFields": {}
      },
      "credentials": {
        "telegramApi": {
          "id": "GAEE7YofmSUolvTh",
          "name": "Viral CCTV animal"
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "13229295-84ec-43be-a374-d597b41cb0dc",
      "name": "Analyser IMG NEW2",
      "type": "@n8n/n8n-nodes-langchain.openAi",
      "position": [
        -688,
        1920
      ],
      "parameters": {
        "text": "=Analisis gambar yang diberikan dan tentukan gender dari karakter yang ada di gambar adakah : \n\n- Lelaki \natau \n- Perempuan\n\n# Output\nHuruf kecil semua \nKembalikan output tanpa ada tambahan kata atau simbol apapun",
        "modelId": {
          "__rl": true,
          "mode": "list",
          "value": "chatgpt-4o-latest",
          "cachedResultName": "CHATGPT-4O-LATEST"
        },
        "options": {},
        "resource": "image",
        "imageUrls": "={{ $json.secure_url }}",
        "operation": "analyze"
      },
      "credentials": {
        "openAiApi": {
          "id": "aU3oyDayilaqb6iD",
          "name": "OpenAi account D"
        }
      },
      "typeVersion": 1.8
    },
    {
      "id": "4377c00f-f918-484a-970b-6c99f6563ac4",
      "name": "Note adhésive6",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -2368,
        1376
      ],
      "parameters": {
        "width": 400,
        "height": 992,
        "content": "## 🔧 Complete Setup & Integration Guide\n\n**📋 Required API Keys & Services:**\n\n1. **OpenAI API**\n   • Get from: https://platform.openai.com/api-keys\n   • Used for: GPT-4 Vision image analysis\n   • Add to: OpenAI Chat Model4 & Analyze YAML nodes\n\n2. **ElevenLabs API**\n   • Get from: https://elevenlabs.io/app/settings/api-keys\n   • Used for: Voice cloning & text-to-speech\n   • Replace 'YOUR_ELEVENLABS_API_KEY' in CLONING AUDIO nodes\n   • Voice IDs: Male (UcqZLa941Kkt8ZhEEybf), Female (lMSqoJeA0cBBNA9FeHAs)\n\n3. **WaveSpeed AI API**\n   • Get from: https://wavespeed.ai/\n   • Used for: Image generation & lip-sync video creation\n   • Replace 'YOUR_WAVESPEED_API_KEY' in CREATE nodes\n\n4. **Cloudinary API**\n   • Get from: https://cloudinary.com/console\n   • Used for: File hosting & storage\n   • Replace 'YOUR_CLOUDINARY_CLOUD_NAME' in UPLOAD nodes\n   • Set upload preset to 'Picture'\n\n5. **Telegram Bot Token**\n   • Create bot via @BotFather on Telegram\n   • Replace 'YOUR_TELEGRAM_BOT_TOKEN' in Set Bot Token node\n   • Set chat ID for final delivery\n\n**⚡ Quick Setup Steps:**\n1. Copy all API keys to respective nodes\n2. Configure Cloudinary upload preset\n3. Test with a product image via Telegram bot\n4. Monitor processing times (65s for images, 140s for videos)\n\n**📤 Expected Output:** Professional testimonial video delivered via Telegram"
      },
      "typeVersion": 1
    },
    {
      "id": "41c2a2fa-dd68-4bb1-9c8a-af4c7d721ff7",
      "name": "Note adhésive10",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -2384,
        720
      ],
      "parameters": {
        "color": 5,
        "width": 420,
        "height": 640,
        "content": "## 🎬 Create Authentic UGC Video Ads with GPT-4o, ElevenLabs & WaveSpeed Lip-Sync\n\n**What it does:** AI-powered workflow to create authentic-looking customer testimonial videos with voice synthesis and lip-sync technology\n\n**How it works:**\n1. 📱 Receives product image via Telegram bot\n2. 🤖 GPT-4o Vision analyzes product, colors, brand, demographics\n3. 📝 AI generates authentic testimonial scripts and prompts\n4. 🎨 WaveSpeed AI creates realistic customer review images\n5. 🎤 ElevenLabs generates natural voice-over (Malay/English)\n6. 👄 WaveSpeed AI syncs audio with character lip movements\n7. 📤 Delivers final UGC video via Telegram\n\n**Tech Stack:** GPT-4o, ElevenLabs, WaveSpeed AI, Cloudinary\n**Processing Time:** ~3-5 minutes per video\n**Output:** 480p testimonial videos ready for TikTok/Instagram"
      },
      "typeVersion": 1
    },
    {
      "id": "592a4409-86eb-4a19-bcf2-a16cc9a07cbb",
      "name": "Note adhésive13",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -2368,
        2384
      ],
      "parameters": {
        "color": 3,
        "width": 400,
        "height": 688,
        "content": "## ⚖️ Ethical AI Content Generation\n\n**🧭 Responsible AI Use Guidelines:**\n\n**✅ DO:**\n• Clearly label AI-generated content as synthetic\n• Use for legitimate marketing and advertising\n• Respect platform terms of service\n• Ensure content is honest about product claims\n• Comply with local advertising regulations\n\n**❌ DON'T:**\n• Mislead viewers about product authenticity\n• Create false or deceptive reviews\n• Generate content without proper disclosure\n• Violate copyright or impersonate individuals\n• Use for misinformation or scams\n\n**📋 Compliance Checklist:**\n• [ ] Content complies with platform policies\n• [ ] Synthetic content is clearly disclosed\n• [ ] Product claims are truthful and verifiable\n• [ ] You have rights to use product imagery\n• [ ] Voice cloning complies with ElevenLabs TOS\n• [ ] Generated faces don't resemble real people\n\n**🌍 Platform-Specific Requirements:**\n• TikTok: #Ad disclosure required\n• Instagram: Paid Partnership label\n• YouTube: Sponsored content disclosure\n• Facebook: Ad transparency requirements\n\n**💬 When in doubt:** Consult legal counsel for advertising compliance in your jurisdiction."
      },
      "typeVersion": 1
    }
  ],
  "pinData": {},
  "connections": {
    "3e3d0500-359c-425d-b2e0-6a206b23310e": {
      "main": [
        [
          {
            "node": "601d1712-c1d8-4035-bb5b-3f186bee3a8f",
            "type": "main",
            "index": 0
          },
          {
            "node": "dc3e4287-cfef-43be-bd56-0a9a9349d189",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "ac00d570-f904-4200-a519-9f905374246a",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "45bff024-ce1e-4677-8e1e-d5433035c492": {
      "main": [
        [
          {
            "node": "e05a370a-3414-4b36-a16b-b3a78543cb12",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "8b51c9ce-fa77-4151-8353-886c07eb33b9",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "be462716-ca7b-4f48-b3b8-28911cef578d": {
      "main": [
        [
          {
            "node": "8b28affe-3dbe-45a9-920b-d3163be8be47",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "b7032772-7423-43f9-b6af-1b7abe7e06d3",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "c415ece3-4275-4d3d-bce4-c02072c66a25": {
      "main": [
        [
          {
            "node": "2f208089-21ba-44c2-81c7-f8e70d0902f6",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "8b28affe-3dbe-45a9-920b-d3163be8be47",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "f70d9c8e-57fc-4e2f-9ebd-5c7d39e4d62a": {
      "main": [
        [
          {
            "node": "b7032772-7423-43f9-b6af-1b7abe7e06d3",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "19a41615-17ca-477c-983d-877b5345c78a": {
      "main": [
        [
          {
            "node": "be462716-ca7b-4f48-b3b8-28911cef578d",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "8b51c9ce-fa77-4151-8353-886c07eb33b9": {
      "main": [
        [
          {
            "node": "b68551d3-4fa5-462a-9523-9b95682cd47d",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "ac00d570-f904-4200-a519-9f905374246a": {
      "main": [
        [
          {
            "node": "87481d57-6f97-4c92-b4bf-d59e230cd702",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "cbf9ec2a-2d03-44e6-9e74-7b323fe9678f": {
      "main": [
        [
          {
            "node": "f70d9c8e-57fc-4e2f-9ebd-5c7d39e4d62a",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "97029fa3-d4da-4507-9bfa-505dcbff8295": {
      "main": [
        [
          {
            "node": "28386600-e8dc-4ecd-92cc-7cab0249ba6f",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "dc2012ab-984e-4825-862a-6f07707bc132": {
      "main": [
        [
          {
            "node": "e225d3b3-fd2e-46b2-bd18-0b0e454d367f",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "5723ded8-b897-4a95-b6c0-b3ffb267fb89",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "8b28affe-3dbe-45a9-920b-d3163be8be47": {
      "main": [
        [
          {
            "node": "c415ece3-4275-4d3d-bce4-c02072c66a25",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "2f208089-21ba-44c2-81c7-f8e70d0902f6": {
      "main": [
        [
          {
            "node": "ac00d570-f904-4200-a519-9f905374246a",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "13229295-84ec-43be-a374-d597b41cb0dc": {
      "main": [
        [
          {
            "node": "dc2012ab-984e-4825-862a-6f07707bc132",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "e225d3b3-fd2e-46b2-bd18-0b0e454d367f": {
      "main": [
        [
          {
            "node": "4dbe6920-2390-4c86-a903-e46e26577a3f",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "5723ded8-b897-4a95-b6c0-b3ffb267fb89": {
      "main": [
        [
          {
            "node": "590c6447-7681-4076-82d1-039a4f009a44",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "f64964fb-e44d-43f0-8a94-30ad128bd8bb": {
      "main": [
        [
          {
            "node": "97029fa3-d4da-4507-9bfa-505dcbff8295",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "a98e088d-bd9a-46ac-8de2-a9b12c0a8b59": {
      "main": [
        [
          {
            "node": "8b51c9ce-fa77-4151-8353-886c07eb33b9",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "601d1712-c1d8-4035-bb5b-3f186bee3a8f": {
      "main": [
        [
          {
            "node": "13229295-84ec-43be-a374-d597b41cb0dc",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "24335a64-d6d8-4bcd-88a7-5f290a78a4e3": {
      "ai_languageModel": [
        [
          {
            "node": "b7032772-7423-43f9-b6af-1b7abe7e06d3",
            "type": "ai_languageModel",
            "index": 0
          },
          {
            "node": "8b28affe-3dbe-45a9-920b-d3163be8be47",
            "type": "ai_languageModel",
            "index": 0
          },
          {
            "node": "80172961-c769-47cb-ab89-92d6b38d18a2",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "87481d57-6f97-4c92-b4bf-d59e230cd702": {
      "main": [
        [
          {
            "node": "3e3d0500-359c-425d-b2e0-6a206b23310e",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "28386600-e8dc-4ecd-92cc-7cab0249ba6f": {
      "main": [
        [
          {
            "node": "4ab95eb8-27f8-47eb-8ac6-e912d7866a4f",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "b7032772-7423-43f9-b6af-1b7abe7e06d3": {
      "main": [
        [
          {
            "node": "19a41615-17ca-477c-983d-877b5345c78a",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "86f1b593-97e0-482a-9eb5-3baba3a9228f": {
      "main": [
        [
          {
            "node": "a98e088d-bd9a-46ac-8de2-a9b12c0a8b59",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "b68551d3-4fa5-462a-9523-9b95682cd47d": {
      "main": [
        [
          {
            "node": "45bff024-ce1e-4677-8e1e-d5433035c492",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "e05a370a-3414-4b36-a16b-b3a78543cb12": {
      "main": [
        [
          {
            "node": "aca9fc24-cd9d-4f59-a419-e262af880e13",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "4ab95eb8-27f8-47eb-8ac6-e912d7866a4f": {
      "main": [
        [
          {
            "node": "cbf9ec2a-2d03-44e6-9e74-7b323fe9678f",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "80172961-c769-47cb-ab89-92d6b38d18a2": {
      "ai_outputParser": [
        [
          {
            "node": "8b28affe-3dbe-45a9-920b-d3163be8be47",
            "type": "ai_outputParser",
            "index": 0
          }
        ]
      ]
    },
    "4dbe6920-2390-4c86-a903-e46e26577a3f": {
      "main": [
        [
          {
            "node": "f048b919-ebad-44c4-b6de-18887898c3c5",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "590c6447-7681-4076-82d1-039a4f009a44": {
      "main": [
        [
          {
            "node": "b4fb1721-f909-407f-a0ce-473261914ad9",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "b4fb1721-f909-407f-a0ce-473261914ad9": {
      "main": [
        [
          {
            "node": "86f1b593-97e0-482a-9eb5-3baba3a9228f",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "f048b919-ebad-44c4-b6de-18887898c3c5": {
      "main": [
        [
          {
            "node": "86f1b593-97e0-482a-9eb5-3baba3a9228f",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}
Foire aux questions

Comment utiliser ce workflow ?

Copiez le code de configuration JSON ci-dessus, créez un nouveau workflow dans votre instance n8n et sélectionnez "Importer depuis le JSON", collez la configuration et modifiez les paramètres d'authentification selon vos besoins.

Dans quelles scénarios ce workflow est-il adapté ?

Avancé - Création de contenu, IA Multimodale

Est-ce payant ?

Ce workflow est entièrement gratuit et peut être utilisé directement. Veuillez noter que les services tiers utilisés dans le workflow (comme l'API OpenAI) peuvent nécessiter un paiement de votre part.

Informations sur le workflow
Niveau de difficulté
Avancé
Nombre de nœuds38
Catégorie2
Types de nœuds15
Description de la difficulté

Adapté aux utilisateurs avancés, avec des workflows complexes contenant 16+ nœuds

Liens externes
Voir sur n8n.io

Partager ce workflow

Catégories

Catégories: 34