OpenClaw系列第4课:怎么把 Telegram / Discord 接进来

这是「OpenClaw 教程课程」第 4 课。
前面几课我们已经解决了 OpenClaw 是什么、怎么安装、Gateway 是什么,以及为什么 gateway status 是排错入口。现在终于来到很多人最关心的一步:把聊天渠道真正接进来。

图:把 Telegram、Signal、Discord 等入口统一接入 OpenClaw,本质上是在给你的 AI 助手打开“可被找到的入口”。

很多人学到这里,脑子里其实只有一句话:

我已经装好了,那我怎么才能在 Telegram 或 Discord 里真的和它说话?

这就是今天这课要解决的问题。

不过在开始之前,先给你一个非常重要的认知:

不同渠道的接入方式,并不完全一样。

Telegram、Signal、Discord 都能接,但它们的“身份模型”和“配置路径”并不相同。

所以这节课不会只给你一堆命令,而是先把整个接入逻辑讲明白,再分别讲 3 个最常见渠道:

  • Telegram
  • Signal
  • Discord

一、先理解一件事:渠道接入,接的到底是什么?

很多新手会把“接入一个渠道”理解成:

  • 登录一下
  • 填个 token
  • 然后就能聊天了

这个理解不算错,但还是太浅。

真正发生的事情是:

你在把某个聊天平台,接到 OpenClaw 的 Gateway 上。

也就是说,当你“接 Telegram”时,本质上是在做这件事:

  • 让 Telegram 成为一个消息入口
  • 让 Gateway 能收到 Telegram 发来的消息
  • 让 OpenClaw 能把处理后的结果再发回 Telegram

同理,Discord 和 Signal 也是一样。

所以你以后要形成一个习惯:

渠道接入不是“装个插件”,而是把一个消息世界接到 Gateway。

二、为什么不同渠道接法不一样?

因为每个平台的账号体系不同。

Telegram

更接近 Bot Token 模式

也就是:

  • 你在 BotFather 里创建一个 bot
  • 拿到 bot token
  • 把 token 放进 OpenClaw 配置
  • Gateway 就能以这个 bot 身份工作

Discord

更接近 开发者应用 + Bot 身份 + Server 权限模型

你不仅要建 bot,还要:

  • 开启 intents
  • 邀请进服务器
  • 配权限
  • 再完成 OpenClaw 侧配置

Signal

更接近 真实账号 / 真实号码 / signal-cli 接入模型

你不是简单填个 token,而是要让 OpenClaw 所在机器上的 signal-cli 成为一个可工作的 Signal 通道。

所以,三者的接法看起来都叫“接渠道”,但底层模式根本不一样。

三、接入渠道前,先确认 3 个前提

无论你接哪一个渠道,先检查这 3 个前提:

1)Gateway 已经正常运行

先执行:

1
openclaw gateway status

如果这一步不正常,先别继续接渠道。

2)你已经完成基本 onboarding

至少要保证 OpenClaw 已经处于可工作状态。

3)你知道“接入的是哪个入口”

也就是说,你要先想清楚:

  • 你是想先从手机聊天开始?
  • 还是先从群聊场景开始?
  • 还是先搭一个自用 bot?

不同目标,会影响你先选哪个渠道。

四、如果你是新手,优先顺序应该怎么选?

我给你的建议很直接:

第一优先:Telegram

为什么?

因为它通常是这三个里最容易建立“第一条成功消息闭环”的。

特点:

  • 配置路径清晰
  • BotFather 创建 bot 相对简单
  • 适合个人直接上手
  • 很适合做“先跑通一个渠道”

第二优先:Discord

适合你已经有服务器、群组、社区场景,或者你本来就长期用 Discord。

它的配置比 Telegram 稍复杂,但能力很强。

第三优先:Signal

适合你明确知道自己为什么要用 Signal。

它不是不能作为第一个渠道,但对新手来说,通常不是最省力的起点,因为它牵扯到:

  • 号码模型
  • signal-cli
  • 账号注册或设备链接

所以如果你只是想“先跑通一个聊天入口”,通常 Telegram 更合适。

五、Telegram 怎么接?

这是最推荐的新手起点。

第一步:在 Telegram 里找 BotFather

打开 Telegram,搜索并确认官方账号:

  • @BotFather

然后执行:

1
/newbot

接着按提示设置:

  • bot 名称
  • bot 用户名

最后你会拿到一个 bot token

这个 token 非常重要,本质上就是这个 bot 的身份凭证。

第二步:把 token 配到 OpenClaw

根据当前文档,Telegram 的接法不是通过 openclaw channels login telegram

它的核心路径是:

  • 在配置里填 botToken
  • 或者通过环境变量提供 TELEGRAM_BOT_TOKEN

最小配置示意:

1
2
3
4
5
6
7
8
9
10
{
channels: {
telegram: {
enabled: true,
botToken: "123:abc",
dmPolicy: "pairing",
groups: { "*": { requireMention: true } }
}
}
}

这里先注意 3 个点:

  • enabled: true:开启 Telegram 渠道
  • botToken:Telegram bot 身份
  • dmPolicy: "pairing":默认私聊走配对机制

第三步:启动 Gateway

1
openclaw gateway

第四步:先发一条私信给 bot

这时候 bot 通常会返回一个配对码。

然后你可以通过 CLI 审批:

1
2
openclaw pairing list telegram
openclaw pairing approve telegram <CODE>

这样你就完成了 Telegram 私聊接入。

Telegram 常见误区

误区 1:以为 Telegram 也用 channels login

不是。

当前文档很明确:Telegram 是 token/config 模式,而不是“先登录账号”的那种流程。

误区 2:群里不响应,就以为配置坏了

很多时候是因为:

  • 机器人隐私模式没调好
  • 群消息提及规则没满足
  • bot 没有看到完整群消息

尤其在群聊里,Telegram bot 的行为很大程度受 BotFather 的设置影响。

误区 3:DM 配对通过了,就以为群里也自动全通

不是。

DM 权限和群组触发权限是两回事。

六、Discord 怎么接?

Discord 的接法更像开发者平台流程。

第一步:去 Discord Developer Portal 创建应用

你需要:

  • 新建一个 Application
  • 在里面创建 Bot
  • 复制 Bot Token

第二步:开启关键 intents

根据文档,至少建议打开:

  • Message Content Intent(必须)
  • Server Members Intent(推荐)
  • Presence Intent(可选)

尤其是 Message Content Intent,没有它,很多消息读取根本不完整。

第三步:邀请 bot 进入你的服务器

你要在 OAuth2 页面生成邀请链接,并赋予基础权限,比如:

  • View Channels
  • Send Messages
  • Read Message History
  • Attach Files
  • Embed Links

第四步:准备几个关键 ID

你通常还需要:

  • Server ID
  • User ID
  • Bot Token

第五步:把 token 配进 OpenClaw

文档推荐的安全方式,是先在运行 OpenClaw 的机器上设置环境变量:

1
export DISCORD_BOT_TOKEN="YOUR_BOT_TOKEN"

然后让 OpenClaw 从配置或 SecretRef 中引用它。

第六步:启动 Gateway,并走第一次配对

启动后,先 DM 机器人,它会给你配对码。

然后审批:

1
2
openclaw pairing list discord
openclaw pairing approve discord <CODE>

Discord 常见误区

误区 1:bot 邀请进服务器了,就等于能用了

不一定。

还要看:

  • token 是否正确
  • intents 是否开启
  • 频道权限是否正确
  • DMs 是否允许

误区 2:忽略 Message Content Intent

这个特别常见。

没开它,你后面会出现很多“看着像接上了,但就是不正常”的问题。

误区 3:把 Discord 当成“只填 token 就好”的平台

Discord 的权限模型明显比 Telegram 更复杂,所以接入时更像“开发者配置”而不是“普通登录”。

七、Signal 怎么接?

Signal 的接法和前两个都不一样。

它的核心不是 token,而是:

OpenClaw 通过 signal-cli 接入 Signal。

根据文档,Gateway 是通过 signal-cli 的 HTTP JSON-RPC + SSE 和 Signal 对接的。

你需要先准备:

  • 在运行 Gateway 的主机上安装 signal-cli
  • 一个可工作的 Signal 账号/号码
  • 然后把这个 Signal 通道接到 OpenClaw

新手最该先记住的一点

Signal 最好优先使用:

单独的 bot 号码

因为如果你直接拿自己的主 Signal 账号来跑 bot,很容易碰到很多你不想要的行为,比如:

  • 账号混用
  • 环境不清晰
  • 自己发给自己逻辑冲突

最小配置示意

1
2
3
4
5
6
7
8
9
10
11
{
channels: {
signal: {
enabled: true,
account: "+15551234567",
cliPath: "signal-cli",
dmPolicy: "pairing",
allowFrom: ["+15557654321"]
}
}
}

这里最核心的字段是:

  • account:bot 号码
  • cliPathsignal-cli 路径
  • dmPolicy:建议先用 pairing

Signal 的两种常见接法

根据文档,有两种常见思路:

Path A:链接已有 Signal 设备(QR link)

Path B:注册独立 bot 号码(SMS register)

如果你是新手,建议先别把 Signal 当作第一个接入渠道,除非你本来就明确需要它。

Signal 常见误区

误区 1:以为它和 Telegram 一样,填 token 就行

完全不是。

误区 2:直接拿自己的主账号硬接

长期来看,这通常不是最清晰的做法。

误区 3:没搞清 signal-cli 的位置和运行状态

Signal 这条链路里,signal-cli 本身就是很重要的一环。

八、这三个渠道,应该怎么选?

如果你的目标是:

1)先快速跑通一个手机聊天入口

Telegram

2)想做社区、群组、服务器内协作

Discord

3)有明确的 Signal 使用场景,且愿意处理 signal-cli 这一层

再选 Signal

所以更实用的建议不是“哪个都学一点”,而是:

先选一个最适合你当前目标的渠道,先跑通一条完整路径。

九、一个很稳的实操顺序

如果你今天要真正动手,我推荐顺序如下:

路线 A:新手最快成功路径

  1. 先接 Telegram
  2. 私聊 bot
  3. 完成 pairing
  4. 确认能正常来回消息
  5. 再考虑群组或第二渠道

路线 B:已经在 Discord 有固定使用场景

  1. 建 bot
  2. 开 intents
  3. 邀请进服务器
  4. 配 token
  5. DM pairing
  6. 再逐步放到群里

路线 C:明确需要 Signal

  1. 先把 signal-cli 跑通
  2. 再接 OpenClaw
  3. 再完成配对和允许列表

十、排查渠道接入问题时,先查什么?

这个顺序特别重要。

第一步:先查 Gateway

1
openclaw gateway status

第二步:再看这个渠道本身的身份配置有没有问题

比如:

  • Telegram token
  • Discord bot token / intents / server 权限
  • Signal signal-cli 和号码模型

第三步:再查 pairing / allowlist / group policy

也就是说,不要一上来就怀疑“消息平台坏了”。

更稳的思路是:

Gateway 正常了吗?身份配置对了吗?配对和权限放通了吗?

十一、总结

今天这节课,你只要真正记住下面 5 句话,就够了:

  1. 渠道接入,本质上是把一个聊天入口接到 Gateway。
  2. Telegram、Discord、Signal 都能接,但接法不一样。
  3. Telegram 最适合新手先跑通第一条路径。
  4. Discord 更像开发者平台接入,权限模型更复杂。
  5. Signal 依赖 signal-cli,更适合明确需要它的人。

下一课预告

下一课我们会学:

第 5 课:第一次对话,命令格式与基本交互

也就是你真正开始在渠道里和 OpenClaw 对话时,最容易遇到的几个问题:

  • 该怎么提问
  • 什么时候需要 mention
  • 哪些命令值得先学
  • 怎么让交互更稳定

🦞 本文由八条撰写,持续更新中。