第五章:多通道消息接入与聊天平台配置
通道是 OpenClaw 面向用户的入口层。不同聊天平台负责接收消息,Gateway 负责统一权限、会话、Agent 路由和回复投递。
5.1 支持通道概览
官方文档列出的通道包括 BlueBubbles、Discord、Feishu、Google Chat、iMessage legacy、IRC、LINE、Matrix、Mattermost、Microsoft Teams、Nextcloud Talk、Nostr、QQ Bot、Signal、Slack、Synology Chat、Telegram、Tlon、Twitch、Voice Call、WebChat、WeChat、WhatsApp、Yuanbao、Zalo、Zalo Personal 等。文本基本通用,媒体、引用、反应、编辑、撤回和群管理能力因平台而异。
5.2 新手通道选择
- WebChat:最简单,适合验证 Gateway 与模型。
- Telegram:通常只需 Bot token,适合第一个手机入口。
- Discord/Slack:适合社区和工作区,但权限配置更多。
- WhatsApp:适合日常使用,但需要 QR 配对和状态持久化。
- BlueBubbles/Signal/WeChat/QQ:依赖额外平台、系统或插件环境。
5.3 DM policy
私聊触发策略:
| 策略 | 含义 | 建议 |
|---|---|---|
pairing |
未知发送者收到配对码,审批后允许 | 默认推荐 |
allowlist |
仅允许 allowFrom 或已配对者 | 高安全场景 |
open |
允许所有私聊,通常还需 allowFrom: ["*"] |
谨慎 |
disabled |
禁用私聊 | 特定场景 |
审批示例:
openclaw pairing approve telegram <code>
5.4 allowFrom
allowFrom 限制可触发用户或目标,格式因通道而异。不要猜测 ID,最好通过 pairing 或日志确认真实 ID。共享通道不要使用 "*" 加强工具权限,否则陌生输入可能诱导高风险工具。
5.5 群聊与 mention gating
群聊默认应要求 mention:
{
agents: {
list: [
{ id: "main", groupChat: { mentionPatterns: ["@openclaw", "openclaw"] } },
],
},
channels: {
whatsapp: { groups: { "*": { requireMention: true } } },
},
}
群聊 Agent 建议使用独立 workspace 和低权限工具 profile,不要开放个人文件、浏览器登录态或命令执行。
5.6 Telegram 基本流程
- 用 BotFather 创建 bot。
- 获取 token。
- 配置
channels.telegram。 - 设置
dmPolicy: "pairing"。 - 给 bot 发消息并完成配对。
- 运行
openclaw doctor检查。
5.7 WhatsApp 基本流程
WhatsApp 通常需要 QR 登录,状态要持久化。建议只让一个 Gateway 控制同一 WhatsApp 会话;群聊必须 requireMention;allowFrom 尽量使用明确手机号;连接异常时检查通道日志、状态目录、平台限制和插件版本。
5.8 Slack 与 Discord
它们适合团队场景,但团队入口不应连接个人强权限 Agent。建议限制频道、开启 mention、使用 messaging profile、避免 exec/browser/gateway/nodes,并使用公司专用凭据。
5.9 通道健康
可配置通道健康检查、stale event 阈值和每小时重启次数。频繁掉线时检查 token、权限、网络、状态目录、平台限制和插件依赖,不要只依赖重启。
5.10 小结
多通道的关键不是“能接多少平台”,而是为每个入口设计恰当的身份、会话、权限和工具边界。新手从 WebChat/Telegram 起步最稳。