docs/guides/chat-apps.fr.md
Retour au README
Communiquez avec votre PicoClaw via Telegram, Discord, WhatsApp, Matrix, QQ, DingTalk, LINE, WeCom, Feishu, Slack, IRC, OneBot, MQTT ou MaixCam.
Note : Tous les canaux basés sur les webhooks (LINE, WeCom, etc.) sont servis sur un seul serveur HTTP Gateway partagé (
gateway.host:gateway.port, par défaut127.0.0.1:18790). Il n'y a pas de ports par canal à configurer. Note : Feishu utilise le mode WebSocket/SDK et n'utilise pas le serveur HTTP webhook partagé.
| Canal | Difficulté | Description | Documentation |
|---|---|---|---|
| Telegram | â Facile | RecommandĂ©, transcription vocale, long polling (pas d'IP publique requise) | Documentation |
| Discord | â Facile | Socket Mode, groupes/DM, Ă©cosystĂšme bot riche | Documentation |
| â Facile | Natif (scan QR) ou Bridge URL | Documentation | |
| Weixin | â Facile | Scan QR natif (API Tencent iLink) | Documentation |
| Slack | â Facile | Socket Mode (pas d'IP publique requise), entreprise | Documentation |
| Matrix | ââ Moyen | Protocole fĂ©dĂ©rĂ©, auto-hĂ©bergement possible | Documentation |
| ââ Moyen | API bot officielle, communautĂ© chinoise | Documentation | |
| DingTalk | ââ Moyen | Mode Stream (pas d'IP publique requise), entreprise | Documentation |
| LINE | âââ AvancĂ© | HTTPS Webhook requis | Documentation |
| WeCom (äŒäžćŸźäżĄ) | âââ AvancĂ© | Bot groupe (Webhook), app personnalisĂ©e (API), AI Bot | Guide |
| Feishu (éŁäčŠ) | âââ AvancĂ© | Collaboration entreprise, fonctionnalitĂ©s riches | Documentation |
| IRC | ââ Moyen | Serveur + configuration TLS | Documentation |
| OneBot | ââ Moyen | Compatible NapCat/Go-CQHTTP, Ă©cosystĂšme communautaire | Documentation |
| MQTT | â Facile | N'importe quel client MQTT via broker pub/sub | Documentation |
| MaixCam | â Facile | Canal d'intĂ©gration matĂ©rielle pour camĂ©ras AI Sipeed | Documentation |
| Pico | â Facile | Canal protocole natif PicoClaw |
<a id="telegram"></a>
<details> <summary><b>Telegram</b> (Recommandé)</summary>1. Créer un bot
@BotFather/newbot, suivez les instructions2. Configurer
{
"channel_list": {
"telegram": {
"enabled": true,
"type": "telegram",
"token": "YOUR_BOT_TOKEN",
"allow_from": ["YOUR_USER_ID"]
}
}
}
Obtenez votre identifiant utilisateur via
@userinfobotsur Telegram.
3. Lancer
picoclaw gateway
4. Menu de commandes Telegram (enregistré automatiquement au démarrage)
PicoClaw conserve les définitions de commandes dans un registre partagé unique. Au démarrage, Telegram enregistre automatiquement les commandes bot prises en charge (par exemple /start, /help, /show, /list, /use, /btw) afin que le menu de commandes et le comportement à l'exécution restent synchronisés.
L'enregistrement du menu de commandes Telegram reste une découverte UX locale au canal ; l'exécution générique des commandes est gérée de maniÚre centralisée dans la boucle agent via l'exécuteur de commandes.
Si l'enregistrement des commandes Ă©choue (erreurs transitoires rĂ©seau/API), le canal dĂ©marre quand mĂȘme et PicoClaw rĂ©essaie l'enregistrement en arriĂšre-plan.
Vous pouvez aussi gerer les competences installees directement depuis Telegram :
/list skills/use <skill> <message>/use <skill> puis envoyer la vraie requete dans le message suivant/use clear/btw <question> pour poser une question annexe immediate sans modifier l'historique actif de la session ; /btw est traite comme une requete directe sans outils et n'entre pas dans le flux normal d'execution des outils<a id="discord"></a>
<details> <summary><b>Discord</b></summary>1. Créer un bot
2. Activer les intents
3. Obtenir votre identifiant utilisateur
4. Configurer
{
"channel_list": {
"discord": {
"enabled": true,
"type": "discord",
"token": "YOUR_BOT_TOKEN",
"allow_from": ["YOUR_USER_ID"]
}
}
}
5. Inviter le bot
botSend Messages, Read Message HistoryMode déclenchement en groupe (optionnel)
Par défaut, le bot répond à tous les messages dans un canal de serveur. Pour limiter les réponses aux @mentions uniquement, ajoutez :
{
"channel_list": {
"discord": {
"group_trigger": { "mention_only": true }
}
}
}
Vous pouvez également déclencher par préfixes de mots-clés (par ex. !bot) :
{
"channel_list": {
"discord": {
"group_trigger": { "prefixes": ["!bot"] }
}
}
}
6. Lancer
picoclaw gateway
<a id="whatsapp"></a>
<details> <summary><b>WhatsApp</b> (natif via whatsmeow)</summary>PicoClaw peut se connecter Ă WhatsApp de deux maniĂšres :
"use_native": true et laissez bridge_url vide. Au premier lancement, scannez le code QR avec WhatsApp (Appareils liés). La session est stockée dans votre workspace (par ex. workspace/whatsapp/). Le canal natif est optionnel pour garder le binaire par défaut léger ; compilez avec -tags whatsapp_native (par ex. make build-whatsapp-native ou go build -tags whatsapp_native ./cmd/...).bridge_url (par ex. ws://localhost:3001) et gardez use_native à false.Configurer (natif)
{
"channel_list": {
"whatsapp": {
"enabled": true,
"type": "whatsapp",
"use_native": true,
"session_store_path": "",
"allow_from": []
}
}
}
Si session_store_path est vide, la session est stockĂ©e dans <workspace>/whatsapp/. Lancez picoclaw gateway ; au premier lancement, scannez le code QR affichĂ© dans le terminal avec WhatsApp â Appareils liĂ©s.
<a id="weixin"></a>
<details> <summary><b>Weixin</b> (WeChat Personnel)</summary>PicoClaw prend en charge la connexion Ă votre compte WeChat personnel via l'API officielle Tencent iLink.
1. Connexion
Lancez le flux de connexion interactif par QR code :
picoclaw auth weixin
Scannez le QR code affiché avec votre application WeChat mobile. Une fois connecté, le token est sauvegardé dans votre configuration.
2. Configurer
(Optionnel) Ajoutez votre identifiant utilisateur WeChat dans allow_from pour restreindre qui peut envoyer des messages au bot :
{
"channel_list": {
"weixin": {
"enabled": true,
"type": "weixin",
"token": "YOUR_TOKEN",
"allow_from": ["YOUR_USER_ID"]
}
}
}
3. Lancer
picoclaw gateway
<a id="qq"></a>
<details> <summary><b>QQ</b></summary>Configuration rapide (recommandée)
QQ Open Platform propose une page de configuration en un clic pour les bots compatibles OpenClaw :
{
"channel_list": {
"qq": {
"enabled": true,
"type": "qq",
"app_id": "YOUR_APP_ID",
"app_secret": "YOUR_APP_SECRET",
"allow_from": []
}
}
}
picoclaw gateway et ouvrez QQ pour discuter avec votre botL'App Secret n'est affichĂ© qu'une seule fois. Enregistrez-le immĂ©diatement â le consulter Ă nouveau forcera une rĂ©initialisation.
Les bots créés via la page de configuration rapide sont initialement réservés au créateur et ne prennent pas en charge les discussions de groupe. Pour activer l'accÚs en groupe, configurez le mode sandbox sur la QQ Open Platform.
Configuration manuelle
Si vous préférez créer le bot manuellement :
picoclaw gateway<a id="dingtalk"></a>
<details> <summary><b>DingTalk</b></summary>1. Créer un bot
2. Configurer
{
"channel_list": {
"dingtalk": {
"enabled": true,
"type": "dingtalk",
"client_id": "YOUR_CLIENT_ID",
"client_secret": "YOUR_CLIENT_SECRET",
"allow_from": []
}
}
}
Définissez
allow_fromvide pour autoriser tous les utilisateurs, ou spécifiez des identifiants DingTalk pour restreindre l'accÚs.
3. Lancer
picoclaw gateway
<a id="matrix"></a>
<details> <summary><b>Matrix</b></summary>1. Préparer le compte bot
https://matrix.org ou auto-hébergé)2. Configurer
{
"channel_list": {
"matrix": {
"enabled": true,
"type": "matrix",
"homeserver": "https://matrix.org",
"user_id": "@your-bot:matrix.org",
"access_token": "YOUR_MATRIX_ACCESS_TOKEN",
"allow_from": []
}
}
}
3. Lancer
picoclaw gateway
Pour toutes les options (device_id, join_on_invite, group_trigger, placeholder, reasoning_channel_id), voir le Guide de Configuration du Canal Matrix.
<a id="line"></a>
<details> <summary><b>LINE</b></summary>1. Créer un compte officiel LINE
2. Configurer
{
"channel_list": {
"line": {
"enabled": true,
"type": "line",
"channel_secret": "YOUR_CHANNEL_SECRET",
"channel_access_token": "YOUR_CHANNEL_ACCESS_TOKEN",
"webhook_path": "/webhook/line",
"allow_from": []
}
}
}
Le webhook LINE est servi sur le serveur Gateway partagé (
gateway.host:gateway.port, par défaut127.0.0.1:18790).
3. Configurer l'URL du Webhook
LINE nécessite HTTPS pour les webhooks. Utilisez un reverse proxy ou un tunnel :
# Exemple avec ngrok (le port par défaut du gateway est 18790)
ngrok http 18790
Puis définissez l'URL du Webhook dans la console LINE Developers à https://your-domain/webhook/line et activez Use webhook.
4. Lancer
picoclaw gateway
</details>Dans les discussions de groupe, le bot ne répond que lorsqu'il est @mentionné. Les réponses citent le message original.
<a id="wecom"></a>
<details> <summary><b>WeCom (äŒäžćŸźäżĄ)</b></summary>PicoClaw prend en charge trois types d'intĂ©gration WeCom :
Option 1 : WeCom Bot (Bot) - Configuration plus facile, prend en charge les discussions de groupe Option 2 : WeCom App (Application personnalisée) - Plus de fonctionnalités, messagerie proactive, chat privé uniquement Option 3 : WeCom AI Bot (Bot IA) - Bot IA officiel, réponses en streaming, prend en charge les discussions de groupe et privées
Voir le Guide de Configuration WeCom pour les instructions détaillées.
Configuration rapide - WeCom Bot :
1. Créer un bot
https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=xxx)2. Configurer
{
"channel_list": {
"wecom": {
"enabled": true,
"type": "wecom",
"token": "YOUR_TOKEN",
"encoding_aes_key": "YOUR_ENCODING_AES_KEY",
"webhook_url": "https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=YOUR_KEY",
"webhook_path": "/webhook/wecom",
"allow_from": []
}
}
}
Le webhook WeCom est servi sur le serveur Gateway partagé (
gateway.host:gateway.port, par défaut127.0.0.1:18790).
Configuration rapide - WeCom App :
1. Créer une application
2. Configurer la réception des messages
http://your-server:18790/webhook/wecom-app3. Configurer
{
"channel_list": {
"wecom_app": {
"enabled": true,
"corp_id": "wwxxxxxxxxxxxxxxxx",
"corp_secret": "YOUR_CORP_SECRET",
"agent_id": 1000002,
"token": "YOUR_TOKEN",
"encoding_aes_key": "YOUR_ENCODING_AES_KEY",
"webhook_path": "/webhook/wecom-app",
"allow_from": []
}
}
}
4. Lancer
picoclaw gateway
Note : Les callbacks webhook WeCom sont servis sur le port Gateway (par défaut 18790). Utilisez un reverse proxy pour HTTPS.
Configuration rapide - WeCom AI Bot :
1. Créer un AI Bot
http://your-server:18790/webhook/wecom-aibot2. Configurer
{
"channel_list": {
"wecom_aibot": {
"enabled": true,
"token": "YOUR_TOKEN",
"encoding_aes_key": "YOUR_43_CHAR_ENCODING_AES_KEY",
"webhook_path": "/webhook/wecom-aibot",
"allow_from": [],
"welcome_message": "Hello! How can I help you?",
"processing_message": "âł Processing, please wait. The results will be sent shortly."
}
}
}
3. Lancer
picoclaw gateway
</details>Note : WeCom AI Bot utilise le protocole streaming pull â pas de problĂšme de timeout de rĂ©ponse. Les tĂąches longues (>30 secondes) basculent automatiquement vers la livraison push via
response_url.
<a id="feishu"></a>
<details> <summary><b>Feishu (éŁäčŠ)</b></summary>PicoClaw se connecte Ă Feishu via le mode WebSocket/SDK â aucune URL webhook publique ni serveur de callback nĂ©cessaire.
1. Créer une application
cli_) et l'App Secret2. Configurer
{
"channel_list": {
"feishu": {
"enabled": true,
"type": "feishu",
"app_id": "cli_xxx",
"app_secret": "YOUR_APP_SECRET",
"allow_from": []
}
}
}
Optionnel : encrypt_key et verification_token pour le chiffrement des événements (recommandé en production).
3. Lancer et discuter
picoclaw gateway
Ouvrez Feishu, recherchez le nom de votre bot et commencez Ă discuter. Vous pouvez aussi ajouter le bot Ă un groupe â utilisez group_trigger.mention_only: true pour ne rĂ©pondre que lorsqu'il est @mentionnĂ©.
Pour toutes les options, voir le Guide de Configuration du Canal Feishu.
</details><a id="slack"></a>
<details> <summary><b>Slack</b></summary>1. Créer une application Slack
chat:write, app_mentions:read, im:history, im:read, im:writexoxb-...) et l'App-Level Token (xapp-..., activez Socket Mode pour l'obtenir)2. Configurer
{
"channel_list": {
"slack": {
"enabled": true,
"type": "slack",
"bot_token": "xoxb-YOUR-BOT-TOKEN",
"app_token": "xapp-YOUR-APP-TOKEN",
"allow_from": []
}
}
}
3. Lancer
picoclaw gateway
<a id="irc"></a>
<details> <summary><b>IRC</b></summary>1. Configurer
{
"channel_list": {
"irc": {
"enabled": true,
"type": "irc",
"server": "irc.libera.chat:6697",
"tls": true,
"nick": "picoclaw-bot",
"channels": ["#your-channel"],
"password": "",
"allow_from": []
}
}
}
Optionnel : nickserv_password pour l'authentification NickServ, sasl_user/sasl_password pour l'authentification SASL.
2. Lancer
picoclaw gateway
Le bot se connectera au serveur IRC et rejoindra les canaux spécifiés.
</details><a id="onebot"></a>
<details> <summary><b>OneBot (QQ via protocole OneBot)</b></summary>OneBot est un protocole ouvert pour les bots QQ. PicoClaw se connecte à toute implémentation compatible OneBot v11 (par ex. Lagrange, NapCat) via WebSocket.
1. Configurer une implémentation OneBot
Installez et exécutez un framework de bot QQ compatible OneBot v11. Activez son serveur WebSocket.
2. Configurer
{
"channel_list": {
"onebot": {
"enabled": true,
"type": "onebot",
"ws_url": "ws://127.0.0.1:8080",
"access_token": "",
"allow_from": []
}
}
}
| Champ | Description |
|---|---|
ws_url | URL WebSocket de l'implémentation OneBot |
access_token | Token d'accÚs pour l'authentification (si configuré dans OneBot) |
reconnect_interval | Intervalle de reconnexion en secondes (par défaut : 5) |
3. Lancer
picoclaw gateway
<a id="maixcam"></a>
<details> <summary><b>MaixCam</b></summary>1. Préparer le matériel
2. Configurer
{
"channel_list": {
"maixcam": {
"enabled": true,
"type": "maixcam",
"allow_from": []
}
}
}
MaixCam est une intégration matérielle Sipeed pour l'interaction IA embarquée.
3. Lancer
picoclaw gateway
<a id="mqtt"></a>
<details> <summary><b>MQTT</b></summary>N'importe quel client MQTT peut communiquer avec PicoClaw via un broker. Les appareils ou services publient des requĂȘtes vers le broker ; PicoClaw s'abonne, les traite et publie les rĂ©ponses en retour.
1. Configurer
{
"channel_list": {
"mqtt": {
"enabled": true,
"type": "mqtt",
"settings": {
"broker": "ssl://votre-broker:8883",
"agent_id": "assistant",
"topic_prefix": "/picoclaw",
"keep_alive": 60,
"qos": 0
}
}
}
}
Nom d'utilisateur et mot de passe dans ~/.picoclaw/.security.yml :
channel_list:
mqtt:
settings:
username: votre_utilisateur
password: votre_mot_de_passe
Format des topics
{prefix}/{agent_id}/{client_id}/request # Client â PicoClaw
{prefix}/{agent_id}/{client_id}/response # PicoClaw â Client
Le client_id est défini par votre application cliente pour identifier les appareils ou sessions.
2. Lancer
picoclaw gateway
3. Tester
mosquitto_pub -t "/picoclaw/assistant/device1/request" \
-m '{"text": "Bonjour"}'
mosquitto_sub -t "/picoclaw/assistant/device1/response"
Pour les options complĂštes, voir Documentation du canal MQTT.
</details>