Workflow n8n

Automatisation Telegram avec n8n : assistant personnel intelligent

Ce workflow n8n, intitulé 'Ultimate Personal Assistant', vise à automatiser des interactions sur Telegram en intégrant plusieurs agents intelligents. Dans un contexte où la gestion du temps et des tâches est cruciale pour les entreprises, ce workflow permet de répondre rapidement aux demandes des utilisateurs, d'envoyer des emails, de gérer des contacts et de créer du contenu, le tout de manière fluide et efficace. En utilisant des outils comme OpenAI pour le traitement du langage naturel et des agents dédiés pour chaque tâche, ce système offre une solution complète pour les équipes cherchant à optimiser leur communication et leur productivité. Le workflow débute avec un déclencheur Telegram qui capte les messages entrants. Ensuite, il utilise le modèle de chat OpenAI pour analyser et répondre aux requêtes des utilisateurs. Les réponses peuvent inclure des informations sur des contacts, des emails ou même du contenu généré automatiquement grâce aux agents spécialisés. Par exemple, l'agent 'Email Agent' permet d'envoyer des emails directement depuis Telegram, tandis que le 'Content Creator Agent' génère du contenu pertinent en réponse aux demandes. Les utilisateurs bénéficient également d'une mémoire tampon pour garder une trace des interactions passées, ce qui améliore la pertinence des réponses. En intégrant ces fonctionnalités, ce workflow n8n offre une valeur ajoutée significative aux entreprises en réduisant le temps de réponse et en améliorant l'efficacité des communications. Les équipes peuvent ainsi se concentrer sur des tâches à plus forte valeur ajoutée, tout en ayant un assistant personnel à leur disposition pour gérer les demandes courantes. Tags clés : automatisation, Telegram, n8n.

Catégorie: Telegram Trigger · Tags: automatisation, Telegram, n8n, intelligence artificielle, productivité0

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

  • Ultimate Assistant

    Ce noeud agit comme un assistant ultime en utilisant un modèle de langage pour traiter des requêtes.

  • OpenAI Chat Model

    Ce noeud utilise le modèle de chat OpenAI pour générer des réponses basées sur des entrées textuelles.

  • Email Agent

    Ce noeud exécute un workflow d'agent email pour gérer des tâches liées aux emails.

  • Contact Agent

    Ce noeud exécute un workflow d'agent de contact pour gérer des interactions avec des contacts.

  • Content Creator Agent

    Ce noeud exécute un workflow d'agent créateur de contenu pour générer du contenu basé sur des spécifications.

  • Window Buffer Memory

    Ce noeud gère la mémoire tampon de fenêtre pour stocker des informations de session.

  • Tavily

    Ce noeud effectue une requête HTTP pour interagir avec un outil externe.

  • Calculator

    Ce noeud fournit des fonctionnalités de calcul pour effectuer des opérations mathématiques.

  • Telegram Trigger

    Ce noeud déclenche le workflow en écoutant les mises à jour de Telegram.

  • Set 'Text'

    Ce noeud définit une variable 'Text' avec des valeurs spécifiées pour une utilisation ultérieure.

  • Switch

    Ce noeud permet de diriger le flux de travail en fonction de règles conditionnelles.

  • Response

    Ce noeud envoie une réponse à un utilisateur sur Telegram avec un message spécifié.

  • Download File

    Ce noeud permet de télécharger un fichier à partir de Telegram en utilisant un identifiant de fichier.

  • Transcribe

    Ce noeud transcrit des ressources audio en texte en utilisant les capacités d'OpenAI.

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

Inscription gratuite

S'inscrire gratuitementBesoin d'aide ?
{
  "id": "NJ5zK0UP9WFl8ckM",
  "meta": {
    "instanceId": "95e5a8c2e51c83e33b232ea792bbe3f063c094c33d9806a5565cb31759e1ad39",
    "templateCredsSetupCompleted": true
  },
  "name": "Ultimate Personal Assistant",
  "tags": [],
  "nodes": [
    {
      "id": "f1344298-a586-4a63-a113-b9581ae93c45",
      "name": "Ultimate Assistant",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        440,
        -100
      ],
      "parameters": {
        "text": "={{ $json.text }}",
        "options": {
          "systemMessage": "=# Overview\nYou are the ultimate personal assistant. Your job is to send the user's query to the correct tool. You should never be writing emails, or creating even summaries, you just need to call the correct tool.\n\n## Tools\n- emailAgent: Use this tool to take action in email\n- calendarAgent: Use this tool to take action in calendar\n- contactAgent: Use this tool to get, update, or add contacts\n- contentCreator: Use this tool to create blog posts\n- Tavily: Use this tool to search the web\n\n## Rules\n- Some actions require you to look up contact information first. For the following actions, you must get contact information and send that to the agent who needs it:\n  - sending emails\n  - drafting emails\n  - creating calendar event with attendee\n\n## Examples\n1) \n- Input: send an email to nate herkelman asking him what time he wants to leave\n  - Action: Use contactAgent to get nate herkelman's email\n  - Action: Use emailAgent to send the email. You will pass the tool a query like \"send nate herkelman an email to ask what time he wants to leave. here is his email: [email address]\n- Output: The email has been sent to Nate Herkelman. Anything else I can help you with?\n\n\n## Final Reminders\nHere is the current date/time: {{ $now }}"
        },
        "promptType": "define"
      },
      "typeVersion": 1.7
    },
    {
      "id": "46def81a-7dcd-4a07-8642-e6035af87a7d",
      "name": "OpenAI Chat Model",
      "type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
      "position": [
        120,
        200
      ],
      "parameters": {
        "model": {
          "__rl": true,
          "mode": "list",
          "value": "gpt-4o",
          "cachedResultName": "gpt-4o"
        },
        "options": {}
      },
      "credentials": {
        "openAiApi": {
          "id": "BP9v81AwJlpYGStD",
          "name": "OpenAi account"
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "4c445d15-99d3-465f-a8bc-610729fa0f65",
      "name": "Email Agent",
      "type": "@n8n/n8n-nodes-langchain.toolWorkflow",
      "position": [
        340,
        360
      ],
      "parameters": {
        "name": "emailAgent",
        "workflowId": {
          "__rl": true,
          "mode": "list",
          "value": "C3hLlOS4O6ZJtVFy",
          "cachedResultName": "🤖Email Agent"
        },
        "description": "Call this tool for any email actions.",
        "workflowInputs": {
          "value": {},
          "schema": [],
          "mappingMode": "defineBelow",
          "matchingColumns": [],
          "attemptToConvertTypes": false,
          "convertFieldsToString": false
        }
      },
      "typeVersion": 2
    },
    {
      "id": "a4de4692-0a12-438a-826b-0eb45fa0bb0b",
      "name": "Contact Agent",
      "type": "@n8n/n8n-nodes-langchain.toolWorkflow",
      "position": [
        620,
        380
      ],
      "parameters": {
        "name": "contactAgent",
        "workflowId": {
          "__rl": true,
          "mode": "list",
          "value": "IsSUyrla7wc1cDLE",
          "cachedResultName": "🤖Contact Agent"
        },
        "description": "Call this tool for any contact related actions.",
        "workflowInputs": {
          "value": {},
          "schema": [],
          "mappingMode": "defineBelow",
          "matchingColumns": [],
          "attemptToConvertTypes": false,
          "convertFieldsToString": false
        }
      },
      "typeVersion": 2
    },
    {
      "id": "ad8218b3-3a89-455a-a49a-dbf847a442fc",
      "name": "Content Creator Agent",
      "type": "@n8n/n8n-nodes-langchain.toolWorkflow",
      "position": [
        740,
        340
      ],
      "parameters": {
        "name": "contentCreator",
        "workflowId": {
          "__rl": true,
          "mode": "list",
          "value": "WWSu94V939ATcqvi",
          "cachedResultName": "🤖Content Creator Agent"
        },
        "description": "Call this tool to create blog posts.",
        "workflowInputs": {
          "value": {},
          "schema": [],
          "mappingMode": "defineBelow",
          "matchingColumns": [],
          "attemptToConvertTypes": false,
          "convertFieldsToString": false
        }
      },
      "typeVersion": 2
    },
    {
      "id": "88bf60e1-303b-4c0f-91df-340f9d33ae59",
      "name": "Window Buffer Memory",
      "type": "@n8n/n8n-nodes-langchain.memoryBufferWindow",
      "position": [
        220,
        300
      ],
      "parameters": {
        "sessionKey": "={{ $('Telegram Trigger').item.json.message.chat.id }}",
        "sessionIdType": "customKey"
      },
      "typeVersion": 1.3
    },
    {
      "id": "174c3435-fcb6-4579-92b1-37ea24c5e4aa",
      "name": "Tavily",
      "type": "@n8n/n8n-nodes-langchain.toolHttpRequest",
      "position": [
        860,
        280
      ],
      "parameters": {
        "url": "https://api.tavily.com/search",
        "method": "POST",
        "jsonBody": "{\n    \"api_key\": \"your-api-key\",\n    \"query\": \"{searchTerm}\",\n    \"search_depth\": \"basic\",\n    \"include_answer\": true,\n    \"topic\": \"news\",\n    \"include_raw_content\": true,\n    \"max_results\": 3\n} ",
        "sendBody": true,
        "specifyBody": "json",
        "toolDescription": "Use this tool to search the internet",
        "placeholderDefinitions": {
          "values": [
            {
              "name": "searchTerm",
              "type": "string",
              "description": "What the user has requested to search the internet for"
            }
          ]
        }
      },
      "typeVersion": 1.1
    },
    {
      "id": "b7920e6a-f44b-4f3c-893c-b3643628261e",
      "name": "Calculator",
      "type": "@n8n/n8n-nodes-langchain.toolCalculator",
      "position": [
        960,
        200
      ],
      "parameters": {},
      "typeVersion": 1
    },
    {
      "id": "88bd92de-d580-40c8-bc3c-44215004e8cc",
      "name": "Calendar Agent",
      "type": "@n8n/n8n-nodes-langchain.toolWorkflow",
      "position": [
        480,
        380
      ],
      "parameters": {
        "name": "calendarAgent",
        "workflowId": {
          "__rl": true,
          "mode": "list",
          "value": "0NtlJ41IozGhtFa6",
          "cachedResultName": "🤖Calendar Agent"
        },
        "description": "Call this tool for any calendar action.",
        "workflowInputs": {
          "value": {},
          "schema": [],
          "mappingMode": "defineBelow",
          "matchingColumns": [],
          "attemptToConvertTypes": false,
          "convertFieldsToString": false
        }
      },
      "typeVersion": 2
    },
    {
      "id": "29656d2a-6561-482d-8eb4-316666626cef",
      "name": "Telegram Trigger",
      "type": "n8n-nodes-base.telegramTrigger",
      "position": [
        -240,
        -100
      ],
      "webhookId": "99eab1a0-569d-4f0f-a49e-578a02abfe63",
      "parameters": {
        "updates": [
          "message"
        ],
        "additionalFields": {}
      },
      "credentials": {
        "telegramApi": {
          "id": "9jQWan3cOz3tE62s",
          "name": "Telegram account 2"
        }
      },
      "typeVersion": 1.1
    },
    {
      "id": "1eb55d45-2431-4315-9d3b-f794c6466d34",
      "name": "Set 'Text'",
      "type": "n8n-nodes-base.set",
      "position": [
        180,
        -40
      ],
      "parameters": {
        "options": {},
        "assignments": {
          "assignments": [
            {
              "id": "fe7ecc99-e1e8-4a5e-bdd6-6fce9757b234",
              "name": "text",
              "type": "string",
              "value": "={{ $json.message.text }}"
            }
          ]
        }
      },
      "typeVersion": 3.4
    },
    {
      "id": "e76366db-6cb2-464a-8997-fd21d275795f",
      "name": "Switch",
      "type": "n8n-nodes-base.switch",
      "position": [
        -80,
        -100
      ],
      "parameters": {
        "rules": {
          "values": [
            {
              "outputKey": "Voice",
              "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": [
                  {
                    "id": "8c844924-b2ed-48b0-935c-c66a8fd0c778",
                    "operator": {
                      "type": "string",
                      "operation": "exists",
                      "singleValue": true
                    },
                    "leftValue": "={{ $json.message.text }}",
                    "rightValue": ""
                  }
                ]
              },
              "renameOutput": true
            }
          ]
        },
        "options": {}
      },
      "typeVersion": 3.2
    },
    {
      "id": "49d41b42-7ce7-42c6-b10e-7767f27b7c17",
      "name": "Response",
      "type": "n8n-nodes-base.telegram",
      "position": [
        900,
        -100
      ],
      "webhookId": "5dced4b9-5066-4036-a4d4-14fc07edd53c",
      "parameters": {
        "text": "={{ $json.output }}",
        "chatId": "={{ $('Telegram Trigger').item.json.message.chat.id }}",
        "additionalFields": {
          "appendAttribution": false
        }
      },
      "credentials": {
        "telegramApi": {
          "id": "9jQWan3cOz3tE62s",
          "name": "Telegram account 2"
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "add76827-0115-43f9-b292-93f942fdf4ab",
      "name": "Download File",
      "type": "n8n-nodes-base.telegram",
      "position": [
        120,
        -200
      ],
      "webhookId": "83bb7385-33f6-4105-8294-1a91c0ebbee5",
      "parameters": {
        "fileId": "={{ $json.message.voice.file_id }}",
        "resource": "file"
      },
      "credentials": {
        "telegramApi": {
          "id": "9jQWan3cOz3tE62s",
          "name": "Telegram account 2"
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "b01fcf5f-3dfa-420f-a5d6-706adc545a5f",
      "name": "Transcribe",
      "type": "@n8n/n8n-nodes-langchain.openAi",
      "position": [
        240,
        -200
      ],
      "parameters": {
        "options": {},
        "resource": "audio",
        "operation": "transcribe"
      },
      "credentials": {
        "openAiApi": {
          "id": "BP9v81AwJlpYGStD",
          "name": "OpenAi account"
        }
      },
      "typeVersion": 1.6
    }
  ],
  "active": false,
  "pinData": {},
  "settings": {
    "executionOrder": "v1"
  },
  "versionId": "31076a3e-169a-4a4e-ad8e-30527b3630ac",
  "connections": {
    "Switch": {
      "main": [
        [
          {
            "node": "Download File",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Set 'Text'",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Tavily": {
      "ai_tool": [
        [
          {
            "node": "Ultimate Assistant",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "Calculator": {
      "ai_tool": [
        [
          {
            "node": "Ultimate Assistant",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "Set 'Text'": {
      "main": [
        [
          {
            "node": "Ultimate Assistant",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Transcribe": {
      "main": [
        [
          {
            "node": "Ultimate Assistant",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Email Agent": {
      "ai_tool": [
        [
          {
            "node": "Ultimate Assistant",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "Contact Agent": {
      "ai_tool": [
        [
          {
            "node": "Ultimate Assistant",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "Download File": {
      "main": [
        [
          {
            "node": "Transcribe",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Calendar Agent": {
      "ai_tool": [
        [
          {
            "node": "Ultimate Assistant",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "Telegram Trigger": {
      "main": [
        [
          {
            "node": "Switch",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "OpenAI Chat Model": {
      "ai_languageModel": [
        [
          {
            "node": "Ultimate Assistant",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "Ultimate Assistant": {
      "main": [
        [
          {
            "node": "Response",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Window Buffer Memory": {
      "ai_memory": [
        [
          {
            "node": "Ultimate Assistant",
            "type": "ai_memory",
            "index": 0
          }
        ]
      ]
    },
    "Content Creator Agent": {
      "ai_tool": [
        [
          {
            "node": "Ultimate Assistant",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    }
  }
}

Pour qui est ce workflow ?

Ce workflow s'adresse aux entreprises et équipes qui utilisent Telegram pour la communication et qui cherchent à automatiser leurs interactions. Il est particulièrement adapté aux PME et aux startups qui souhaitent améliorer leur efficacité opérationnelle sans nécessiter de compétences techniques avancées.

Problème résolu

Ce workflow résout le problème de la gestion des demandes sur Telegram en automatisant les réponses et en intégrant plusieurs outils d'assistance. Les utilisateurs n'ont plus à passer du temps à répondre manuellement aux requêtes, ce qui réduit les risques d'erreurs et améliore la satisfaction client. En fin de compte, cela permet aux équipes de se concentrer sur des tâches plus stratégiques tout en maintenant une communication fluide.

Étapes du workflow

Étape 1 : Le workflow est déclenché par un message entrant sur Telegram. Étape 2 : Le modèle de chat OpenAI analyse le message et génère une réponse appropriée. Étape 3 : Selon le type de demande, le workflow peut activer différents agents, comme l'Email Agent pour envoyer des emails ou le Content Creator Agent pour générer du contenu. Étape 4 : Les réponses sont ensuite envoyées via Telegram, permettant une interaction instantanée avec l'utilisateur. Étape 5 : Les informations sont stockées dans une mémoire tampon pour améliorer les réponses futures.

Guide de personnalisation du workflow n8n

Pour personnaliser ce workflow, vous pouvez modifier les paramètres du déclencheur Telegram, comme le type de mises à jour que vous souhaitez recevoir. Vous pouvez également ajuster les configurations des agents, notamment en changeant les modèles de langage utilisés par OpenAI ou en adaptant les descriptions et les workflows des agents d'email et de contenu. Pensez à sécuriser les données en configurant les autorisations d'accès nécessaires et à surveiller les performances du flux pour optimiser son efficacité.