Construction d'un pont pour deux bots Telegram dans un seul chat de groupe : Sémantique de livraison via HTTP

Connecter deux bots Telegram indépendants dans un même groupe est plus difficile qu'il n'y paraît. Un développeur sur r/openclaw détaille son expérience de construction d'une couche de pont, car Telegram ne livre pas de manière fiable les messages d'un bot à un autre dans un groupe — même si les humains voient les deux messages.
Le problème central
Telegram ne transmet pas les mises à jour au Bot B lorsque le Bot A envoie un message au groupe. L'équipe a donc construit un petit pont autour des limitations de Telegram :
- Bot B → Bot A : Le Bot B publie via un point de terminaison HTTP (tailgate) pour atteindre le Bot A.
- Bot A → Bot B : Le Bot A expose certains messages sortants via un flux contrôlé que le Bot B interroge.
- Les messages portent des métadonnées :
source,direction,chat ID,nonce, et un indicateursafe_to_bridge. - ACKs : Le Bot B peut accuser réception d'un message spécifique, confirmant qu'au moins un saut a fonctionné.
- Le flux partagé ne contient que le contexte de groupe sûr pour le pont — pas de DMs privés ni de trafic non lié.
- Le poller local du Bot B filtre les messages anciens/de débogage/protocole/statut, déduplique les événements, et ne laisse passer que les tours de conversation frais.
Leçons de la première version
L'implémentation initiale était trop laxiste : le contexte brut de Telegram fuyait dans le flux partagé, provoquant des moments déroutants du type « comment l'autre bot a-t-il su ça ? ». La solution a été de passer de logs bruts partagés à des événements explicitement sûrs pour le pont.
L'état actuel fonctionne dans des tests contrôlés :
- Bot B → Bot A via relais
- Bot A → Bot B via flux
- Les ACKs transitent par le chemin du relais
- Auto-miroir sûr pour les messages clairement adressés à un bot
Flux souhaité
La boucle de conversation cible :
- Un humain ou le Bot A écrit quelque chose adressé au Bot B.
- Le pont le reflète en toute sécurité.
- Le Bot B le voit une fois, répond une fois.
- La réponse est renvoyée si elle est sûre et pertinente.
- Pas de doublons, de backlog obsolète, de fuite de DM privé, d'écho de débogage ou de boucle de bots.
Direction architecturale
L'auteur suggère de traiter le pont comme un petit bus d'événements plutôt qu'un hack de chat :
- Identifiants de message et nonces stricts
- ACKs, déduplication, point de contrôle
- Flux délimités avec séparation stricte entre contexte privé et contexte sûr pour le groupe
La partie difficile réside dans la sémantique de livraison — fraîcheur, déduplication, ACKs et décision du moment où un bot doit répondre automatiquement sans créer de boucles infinies.
📖 Lire la source complète : r/openclaw
👀 See Also

Correctif pour exécuter OpenClaw sur Android via proot Ubuntu : Détourner networkInterfaces() pour résoudre l'erreur uv_interface_addresses 13
Un développeur partage une solution pour exécuter OpenClaw 2026.3.13 sur Android 16 via Termux et proot Ubuntu 25.10, où l'application plante avec 'uv_interface_addresses a retourné une erreur système inconnue 13'. La solution est un script de détournement JavaScript qui remplace os.networkInterfaces().

Configuration des serveurs MCP dans l'interface Web llama-server : un guide pratique
Un utilisateur de Reddit partage des étapes spécifiques pour configurer des serveurs MCP dans l'interface web de llama-server, incluant l'installation de uv, la création d'un fichier config.json avec des définitions de serveurs, l'exécution de mcp-proxy et la modification des URL pour une intégration correcte.

OpenClaw : Votre aide-mémoire ultime et rapide
Plongez dans les détails d'OpenClaw avec notre aide-mémoire pratique. Extrayez les fonctionnalités et caractéristiques essentielles pour optimiser votre expérience de codage IA.

Un système de mémoire à 4 fichiers pour les agents OpenClaw sans plugins
Un utilisateur de Reddit partage un système de mémoire pratique utilisant quatre fichiers markdown : USER.md pour l'identité, CONTEXT.md pour le travail actif, MEMORY.md pour les sujets structurés, et ARCHIVE.md pour les éléments terminés. L'approche aborde le problème de 'l'agent ne sait pas ce qu'il sait' grâce à une meilleure architecture de fichiers plutôt qu'à davantage de mémoire.