tutorial channels

Construire un assistant IA multi-canal : Telegram + Discord + WhatsApp

ZeroClaws.io

ZeroClaws.io

@zeroclaws

February 25, 2026

7 min de lecture

Construire un assistant IA multi-canal : Telegram + Discord + WhatsApp

Voilà une situation que beaucoup reconnaissent : votre équipe pro communique sur Slack, vos amis proches sont sur WhatsApp, votre communauté gaming vit sur Discord, et vos contacts personnels préfèrent Telegram. Vous vous retrouvez avec quatre applis ouvertes, quatre flux de notifications, et quatre contextes séparés à gérer.

Imaginez maintenant que votre assistant IA fonctionne dans tous ces endroits simultanément — avec une mémoire partagée, pour qu’il se souvienne de ce que vous lui avez dit sur Telegram quand vous lui posez une question sur Discord. Un seul assistant, partout où vous êtes déjà.

C’est ce que l’architecture multi-canal de ZeroClaw rend possible, et la configuration est plus simple qu’on ne le pense.

Comment ça fonctionne sous le capot

Le système de canaux de ZeroClaw est construit sur des traits Rust. Chaque canal — Telegram, Discord, WhatsApp, Signal, Matrix, IRC — est un adaptateur indépendant qui implémente la même interface. Ils partagent tous une seule connexion au fournisseur IA, une seule base de données mémoire, un seul fichier de configuration, et un seul processus tournant comme un unique binaire.

La conséquence pratique : quand vous dites quelque chose à votre bot sur Telegram, il s’en souvient quand vous lui posez une question sur Discord. La mémoire est agnostique au canal. ZeroClaw stocke les conversations dans une base SQLite unifiée avec des métadonnées indiquant de quel canal vient chaque message, mais la récupération fonctionne sur tous les canaux. Votre contexte vous suit.

Configurer Telegram

Envoyez un message à @BotFather sur Telegram pour créer un nouveau bot et obtenir votre token. Puis envoyez un message à @userinfobot pour obtenir votre identifiant utilisateur. Ajoutez ceci à votre config :

```toml [channels.telegram] token = '123456:ABCdefGHIjklMNO' allowed_users = [your_user_id] ```

Le champ `allowed_users` est important — il garantit que seul vous (ou les personnes que vous spécifiez) pouvez interagir avec votre bot.

Configurer Discord

Allez sur discord.com/developers, créez une application, ajoutez un bot, et copiez le token. Activez le Message Content Intent dans les paramètres du bot — sans ça, le bot ne peut pas lire les messages. Utilisez le générateur d’URL OAuth2 pour inviter le bot sur votre serveur.

```toml [channels.discord] token = 'MTk4NjIz...' guild_ids = [your_server_id] allowed_roles = ['ai-users'] ```

Le champ `allowed_roles` vous permet de restreindre quels utilisateurs Discord peuvent interagir avec le bot — utile si vous l’ajoutez à un serveur partagé.

Configurer WhatsApp

ZeroClaw utilise un bridge WhatsApp Web qui fonctionne sans accès API spécial :

```toml [channels.whatsapp] enabled = true allowed_numbers = ['+1234567890'] ```

Au premier démarrage, ZeroClaw affiche un QR code dans le terminal. Scannez-le avec WhatsApp sur votre téléphone pour l’associer. Ensuite, la connexion reste automatique.

Tout démarrer

```bash zeroclaw start ```

Une seule commande. Les trois canaux se connectent simultanément :

``` [INFO] Telegram channel connected [INFO] Discord channel connected (1 guild) [INFO] WhatsApp channel paired [INFO] ZeroClaw ready — 3 channels active ```

La mémoire partagée en pratique

La mémoire inter-canaux est la fonctionnalité qui rend tout ça vraiment utile plutôt que juste techniquement intéressant. Voici à quoi ça ressemble :

Vous envoyez un message sur Telegram :

“Souviens-toi que ma date limite de projet est le 15 mars” “Noter — votre date limite de projet est le 15 mars.”

Plus tard, sur Discord :

“C’est quand ma date limite ?” “Votre date limite de projet est le 15 mars, comme vous l’avez mentionné précédemment.”

Le bot n’avait pas besoin qu’on lui répète. Il n’avait pas besoin que vous soyez dans le même canal. La mémoire est partagée sur toute l’instance ZeroClaw.

Ajuster le comportement par canal

Les différentes plateformes ont des conventions différentes. Les utilisateurs Discord attendent du formatage markdown et des réponses concises. Les conversations WhatsApp sont plus décontractées et ne rendent pas le markdown. Telegram supporte des réponses plus longues et détaillées. ZeroClaw vous permet d’ajuster le comportement par canal :

```toml [channels.discord] token = '...' system_prompt_append = "You are in a Discord server. Keep responses concise. Use markdown formatting." max_response_length = 1500

[channels.telegram] token = '...' system_prompt_append = "You are in a private Telegram chat. Be conversational and detailed." max_response_length = 4000

[channels.whatsapp] enabled = true system_prompt_append = "You are on WhatsApp. Keep responses short — no markdown, plain text only." max_response_length = 500 ```

Même IA, même mémoire, personnalité différente selon la plateforme.

Contrôle d’accès

Quand votre bot est accessible sur plusieurs canaux, le contrôle d’accès compte. ZeroClaw vous donne des contrôles par canal :

```toml [channels.telegram.permissions] tools = ['web_search', 'file_read', 'file_write']

[channels.discord.permissions] tools = ['web_search'] # lecture seule sur le serveur public ```

Vous pouvez accorder à votre chat Telegram privé un accès complet aux outils tout en limitant le bot Discord à la recherche web. Les permissions sont appliquées au niveau du canal, pas de l’utilisateur.

Ajouter d’autres canaux

ZeroClaw supporte plus de 30 canaux. En ajouter un autre, c’est juste plus de config :

```toml [channels.slack] token = 'xoxb-...' channels = ['C01234567']

[channels.signal] enabled = true phone_number = '+1234567890'

[channels.matrix] homeserver = 'https://matrix.org' username = '@zeroclaw:matrix.org' password = '...' ```

Chaque canal supplémentaire ajoute environ 0,5 Mo de RAM. Dix canaux simultanément, c’est toujours moins de 10 Mo au total.

La vue d’ensemble

La configuration multi-canal résout un vrai problème : votre vie ne se passe pas dans une seule appli, et votre assistant IA ne devrait pas non plus. Un binaire, un fichier de config, une base de données mémoire, et votre assistant est présent dans chaque plateforme de conversation que vous utilisez — se souvenant du contexte sur toutes, utilisant moins de RAM qu’un seul onglet de navigateur.

Pas de microservices. Pas de files de messages. Pas d’orchestration de conteneurs. Juste un seul processus qui parle trente protocoles de chat différents.

Restez informé

Recevez les mises à jour sur les nouvelles releases, intégrations et l'infrastructure d'agents en Rust. Pas de spam, désinscription à tout moment.