Entrée Telegram — workflow n8n
Statut : prototype fonctionnel à durcir. Telegram est une interface de saisie légère. La logique d’analyse, d’écriture et d’état appartient au service Agent Tracker.
Le workflow
flowchart LR U[Message utilisateur] --> T[Telegram Trigger] T --> H[Requête vers Agent Tracker] H --> V{Réponse exploitable ?} V -->|Oui| R[Message de confirmation] V -->|Non| E[Erreur courte et actionnable]
La version expérimentée utilise trois nœuds principaux :
- Telegram Trigger reçoit les messages texte.
- HTTP Request transmet le message et son identifiant au Tracker.
- Send Message renvoie la propriété
replyproduite par l’API.
Ce qui fonctionne
- La saisie reste accessible depuis un téléphone sans ouvrir le vault.
- Le workflow sert de passerelle et ne duplique pas la logique Python.
- La réponse confirme immédiatement si la donnée a été enregistrée ou si une précision manque.
Risques à corriger avant publication
| Risque | Correction attendue |
|---|---|
| Attente synchrone trop longue | Timeout court et réponse rapide au webhook Telegram. |
| Nouvel envoi du même événement | Déduplication par identifiant de mise à jour. |
| Tracker indisponible | Branche d’erreur avec retour utilisateur, sans perdre silencieusement le message. |
| Réponse vide | Valider que reply existe avant d’appeler le nœud d’envoi. |
| Données privées dans l’export | Nettoyer URL, identifiants de webhook et références de credentials. |
Fichier prévu dans le dépôt
workflows/01-agent-tracker-telegram.workflow.jsonL’export public devra fonctionner avec des variables d’environnement et des identifiants fictifs. Aucun jeton Telegram, identifiant n8n ou nom de réseau privé ne sera publié.
Critères d’acceptation
- Un événement Telegram valide reçoit un accusé de réception.
- Le même événement rejoué n’écrit qu’une seule ligne.
- Une panne du Tracker produit un message clair et une trace technique minimale.
- Un message invalide ne déclenche pas une boucle de nouvelles tentatives.
- La passerelle peut être remplacée par une autre interface sans modifier le cœur du Tracker.