Telegram 是 OpenClaw 官方文档里列为"简单"级别的 Channel,15 分钟内可以完成配置。整个流程只需要一个 Telegram 账号和一个 Bot Token。
一、前置条件
- 已完成 OpenClaw 安装(参见第1篇)
- 一个 Telegram 账号(手机号注册即可)
- 网络能访问 Telegram
二、创建 Bot Token
Telegram 的 Bot 由官方的 @BotFather 机器人统一管理。
- 打开 Telegram,搜索 @BotFather,点击进入对话
- 发送
/newbot - 按提示输入 Bot 的名称(显示名,随意起)
- 再输入 Bot 的用户名(username,必须以
bot结尾,如myopenclaw_bot) - BotFather 会返回一串 Token,格式类似:
text
text
1123456789:ABCDEFGHIJKLMNOPQRSTUVWXYZabcdef把这个 Token 保存好,后面要用。
Token 等同于 Bot 的密钥,不要分享给别人或提交到代码仓库。
三、配置 Token
有两种方式把 Token 告诉 OpenClaw:
方式 A:写入配置文件(推荐)
编辑 ~/.openclaw/openclaw.json,添加:
json
json
1{
2 "channels": {
3 "telegram": {
4 "enabled": true,
5 "botToken": "123456789:ABCDEFGHIJKLMNOPQRSTUVWXYZabcdef",
6 "dmPolicy": "pairing"
7 }
8 }
9}方式 B:环境变量
bash
bash
1export TELEGRAM_BOT_TOKEN="123456789:ABCDEFGHIJKLMNOPQRSTUVWXYZabcdef"如果两种方式都设置了,配置文件优先级更高。
四、启动 Gateway 并配对
Step 1 - 启动 Gateway
bash
bash
1openclaw gateway保持这个终端窗口开着(Gateway 是长驻进程)。
Step 2 - 在 Telegram 里找你的 Bot 发消息
打开 Telegram,搜索你刚创建的 Bot 用户名,点进去,发一条任意消息(比如 hello)。
Bot 会回复一条配对码,格式类似:
text
text
1Your pairing code: ABC123
2This code expires in 1 hour.Step 3 - 在终端里批准配对
新开一个终端,执行:
bash
bash
1# 查看待批准的配对请求
2openclaw pairing list telegram
3
4# 批准,把 ABC123 换成你收到的实际配对码
5openclaw pairing approve telegram ABC123批准后,Bot 会在 Telegram 里回复确认消息,连接建立完成。
配对码 1 小时后过期。如果超时了,重新给 Bot 发一条消息,会生成新的配对码。
五、验证是否正常工作
在 Telegram 里向 Bot 提问,它应该能正常回复。
如果没有响应,先检查状态:
bash
bash
1openclaw channels status --probe
2openclaw gateway status
3openclaw logs --follow六、访问控制
默认情况下 dmPolicy 是 pairing,即每个新用户都需要配对才能使用。你可以根据需要调整:
| 值 | 说明 |
|---|---|
pairing(默认) | 每个用户首次使用需要配对码验证 |
allowlist | 只允许白名单里的用户 ID |
open | 任何人都能直接使用,不需要配对 |
disabled | 关闭私信功能 |
群组设置
如果你想在 Telegram 群组里使用 Bot,需要额外配置:
json
json
1{
2 "channels": {
3 "telegram": {
4 "enabled": true,
5 "botToken": "你的 token",
6 "dmPolicy": "pairing",
7 "groupPolicy": "allowlist",
8 "requireMention": true
9 }
10 }
11}groupPolicy:群组访问策略(open/allowlist/disabled)requireMention:true表示群里必须 @ Bot 才会响应,避免被所有消息触发
另外,在 BotFather 里用 /setprivacy 关闭隐私模式,或者把 Bot 设为群管理员,Bot 才能看到群里的所有消息。
七、实用命令
bash
bash
1# 主动发消息给用户(user_id 从 Telegram 获取)
2openclaw message send --channel telegram --target <user_id> --message "你好"
3
4# 实时查看日志
5openclaw logs --follow
6
7# 检查 Channel 连接状态
8openclaw channels status --probe下一篇:飞书 Channel 配置!