Synology Chat (plugin)
Status: suportado via plugin como canal de mensagem direta usando webhooks do Synology Chat. O plugin aceita mensagens de entrada dos webhooks de saída do Synology Chat e envia respostas através de um webhook de entrada do Synology Chat.
Plugin necessário
O Synology Chat é baseado em plugin e não faz parte da instalação padrão.
Instalação a partir de um checkout local:
openclaw plugins install ./extensions/synology-chat
Detalhes: Plugins
Configuração rápida
- Instale e habilite o plugin do Synology Chat.
- Nas integrações do Synology Chat:
- Crie um webhook de entrada e copie sua URL.
- Crie um webhook de saída com seu token secreto.
- Aponte a URL do webhook de saída para o gateway do OpenClaw:
https://gateway-host/webhook/synologypor padrão.- Ou o
channels.synology-chat.webhookPathpersonalizado.
- Configure
channels.synology-chatno OpenClaw. - Reinicie o gateway e envie uma DM para o bot do Synology Chat.
Configuração mínima:
{
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,
},
},
}
Variáveis de ambiente
Para a conta padrão, você pode usar variáveis de ambiente:
SYNOLOGY_CHAT_TOKENSYNOLOGY_CHAT_INCOMING_URLSYNOLOGY_NAS_HOSTSYNOLOGY_ALLOWED_USER_IDS(separados por vírgula)SYNOLOGY_RATE_LIMITOPENCLAW_BOT_NAME
Valores de configuração sobrescrevem variáveis de ambiente.
Política de DM e controle de acesso
dmPolicy: "allowlist"é o padrão recomendado.allowedUserIdsaceita uma lista (ou string separada por vírgula) de IDs de usuário do Synology.- No modo
allowlist, uma listaallowedUserIdsvazia é tratada como configuração incorreta e a rota do webhook não será iniciada (usedmPolicy: "open"para permitir todos). dmPolicy: "open"permite qualquer remetente.dmPolicy: "disabled"bloqueia DMs.- Aprovações de pareamento funcionam com:
openclaw pairing list synology-chatopenclaw pairing approve synology-chat <CODE>
Entrega de saída
Use IDs numéricos de usuário do Synology Chat como alvos.
Exemplos:
openclaw message send --channel synology-chat --target 123456 --text "Olá do OpenClaw"
openclaw message send --channel synology-chat --target synology-chat:123456 --text "Olá de novo"
Envio de mídia é suportado por entrega de arquivos baseada em URL.
Múltiplas contas
Múltiplas contas do Synology Chat são suportadas em channels.synology-chat.accounts.
Cada conta pode sobrescrever token, URL de entrada, caminho do webhook, política de DM e limites.
{
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"],
},
},
},
},
}
Notas de segurança
- Mantenha o
tokensecreto e faça rotação caso vaze. - Mantenha
allowInsecureSsl: falsea menos que você confie explicitamente em um certificado autoassinado do NAS local. - Solicitações de webhook de entrada são verificadas por token e limitadas por taxa por remetente.
- Prefira
dmPolicy: "allowlist"para produção.