Synology Chat (plugin)

Status: ondersteund via plugin als direct-berichtenkanaal met Synology Chat-webhooks. De plugin accepteert inkomende berichten van Synology Chat outgoing webhooks en stuurt antwoorden via een Synology Chat incoming webhook.

Plugin vereist

Synology Chat is plugin-gebaseerd en maakt geen deel uit van de standaard kerninstallatie.

Installeren vanuit een lokale checkout:

openclaw plugins install ./extensions/synology-chat

Details: Plugins

Snelle installatie

  1. Installeer en schakel de Synology Chat-plugin in.
  2. In Synology Chat-integraties:
    • Maak een incoming webhook aan en kopieer de URL.
    • Maak een outgoing webhook aan met je geheime token.
  3. Wijs de outgoing webhook-URL naar je OpenClaw-gateway:
    • Standaard https://gateway-host/webhook/synology.
    • Of je aangepaste channels.synology-chat.webhookPath.
  4. Configureer channels.synology-chat in OpenClaw.
  5. Herstart de gateway en stuur een DM naar de Synology Chat-bot.

Minimale configuratie:

{
  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,
    },
  },
}

Omgevingsvariabelen

Voor het standaardaccount kun je omgevingsvariabelen gebruiken:

  • SYNOLOGY_CHAT_TOKEN
  • SYNOLOGY_CHAT_INCOMING_URL
  • SYNOLOGY_NAS_HOST
  • SYNOLOGY_ALLOWED_USER_IDS (kommagescheiden)
  • SYNOLOGY_RATE_LIMIT
  • OPENCLAW_BOT_NAME

Configuratiewaarden overschrijven omgevingsvariabelen.

DM-beleid en toegangscontrole

  • dmPolicy: "allowlist" is de aanbevolen standaard.
  • allowedUserIds accepteert een lijst (of kommagescheiden string) van Synology-gebruikers-ID’s.
  • In allowlist-modus wordt een lege allowedUserIds-lijst als misconfiguratie behandeld en start de webhook-route niet (gebruik dmPolicy: "open" om alles toe te staan).
  • dmPolicy: "open" staat elke afzender toe.
  • dmPolicy: "disabled" blokkeert DM’s.
  • Koppelinggoedkeuringen werken met:
    • openclaw pairing list synology-chat
    • openclaw pairing approve synology-chat <CODE>

Uitgaande aflevering

Gebruik numerieke Synology Chat-gebruikers-ID’s als doelen.

Voorbeelden:

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"

Mediaverzending wordt ondersteund via URL-gebaseerde bestandsaflevering.

Multi-account

Meerdere Synology Chat-accounts worden ondersteund onder channels.synology-chat.accounts. Elk account kan token, incoming URL, webhook-pad, DM-beleid en limieten overschrijven.

{
  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"],
        },
      },
    },
  },
}

Beveiligingsnotities

  • Houd token geheim en roteer het bij een lek.
  • Houd allowInsecureSsl: false tenzij je expliciet een zelfondertekend lokaal NAS-certificaat vertrouwt.
  • Inkomende webhookverzoeken worden tokengecontroleerd en snelheidsbeperkt per afzender.
  • Gebruik bij voorkeur dmPolicy: "allowlist" voor productie.