Workflow n8n

Automatisation Telegram avec n8n : gestion d'agents IA

Ce workflow n8n est conçu pour automatiser la gestion d'agents IA via Telegram, facilitant ainsi la communication et l'interaction avec les utilisateurs. Dans un contexte où les entreprises cherchent à améliorer leur service client et à automatiser les réponses, ce workflow se révèle particulièrement utile pour les équipes de support, les développeurs et les entreprises technologiques. Il permet de gérer des requêtes, d'interagir avec des modèles d'IA, et d'extraire des informations pertinentes en temps réel.

  • Étape 1 : Le workflow débute avec un déclencheur Telegram qui capte les messages entrants.
  • Étape 2 : Un nœud Switch permet de diriger le flux en fonction des types de messages reçus.
  • Étape 3 : Les messages sont ensuite traités par divers nœuds, notamment ceux d'OpenAI et de Google Gemini, qui génèrent des réponses intelligentes.
  • Étape 4 : Les résultats sont ensuite envoyés à l'utilisateur via Telegram. Ce processus inclut également des outils comme Airtable pour la gestion des données et des outils de mémoire pour conserver le contexte des conversations. En intégrant ces éléments, ce workflow offre une solution robuste pour automatiser les interactions sur Telegram, réduisant ainsi le temps de réponse et augmentant la satisfaction client.
Tags clés :automatisationTelegramIAn8nsupport client
Catégorie: Webhook · Tags: automatisation, Telegram, IA, n8n, support client0

Workflow n8n Telegram, support client : vue d'ensemble

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

Workflow n8n Telegram, support client : détail des nœuds

  • Telegram Trigger

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

  • Switch

    Ce noeud permet de diriger le flux en fonction de règles conditionnelles définies.

  • Edit Fields

    Ce noeud modifie ou définit des champs spécifiques dans les données du workflow.

  • Telegram

    Ce noeud envoie ou reçoit des messages via Telegram en utilisant un identifiant de fichier.

  • OpenAI

    Ce noeud interagit avec l'API OpenAI pour effectuer des opérations spécifiques.

  • AI Agent

    Ce noeud représente un agent d'intelligence artificielle qui traite un texte donné selon un type de prompt.

  • Google Gemini Chat Model

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

  • Telegram1

    Ce noeud envoie un message texte à un chat spécifique sur Telegram.

  • Calculator

    Ce noeud effectue des calculs en utilisant un outil de calcul intégré.

  • Wikipedia

    Ce noeud interroge Wikipedia pour obtenir des informations sur un sujet donné.

  • Airtable

    Ce noeud interagit avec Airtable pour effectuer des opérations sur une base de données spécifique.

  • Aggregate

    Ce noeud agrège des données selon des champs spécifiés.

  • Merge

    Ce noeud fusionne plusieurs ensembles de données selon un mode et des critères de combinaison.

  • Simple Memory

    Ce noeud gère la mémoire d'une session pour un agent d'intelligence artificielle.

  • 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 fournies.

  • memory_tool

    Ce noeud interagit avec Airtable pour effectuer des opérations sur des colonnes spécifiques.

  • contentCreatorAgent

    Ce noeud représente un agent de création de contenu qui exécute un workflow spécifique.

  • Email Agent

    Ce noeud représente un agent d'email qui exécute un workflow spécifique.

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

Inscription gratuite

S'inscrire gratuitementBesoin d'aide ?
{
  "id": "Ix2EKF85AgkBkvOG",
  "meta": {
    "instanceId": "94de0b0234836a6581f98085078a07c06e3d6f8dac7b83621b73e6356c09de9b"
  },
  "name": "Dsp agent",
  "tags": [],
  "nodes": [
    {
      "id": "8e952294-ec48-426e-ad2c-775ab295afb7",
      "name": "Telegram Trigger",
      "type": "n8n-nodes-base.telegramTrigger",
      "position": [
        -600,
        500
      ],
      "webhookId": "ece1b7c8-0758-4c1f-8db2-6a14ba1ed182",
      "parameters": {
        "updates": [
          "message"
        ],
        "additionalFields": {
          "download": false
        }
      },
      "credentials": {
        "telegramApi": {
          "id": "VrV0OZcaiBOi3ejB",
          "name": "Telegram account"
        }
      },
      "typeVersion": 1.1
    },
    {
      "id": "faef9906-72b5-47b3-8707-4c34c81c9096",
      "name": "Switch",
      "type": "n8n-nodes-base.switch",
      "position": [
        -320,
        160
      ],
      "parameters": {
        "rules": {
          "values": [
            {
              "outputKey": "text",
              "conditions": {
                "options": {
                  "version": 2,
                  "leftValue": "",
                  "caseSensitive": true,
                  "typeValidation": "strict"
                },
                "combinator": "and",
                "conditions": [
                  {
                    "id": "b8cc5586-5c76-4295-b8ba-1cecfa47cc5d",
                    "operator": {
                      "type": "string",
                      "operation": "exists",
                      "singleValue": true
                    },
                    "leftValue": "={{ $json.message.text }}",
                    "rightValue": ""
                  }
                ]
              },
              "renameOutput": true
            },
            {
              "outputKey": "voice",
              "conditions": {
                "options": {
                  "version": 2,
                  "leftValue": "",
                  "caseSensitive": true,
                  "typeValidation": "strict"
                },
                "combinator": "and",
                "conditions": [
                  {
                    "id": "66856d79-632e-4e2d-9e54-6e28df629aeb",
                    "operator": {
                      "type": "string",
                      "operation": "exists",
                      "singleValue": true
                    },
                    "leftValue": "={{ $json.message.voice.file_id }}",
                    "rightValue": ""
                  }
                ]
              },
              "renameOutput": true
            }
          ]
        },
        "options": {}
      },
      "retryOnFail": false,
      "typeVersion": 3.2,
      "alwaysOutputData": false
    },
    {
      "id": "5a51d584-0484-4757-903b-e772a634f94e",
      "name": "Edit Fields",
      "type": "n8n-nodes-base.set",
      "position": [
        0,
        0
      ],
      "parameters": {
        "options": {},
        "assignments": {
          "assignments": [
            {
              "id": "4e2b9056-34d7-4867-8f1e-4265fe80bb8c",
              "name": "text",
              "type": "string",
              "value": "={{ $('Telegram Trigger').item.json.message.text }}"
            }
          ]
        }
      },
      "typeVersion": 3.4
    },
    {
      "id": "627c1d4b-a495-4a2f-8a07-e3699a71b671",
      "name": "Telegram",
      "type": "n8n-nodes-base.telegram",
      "position": [
        -100,
        260
      ],
      "webhookId": "21933f09-43da-413d-ab94-a6af068c35b6",
      "parameters": {
        "fileId": "={{ $json.message.voice.file_id }}",
        "resource": "file"
      },
      "credentials": {
        "telegramApi": {
          "id": "VrV0OZcaiBOi3ejB",
          "name": "Telegram account"
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "10edf485-e6bc-453a-b2ff-cc061ed73adc",
      "name": "OpenAI",
      "type": "@n8n/n8n-nodes-langchain.openAi",
      "position": [
        40,
        260
      ],
      "parameters": {
        "options": {},
        "resource": "audio",
        "operation": "transcribe"
      },
      "credentials": {
        "openAiApi": {
          "id": "IOLYY7gLnrluESNv",
          "name": "OpenAi account"
        }
      },
      "typeVersion": 1.8
    },
    {
      "id": "b05d3c86-eca0-4a69-81ea-4b3f078d4f18",
      "name": "AI Agent",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        520,
        480
      ],
      "parameters": {
        "text": "={{ $json.text }}",
        "options": {
          "systemMessage": "=\n**Current time and date:** {{$now}}  \n\nHey there! You are an advanced study assistant, built to help students tackle complex problems in signal processing. You’re not just here to give answers—you’re here to **guide the user, deepen their understanding, and make learning more interactive**.  \n\nYou have access to several powerful tools, and knowing when and how to use them is key to being truly effective. Here’s what you can do and how you should approach each situation:  \n\n### **Your Capabilities and How to Use Them**  \n\n#### **1. Language Model (LLM) – Your Core Intelligence**  \n- You analyze questions, provide explanations, refine wording, and help the user grasp key signal processing concepts.  \n- Your job is to **guide the user toward the solution** rather than just giving direct answers—ask the right questions to encourage deeper thinking.  \n\n#### **2. Wikipedia Access – Your Knowledge Base**  \n- When a user asks about theoretical concepts, mathematical principles, or physics-related topics, you can **retrieve summarized, reliable information** from Wikipedia.  \n- This is great for definitions, historical context, and fundamental principles that support problem-solving.  \n\n#### **3. Calculator – Your Instant Problem Solver**  \n- You can quickly compute mathematical expressions, integrals, derivatives, and more.  \n- Use this tool when the user needs a quick numerical solution or when breaking down an equation.  \n\n#### **4. Memory Storage – Your Personalization Engine**  \n- You **remember relevant user details** to provide a more personalized experience.  \n- This allows you to track learning progress, recall previous topics, and offer tailored recommendations.  \n\n#### **5. (Coming Soon) Python / MATLAB Code Generation – Your Computational Power**  \n- Once integrated, you’ll be able to **generate Python and MATLAB code** to solve signal processing problems.  \n- This will include tasks like designing filters, performing Fourier transforms, and running simulations to analyze data.  \n\n- contentCreatorAgent: Use this tool to create blog posts\n---\n\n### **How You Should Interact with the User**  \n\n#### **Step 1: Understand the User’s Needs**  \n- If the question is unclear, don’t assume—**ask for clarification** or guide them with follow-up questions.  \n- Figure out if they need a **theoretical explanation, a step-by-step solution, or just study guidance**.  \n\n#### **Step 2: Choose the Right Approach**  \n- If it’s a **theory-based question**, pull relevant knowledge from Wikipedia or explain it in your own words.  \n- If it’s a **numerical problem**, use the calculator or suggest an appropriate method to solve it.  \n- If it requires **MATLAB or Python-based solutions**, propose an implementation and (once available) generate the code.  \n\n#### **Step 3: Encourage Learning and Retention**  \n- Always check if the user **fully understands the topic**—ask follow-up questions if necessary.  \n- If they struggle, offer alternative explanations or different ways to approach the problem.  \n- Use your memory storage to **connect topics and build continuity**, so the learning experience feels more cohesive over time.  \n\nYour role isn’t just to answer questions—you’re a **mentor, tutor, and study partner**. The goal is to **help the user develop problem-solving skills** so they can confidently tackle complex challenges on their own.  \n\nNow, go out there and make learning signal processing easier and more engaging! "
        },
        "promptType": "define"
      },
      "typeVersion": 1.8
    },
    {
      "id": "921b72db-200a-4a47-bd2d-135c4f8450c8",
      "name": "Google Gemini Chat Model",
      "type": "@n8n/n8n-nodes-langchain.lmChatGoogleGemini",
      "position": [
        220,
        920
      ],
      "parameters": {
        "options": {},
        "modelName": "models/gemini-1.5-flash-001"
      },
      "typeVersion": 1
    },
    {
      "id": "32277fd6-3d66-4bb9-a1c6-07d23d0d50b3",
      "name": "Telegram1",
      "type": "n8n-nodes-base.telegram",
      "onError": "continueRegularOutput",
      "position": [
        880,
        480
      ],
      "webhookId": "e1966a9e-b402-4d56-92ff-7042f181ed35",
      "parameters": {
        "text": "={{ $json.output }}",
        "chatId": "={{ $('Telegram Trigger').item.json.message.chat.id }}",
        "additionalFields": {
          "appendAttribution": false
        }
      },
      "credentials": {
        "telegramApi": {
          "id": "VrV0OZcaiBOi3ejB",
          "name": "Telegram account"
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "3276e9b7-358f-4b9a-8537-918ce7c9bc54",
      "name": "Calculator",
      "type": "@n8n/n8n-nodes-langchain.toolCalculator",
      "position": [
        380,
        900
      ],
      "parameters": {},
      "typeVersion": 1
    },
    {
      "id": "76c41081-f01d-43bc-8895-3af69cc8ceea",
      "name": "Wikipedia",
      "type": "@n8n/n8n-nodes-langchain.toolWikipedia",
      "position": [
        520,
        880
      ],
      "parameters": {},
      "typeVersion": 1
    },
    {
      "id": "38834d64-56fb-4170-9885-8d5e5c94a74f",
      "name": "Airtable",
      "type": "n8n-nodes-base.airtable",
      "position": [
        -360,
        660
      ],
      "parameters": {
        "base": {
          "__rl": true,
          "mode": "list",
          "value": "appoBzMsCIm3Bno0X",
          "cachedResultUrl": "https://airtable.com/appoBzMsCIm3Bno0X",
          "cachedResultName": "Agent memory"
        },
        "limit": 50,
        "table": {
          "__rl": true,
          "mode": "list",
          "value": "tblb5AH2UtMVj3HLZ",
          "cachedResultUrl": "https://airtable.com/appoBzMsCIm3Bno0X/tblb5AH2UtMVj3HLZ",
          "cachedResultName": "Memory"
        },
        "options": {},
        "operation": "search",
        "returnAll": false
      },
      "credentials": {
        "airtableTokenApi": {
          "id": "eWfDvgRAeJ0q7Unh",
          "name": "Airtable Personal Access Token account"
        }
      },
      "typeVersion": 2.1
    },
    {
      "id": "f5f3fbf7-26ce-4754-bcc1-1d046b1a6e0a",
      "name": "Aggregate",
      "type": "n8n-nodes-base.aggregate",
      "position": [
        -60,
        660
      ],
      "parameters": {
        "options": {},
        "fieldsToAggregate": {
          "fieldToAggregate": [
            {
              "fieldToAggregate": "Memory"
            }
          ]
        }
      },
      "typeVersion": 1
    },
    {
      "id": "390ccee0-48c6-434d-ad51-53148540ddbe",
      "name": "Merge",
      "type": "n8n-nodes-base.merge",
      "position": [
        320,
        480
      ],
      "parameters": {
        "mode": "combine",
        "options": {},
        "combineBy": "combineAll"
      },
      "typeVersion": 3
    },
    {
      "id": "99b213f3-73c9-4649-b5d6-a7aa67886daf",
      "name": "Simple Memory",
      "type": "@n8n/n8n-nodes-langchain.memoryBufferWindow",
      "position": [
        400,
        680
      ],
      "parameters": {
        "sessionKey": "={{ $('Telegram Trigger').item.json.message.chat.id }}",
        "sessionIdType": "customKey"
      },
      "typeVersion": 1.3
    },
    {
      "id": "a3bf96ef-ad73-44f2-a867-42ba149082ed",
      "name": "OpenAI Chat Model",
      "type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
      "position": [
        220,
        680
      ],
      "parameters": {
        "model": {
          "__rl": true,
          "mode": "list",
          "value": "gpt-4o-mini",
          "cachedResultName": "gpt-4o-mini"
        },
        "options": {}
      },
      "credentials": {
        "openAiApi": {
          "id": "IOLYY7gLnrluESNv",
          "name": "OpenAi account"
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "44bf3697-1689-4f8a-8363-ce547d614cae",
      "name": "memory_tool",
      "type": "n8n-nodes-base.airtableTool",
      "position": [
        660,
        880
      ],
      "parameters": {
        "base": {
          "__rl": true,
          "mode": "list",
          "value": "appoBzMsCIm3Bno0X",
          "cachedResultUrl": "https://airtable.com/appoBzMsCIm3Bno0X",
          "cachedResultName": "Agent memory"
        },
        "table": {
          "__rl": true,
          "mode": "list",
          "value": "tblb5AH2UtMVj3HLZ",
          "cachedResultUrl": "https://airtable.com/appoBzMsCIm3Bno0X/tblb5AH2UtMVj3HLZ",
          "cachedResultName": "Memory"
        },
        "columns": {
          "value": {
            "Memory": "={{ $fromAI('add_Memory', `Write a memory about the user for future referance in 140 characters `, 'string') }}"
          },
          "schema": [
            {
              "id": "Memory",
              "type": "string",
              "display": true,
              "removed": false,
              "readOnly": false,
              "required": false,
              "displayName": "Memory",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            }
          ],
          "mappingMode": "defineBelow",
          "matchingColumns": [
            "id"
          ],
          "attemptToConvertTypes": false,
          "convertFieldsToString": false
        },
        "options": {},
        "operation": "create"
      },
      "credentials": {
        "airtableTokenApi": {
          "id": "eWfDvgRAeJ0q7Unh",
          "name": "Airtable Personal Access Token account"
        }
      },
      "typeVersion": 2.1
    },
    {
      "id": "2fc2f3f7-c8ba-4fb8-86be-ad72938df0b7",
      "name": "contentCreatorAgent",
      "type": "@n8n/n8n-nodes-langchain.toolWorkflow",
      "position": [
        820,
        880
      ],
      "parameters": {
        "name": "contentCreatorAgent",
        "workflowId": {
          "__rl": true,
          "mode": "list",
          "value": "ma0fuAza3j9sB4PL",
          "cachedResultName": "My project — contact creator agent"
        },
        "description": "call this tool whan you need to create contact,post or blog",
        "workflowInputs": {
          "value": {},
          "schema": [],
          "mappingMode": "defineBelow",
          "matchingColumns": [],
          "attemptToConvertTypes": false,
          "convertFieldsToString": false
        }
      },
      "typeVersion": 2.1
    },
    {
      "id": "833dce37-a852-4341-92f4-1ae3d41a0914",
      "name": "Email Agent",
      "type": "@n8n/n8n-nodes-langchain.toolWorkflow",
      "position": [
        1000,
        880
      ],
      "parameters": {
        "name": "EmailAgent",
        "workflowId": {
          "__rl": true,
          "mode": "list",
          "value": "ANJ05aXmXcKpfhyk",
          "cachedResultName": "Email agent"
        },
        "description": "use this tool to send,get and lable emails",
        "workflowInputs": {
          "value": {},
          "schema": [],
          "mappingMode": "defineBelow",
          "matchingColumns": [],
          "attemptToConvertTypes": false,
          "convertFieldsToString": false
        }
      },
      "typeVersion": 2.1
    }
  ],
  "active": false,
  "pinData": {},
  "settings": {
    "executionOrder": "v1"
  },
  "versionId": "bfadace7-e00a-4849-97b9-d8e13fb0c0b2",
  "connections": {
    "Merge": {
      "main": [
        [
          {
            "node": "AI Agent",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "OpenAI": {
      "main": [
        [
          {
            "node": "Merge",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Switch": {
      "main": [
        [
          {
            "node": "Edit Fields",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Telegram",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "AI Agent": {
      "main": [
        [
          {
            "node": "Telegram1",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Airtable": {
      "main": [
        [
          {
            "node": "Aggregate",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Telegram": {
      "main": [
        [
          {
            "node": "OpenAI",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Aggregate": {
      "main": [
        [
          {
            "node": "Merge",
            "type": "main",
            "index": 1
          }
        ]
      ]
    },
    "Wikipedia": {
      "ai_tool": [
        [
          {
            "node": "AI Agent",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "Calculator": {
      "ai_tool": [
        [
          {
            "node": "AI Agent",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "Edit Fields": {
      "main": [
        [
          {
            "node": "Merge",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Email Agent": {
      "ai_tool": [
        [
          {
            "node": "AI Agent",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "memory_tool": {
      "ai_tool": [
        [
          {
            "node": "AI Agent",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "Simple Memory": {
      "ai_memory": [
        [
          {
            "node": "AI Agent",
            "type": "ai_memory",
            "index": 0
          }
        ]
      ]
    },
    "Telegram Trigger": {
      "main": [
        [
          {
            "node": "Airtable",
            "type": "main",
            "index": 0
          },
          {
            "node": "Switch",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "OpenAI Chat Model": {
      "ai_languageModel": [
        [
          {
            "node": "AI Agent",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "contentCreatorAgent": {
      "ai_tool": [
        [
          {
            "node": "AI Agent",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    }
  }
}

Workflow n8n Telegram, support client : pour qui est ce workflow ?

Ce workflow s'adresse aux entreprises technologiques, aux équipes de support client et aux développeurs souhaitant automatiser leurs interactions sur Telegram. Il est idéal pour les organisations de taille moyenne à grande, avec un niveau technique intermédiaire à avancé.

Workflow n8n Telegram, support client : problème résolu

Ce workflow résout le problème de la gestion des requêtes clients sur Telegram en automatisant les réponses via des agents IA. Il élimine les frustrations liées aux délais de réponse, réduit le risque d'erreurs humaines et permet aux équipes de se concentrer sur des tâches plus stratégiques. Grâce à cette automatisation, les utilisateurs bénéficient d'une assistance rapide et efficace, améliorant ainsi l'expérience client.

Workflow n8n Telegram, support client : étapes du workflow

Étape 1 : Le workflow est déclenché par un message entrant sur Telegram.

  • Étape 1 : Le nœud Switch analyse le contenu du message pour déterminer le type de réponse à fournir.
  • Étape 2 : Selon le type de message, le flux peut appeler des modèles d'IA via OpenAI ou Google Gemini pour générer une réponse appropriée.
  • Étape 3 : Les informations peuvent être enrichies à l'aide d'Airtable pour une gestion des données optimisée.
  • Étape 4 : Les réponses générées sont ensuite envoyées à l'utilisateur via Telegram, assurant une communication fluide et instantanée.

Workflow n8n Telegram, support client : guide de personnalisation

Pour personnaliser ce workflow, vous pouvez modifier le déclencheur Telegram en ajustant les paramètres de votre bot. Vous pouvez également adapter les nœuds d'OpenAI et de Google Gemini en fonction des types de réponses que vous souhaitez générer. Pensez à configurer les connexions à Airtable pour gérer vos données efficacement. Enfin, assurez-vous de tester les différentes branches du Switch pour garantir que chaque type de message est traité correctement. Pour une sécurité accrue, envisagez d'ajouter des mesures de monitoring sur les réponses envoyées.