Synology Chat
Synology Chat (plugin)
Section intitulée « Synology Chat (plugin) »État : pris en charge via un plugin en tant que channel de message direct utilisant les webhooks Synology Chat. Le plugin accepte les messages entrants des webhooks sortants Synology Chat et envoie des réponses via un webhook entrant Synology Chat.
Plugin requis
Section intitulée « Plugin requis »Synology Chat est basé sur un plugin et ne fait pas partie de l’installation par défaut des channel de base.
Installer depuis une copie locale :
openclaw plugins install ./path/to/local/synology-chat-pluginDétails : Plugins
Installation rapide
Section intitulée « Installation rapide »- Installez et activez le plugin Synology Chat.
openclaw onboardaffiche désormais Synology Chat dans la même liste de configuration de channel queopenclaw channels add.- Configuration non interactive :
openclaw channels add --channel synology-chat --token <token> --url <incoming-webhook-url>
- Dans les intégrations Synology Chat :
- Créez un webhook entrant et copiez son URL.
- Créez un webhook sortant avec votre jeton secret.
- Pointez l’URL du webhook sortant vers votre passerelle OpenClaw :
https://gateway-host/webhook/synologypar défaut.- Ou votre
channels.synology-chat.webhookPathpersonnalisé.
- Terminez la configuration dans OpenClaw.
- Guidé :
openclaw onboard - Direct :
openclaw channels add --channel synology-chat --token <token> --url <incoming-webhook-url>
- Guidé :
- Redémarrez la passerelle et envoyez un DM au bot Synology Chat.
Configuration minimale :
{ channels: { "synology-chat": { enabled: true, token: "synology-outgoing-token", incomingUrl: "https://nas.example.com/webapi/entry.cgi?api=SYNO.Chat.External&method=incoming&version=2&token=...", webhookPath: "/webhook/synology", dmPolicy: "allowlist", allowedUserIds: ["123456"], rateLimitPerMinute: 30, allowInsecureSsl: false, }, },}Variables d’environnement
Section intitulée « Variables d’environnement »Pour le compte par défaut, vous pouvez utiliser les env vars :
SYNOLOGY_CHAT_TOKENSYNOLOGY_CHAT_INCOMING_URLSYNOLOGY_NAS_HOSTSYNOLOGY_ALLOWED_USER_IDS(séparés par des virgules)SYNOLOGY_RATE_LIMITOPENCLAW_BOT_NAME
Les valeurs de configuration remplacent les env vars.
Politique de DM et contrôle d’accès
Section intitulée « Politique de DM et contrôle d’accès »dmPolicy: "allowlist"est la valeur par défaut recommandée.allowedUserIdsaccepte une liste (ou une chaîne séparée par des virgules) d’ID utilisateur Synology.- En mode
allowlist, une listeallowedUserIdsvide est considérée comme une mauvaise configuration et la route du webhook ne démarrera pas (utilisezdmPolicy: "open"pour tout autoriser). dmPolicy: "open"autorise n’importe quel expéditeur.dmPolicy: "disabled"bloque les DMs.- La liaison du destinataire de la réponse reste par défaut sur un
user_idnumérique stable.channels.synology-chat.dangerouslyAllowNameMatching: trueest un mode de compatibilité de secours qui réactive la recherche modifiable par nom d’utilisateur/pseudo pour la livraison des réponses. - Les approbations d’appariement fonctionnent avec :
openclaw pairing list synology-chatopenclaw pairing approve synology-chat <CODE>
Livraison sortante
Section intitulée « Livraison sortante »Utilisez les ID utilisateur numériques Synology Chat comme cibles.
Exemples :
openclaw message send --channel synology-chat --target 123456 --text "Hello from OpenClaw"openclaw message send --channel synology-chat --target synology-chat:123456 --text "Hello again"Les envois de médias sont pris en charge par la livraison de fichiers basée sur l’URL.
Multi-compte
Section intitulée « Multi-compte »Plusieurs comptes Synology Chat sont pris en charge sous channels.synology-chat.accounts.
Chaque compte peut remplacer le jeton, l’URL entrante, le chemin du webhook, la politique de DM et les limites.
Les sessions de message direct sont isolées par compte et utilisateur, donc le même user_id numérique
sur deux comptes Synology différents ne partage pas l’état de la transcription.
Donnez à chaque compte activé un webhookPath distinct. OpenClaw rejette désormais les chemins exacts en double
et refuse de démarrer les comptes nommés qui n’héritent que d’un chemin de webhook partagé dans les configurations multi-comptes.
Si vous avez intentionnellement besoin d’un héritage hérité pour un compte nommé, définissez
dangerouslyAllowInheritedWebhookPath: true sur ce compte ou à channels.synology-chat,
mais les chemins exacts en double sont toujours rejetés en mode échec (fail-closed). Préférez des chemins explicites par compte.
{ channels: { "synology-chat": { enabled: true, accounts: { default: { token: "token-a", incomingUrl: "https://nas-a.example.com/...token=...", }, alerts: { token: "token-b", incomingUrl: "https://nas-b.example.com/...token=...", webhookPath: "/webhook/synology-alerts", dmPolicy: "allowlist", allowedUserIds: ["987654"], }, }, }, },}Notes de sécurité
Section intitulée « Notes de sécurité »- Gardez
tokensecret et faites-le tourner s’il fuite. - Gardez
allowInsecureSsl: falsesauf si vous faites explicitement confiance à un certificat NAS local auto-signé. - Les requêtes webhook entrantes sont vérifiées par jeton et limitées par taux par expéditeur.
- Préférez
dmPolicy: "allowlist"pour la production. - Désactivez
dangerouslyAllowNameMatchingsauf si vous avez explicitement besoin de la livraison de réponse héritée basée sur le nom d’utilisateur. - Désactivez
dangerouslyAllowInheritedWebhookPathsauf si vous acceptez explicitement le risque de routage par chemin partagé dans une configuration multi-compte.
- Vue d’ensemble des canaux — tous les canaux pris en charge
- Jumelage — authentification DM et flux de jumelage
- Groupes — comportement de chat de groupe et filtrage des mentions
- Routage de canal — routage de session pour les messages
- Sécurité — modèle d’accès et durcissement