Workflow n8n

Automatisation Twitter avec n8n : publication de tweets programmée

Ce workflow n8n a pour objectif d'automatiser la publication de tweets sur Twitter, permettant ainsi aux entreprises et aux influenceurs de maintenir une présence active sur les réseaux sociaux sans effort manuel constant. En intégrant des fonctionnalités telles que la génération de contenu via OpenAI et des vérifications de contraintes, ce workflow est idéal pour les équipes marketing cherchant à optimiser leur stratégie de communication. Le processus commence par un déclencheur, soit manuel, soit programmé pour s'exécuter toutes les six heures. Ensuite, le contenu du tweet est généré automatiquement grâce à l'intégration d'OpenAI, garantissant des messages pertinents et engageants. Avant la publication, une vérification des contraintes est effectuée pour s'assurer que le tweet respecte les règles de Twitter. Après validation, le tweet est publié via le nœud Twitter. Ce workflow n8n offre une solution efficace pour réduire le temps consacré à la gestion des réseaux sociaux tout en augmentant l'engagement des utilisateurs. En automatisant ce processus, les entreprises peuvent se concentrer sur d'autres aspects de leur stratégie marketing, tout en maintenant une communication fluide et continue avec leur audience. Tags clés : automatisation, Twitter, n8n.

Catégorie: Scheduled | Manual · Tags: automatisation, Twitter, n8n, réseaux sociaux, marketing digital0

Vue d'ensemble du workflow n8n

Schéma des nœuds et connexions de ce workflow n8n, généré à partir du JSON n8n.

Détail des nœuds du workflow n8n

  • Sticky Note

    Ce noeud crée une note autocollante avec un contenu spécifié.

  • Post tweet

    Ce noeud envoie un tweet avec le texte fourni et des champs supplémentaires.

  • Schedule posting every 6 hours

    Ce noeud déclenche le workflow toutes les 6 heures selon une règle définie.

  • Trigger posting manually

    Ce noeud permet de déclencher manuellement le workflow.

  • Sticky Note1

    Ce noeud crée une autre note autocollante avec un contenu spécifié.

  • Sticky Note3

    Ce noeud génère une note autocollante supplémentaire avec un contenu donné.

  • Sticky Note4

    Ce noeud crée une note autocollante avec un contenu défini.

  • Sticky Note5

    Ce noeud génère une note autocollante avec des paramètres spécifiés.

  • Verify tweet constraints

    Ce noeud vérifie si les contraintes du tweet sont respectées selon des conditions définies.

  • Sticky Note2

    Ce noeud crée une note autocollante avec un contenu spécifié.

  • Generate tweet content

    Ce noeud génère le contenu du tweet en utilisant les options et messages fournis.

  • Configure your influencer profile

    Ce noeud configure le profil d'influenceur avec les options et affectations spécifiées.

Inscris-toi pour voir l'intégralité du workflow

Inscription gratuite

S'inscrire gratuitementBesoin d'aide ?
{
  "meta": {
    "instanceId": "cb484ba7b742928a2048bf8829668bed5b5ad9787579adea888f05980292a4a7"
  },
  "nodes": [
    {
      "id": "ea9ddb4c-af49-480c-8b73-221b3741069d",
      "name": "Sticky Note",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        920,
        400
      ],
      "parameters": {
        "width": 389,
        "height": 265,
        "content": "## Scheduled posting \nWrite a tweet every 6 hours and randomize the minutes that it's posted at to make it seem natural.\n"
      },
      "typeVersion": 1
    },
    {
      "id": "9650b047-7d5e-4ed2-948c-d5be77a94b5d",
      "name": "Post tweet",
      "type": "n8n-nodes-base.twitter",
      "position": [
        2940,
        520
      ],
      "parameters": {
        "text": "={{ $json.message.content.tweet }}",
        "additionalFields": {}
      },
      "credentials": {
        "twitterOAuth2Api": {
          "id": "b3qa9dBp2PxbufK3",
          "name": "X account"
        }
      },
      "typeVersion": 2
    },
    {
      "id": "fd7fc941-37de-4f88-87c0-f62ad1ebe2d6",
      "name": "Schedule posting every 6 hours",
      "type": "n8n-nodes-base.scheduleTrigger",
      "position": [
        1140,
        500
      ],
      "parameters": {
        "rule": {
          "interval": [
            {
              "field": "hours",
              "hoursInterval": 6,
              "triggerAtMinute": "={{ Math.floor(Math.random() * 60) }}"
            }
          ]
        }
      },
      "typeVersion": 1.1
    },
    {
      "id": "107fd741-5c17-4cd6-98aa-088bf8df523d",
      "name": "Trigger posting manually",
      "type": "n8n-nodes-base.manualTrigger",
      "position": [
        1140,
        820
      ],
      "parameters": {},
      "typeVersion": 1
    },
    {
      "id": "831cd431-56e5-482e-a8a5-e5c5ac078ba4",
      "name": "Sticky Note1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1360,
        400
      ],
      "parameters": {
        "width": 389,
        "height": 265,
        "content": "## Configure influencer profile \nSet your target niche, writing style, and inspiration.\n"
      },
      "typeVersion": 1
    },
    {
      "id": "791c0be9-6396-4768-ab6b-3ca7fe49fbea",
      "name": "Sticky Note3",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1800,
        400
      ],
      "parameters": {
        "width": 389,
        "height": 265,
        "content": "## Generate tweet\nGenerate a potentially viral tweet based on your configuration."
      },
      "typeVersion": 1
    },
    {
      "id": "3b2872cf-38f9-4cfd-befd-ad792219c313",
      "name": "Sticky Note4",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        2240,
        400
      ],
      "parameters": {
        "width": 389,
        "height": 265,
        "content": "## Validate tweet\nIf the generated tweet does not meet length constraints, regenerate it."
      },
      "typeVersion": 1
    },
    {
      "id": "364310a1-0367-4ce2-a91b-9a9c4d9387a0",
      "name": "Sticky Note5",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        2680,
        400
      ],
      "parameters": {
        "width": 389,
        "height": 265,
        "content": "## Post the tweet\nPost the tweet to your X account."
      },
      "typeVersion": 1
    },
    {
      "id": "c666ba9f-d28d-449b-8e20-65c0150cba5b",
      "name": "Verify tweet constraints",
      "type": "n8n-nodes-base.if",
      "position": [
        2480,
        500
      ],
      "parameters": {
        "options": {},
        "conditions": {
          "options": {
            "leftValue": "",
            "caseSensitive": true,
            "typeValidation": "strict"
          },
          "combinator": "and",
          "conditions": [
            {
              "id": "0a6ebbb6-4b14-4c7e-9390-215e32921663",
              "operator": {
                "type": "number",
                "operation": "gt"
              },
              "leftValue": "={{ $json.message.content.tweet.length }}",
              "rightValue": 280
            }
          ]
        }
      },
      "typeVersion": 2
    },
    {
      "id": "9bf25238-98ba-4201-aecc-22be27f095c8",
      "name": "Sticky Note2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        920,
        720
      ],
      "parameters": {
        "width": 389,
        "height": 265,
        "content": "## On-demand posting \nWrite a tweet on demand, when you manually run your workflow.\n"
      },
      "typeVersion": 1
    },
    {
      "id": "4b95c041-a70e-42f9-9467-26de2abe6b7a",
      "name": "Generate tweet content",
      "type": "@n8n/n8n-nodes-langchain.openAi",
      "position": [
        1900,
        500
      ],
      "parameters": {
        "modelId": {
          "__rl": true,
          "mode": "list",
          "value": "gpt-4-turbo-preview",
          "cachedResultName": "GPT-4-TURBO-PREVIEW"
        },
        "options": {},
        "messages": {
          "values": [
            {
              "role": "system",
              "content": "=You are a successful modern Twitter influencer. Your tweets always go viral. "
            },
            {
              "role": "system",
              "content": "=You have a specific writing style: {{ $json.style }}"
            },
            {
              "role": "system",
              "content": "=You follow the principles described in your inspiration sources closely and you write your tweets based on that: {{ $json.inspiration }}"
            },
            {
              "role": "system",
              "content": "=You have a very specific niche: {{ $json.niche }}"
            },
            {
              "role": "system",
              "content": "=Answer with the viral tweet and nothing else as a response. Keep the tweet within 280 characters. Current date and time are {{DateTime.now()}}. Add hashtags and emojis where relevant."
            },
            {
              "content": "Write a tweet that is certain to go viral. Take your time in writing it. Think. Use the vast knowledge you have."
            }
          ]
        },
        "jsonOutput": true
      },
      "credentials": {
        "openAiApi": {
          "id": "294",
          "name": "Alex's OpenAI Account"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "18f1af3a-58b3-4a4d-a8ad-3657da9c41ba",
      "name": "Configure your influencer profile",
      "type": "n8n-nodes-base.set",
      "position": [
        1580,
        500
      ],
      "parameters": {
        "options": {},
        "assignments": {
          "assignments": [
            {
              "id": "45268b04-68a1-420f-9ad2-950844d16af1",
              "name": "niche",
              "type": "string",
              "value": "Modern Stoicism. You tweet about the greatest stoics, their ideas, their quotes, and how their wisdom applies in today's modern life. You love sharing personal stories and experiences."
            },
            {
              "id": "d95f4a1c-ab1c-4eca-8732-3d7a087f82d8",
              "name": "style",
              "type": "string",
              "value": "All of your tweets are very personal. "
            },
            {
              "id": "1ee088f7-7021-48c0-bcb7-d1011eb0db3d",
              "name": "inspiration",
              "type": "string",
              "value": "Your inspiration comes from tens of books on stoicism, psychology, and how to influence people. Books such as \"Contagious\" by Jonah Bergen, \"How To Be Internet Famous\" by Brendan Cox, \"How to Win Friends and Influence People\" by Dale Carnegie, and \"Influencers and Creators\" by Robert V Kozinets, Ulrike Gretzel, Rossella Gambetti strongly influence the way you write your tweets. "
            }
          ]
        }
      },
      "typeVersion": 3.3
    }
  ],
  "pinData": {},
  "connections": {
    "Generate tweet content": {
      "main": [
        [
          {
            "node": "Verify tweet constraints",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Trigger posting manually": {
      "main": [
        [
          {
            "node": "Configure your influencer profile",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Verify tweet constraints": {
      "main": [
        [
          {
            "node": "Configure your influencer profile",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Post tweet",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Schedule posting every 6 hours": {
      "main": [
        [
          {
            "node": "Configure your influencer profile",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Configure your influencer profile": {
      "main": [
        [
          {
            "node": "Generate tweet content",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}

Pour qui est ce workflow ?

Ce workflow s'adresse principalement aux équipes marketing, aux influenceurs et aux entreprises souhaitant automatiser leur présence sur Twitter. Il convient aux utilisateurs ayant un niveau technique intermédiaire, ainsi qu'aux petites et moyennes entreprises cherchant à optimiser leur communication sur les réseaux sociaux.

Problème résolu

Ce workflow résout le problème de la gestion manuelle des publications sur Twitter, qui peut être chronophage et sujet à des erreurs. En automatisant la création et la publication de tweets, les utilisateurs peuvent éviter les oublis et s'assurer que leur contenu est diffusé de manière régulière. Cela réduit également le risque de non-conformité aux règles de Twitter, garantissant ainsi une présence en ligne plus professionnelle et efficace.

Étapes du workflow

Étape 1 : Le workflow est déclenché soit manuellement, soit selon un calendrier défini pour publier tous les six heures. Étape 2 : Le nœud 'Generate tweet content' utilise OpenAI pour créer le contenu du tweet. Étape 3 : Une vérification des contraintes est effectuée avec le nœud 'Verify tweet constraints' pour s'assurer que le tweet respecte les règles de Twitter. Étape 4 : Si les conditions sont remplies, le tweet est publié via le nœud 'Post tweet'. Étape 5 : Des notes autocollantes sont utilisées tout au long du processus pour documenter les étapes et les décisions.

Guide de personnalisation du workflow n8n

Pour personnaliser ce workflow, vous pouvez modifier les paramètres du nœud 'Generate tweet content' afin d'ajuster le type de contenu généré. Il est également possible de changer la fréquence de publication dans le nœud 'Schedule posting every 6 hours' pour répondre à vos besoins spécifiques. Assurez-vous que les contraintes dans le nœud 'Verify tweet constraints' correspondent à vos objectifs de communication. Enfin, vous pouvez intégrer d'autres outils ou services si nécessaire, en utilisant des nœuds HTTP ou d'autres intégrations disponibles dans n8n.