Telegram
约 1516 字大约 5 分钟
2026-03-02
概述
Telegram 是 OpenClaw 最推荐的接入渠道之一,具有以下优势:
- 配置简单:创建 Bot 只需几分钟
- 功能强大:支持丰富的消息类型和交互方式
- 国内可用:无需翻墙即可使用
- 隐私保护:端到端加密,安全可靠
- 免费使用:无需付费即可创建 Bot
前置准备
- Telegram 账号
- 已完成 OpenClaw 基础安装
创建 Telegram Bot
1. 找到 BotFather
BotFather 是 Telegram 官方的 Bot 管理工具:
- 在 Telegram 搜索框中输入
@BotFather - 点击进入对话
- 点击「Start」开始对话
2. 创建新 Bot
在与 BotFather 的对话中:
- 发送命令:
/newbot - BotFather 会要求你输入 Bot 的名称(显示名称)
- 输入你想要的名称,例如:
My OpenClaw Bot - 接着输入 Bot 的用户名(必须以
bot结尾) - 例如:
myopenclaw_bot
3. 获取 Bot Token
创建成功后,BotFather 会返回一条消息,包含:
Done! Congratulations on your new bot. You will find it at t.me/myopenclaw_bot.
Use this token to access the HTTP API:
1234567890:ABCdefGHIjklMNOpqrsTUVwxyz
For a description of the Bot API, see this page: https://core.telegram.org/bots/api重要:复制并保存这个 Token(格式类似 1234567890:ABCdefGHIjklMNOpqrsTUVwxyz),后续配置需要使用。
安全提示
Bot Token 是敏感信息,请勿泄露或提交到公开代码仓库。
4. 配置 Bot 设置(可选)
你可以通过 BotFather 配置更多 Bot 设置:
/setdescription - 设置 Bot 描述
/setabouttext - 设置 Bot 简介
/setuserpic - 设置 Bot 头像
/setcommands - 设置 Bot 命令列表示例命令列表:
start - 开始使用
help - 获取帮助
status - 查看状态配置 OpenClaw
方式 1:使用引导向导(推荐)
- 运行配置命令:
openclaw channels add在渠道列表中选择「Telegram」
输入刚才获取的 Bot Token
选择群组策略:
- Open:响应所有消息(适合测试)
- Allowlist:仅响应白名单用户(推荐生产环境)
选择「Finished」完成配置
方式 2:手动配置
编辑配置文件 ~/.openclaw/config.json:
{
"channels": {
"telegram": {
"enabled": true,
"token": "YOUR_BOT_TOKEN",
"groupPolicy": "allowlist",
"allowedUsers": []
}
}
}验证配置
1. 启动 Gateway
openclaw gateway2. 测试 Bot
- 在 Telegram 中搜索你的 Bot 用户名
- 点击「Start」开始对话
- 发送测试消息:
你好 - 如果 Bot 正常回复,说明配置成功
配置白名单
获取用户 ID
- 在 Telegram 中向 Bot 发送任意消息
- 查看 OpenClaw 日志:
openclaw logs --channel telegram- 日志中会显示用户 ID,例如:
userId: 123456789
添加到白名单
编辑配置文件:
{
"channels": {
"telegram": {
"groupPolicy": "allowlist",
"allowedUsers": ["123456789", "987654321"]
}
}
}或使用命令:
openclaw channels whitelist add telegram 123456789高级配置
配置群组
Telegram Bot 可以加入群组:
- 在 BotFather 中启用群组权限:
/setjoingroups - 允许 Bot 加入群组
/setprivacy - 设置隐私模式(Disable 可读取所有消息)将 Bot 添加到群组
配置群组白名单:
{
"channels": {
"telegram": {
"groupPolicy": "allowlist",
"allowedGroups": ["-1001234567890"]
}
}
}提示
群组 ID 通常是负数,以 -100 开头。
配置 @提及要求
要求用户必须 @Bot 才会响应:
{
"channels": {
"telegram": {
"requireMention": true
}
}
}配置命令前缀
设置特定前缀触发:
{
"channels": {
"telegram": {
"commandPrefix": "/"
}
}
}配置消息过滤
过滤特定类型的消息:
{
"channels": {
"telegram": {
"ignoreTypes": ["sticker", "animation"],
"ignoreCommands": ["/start", "/help"]
}
}
}使用技巧
1. 私聊使用
直接与 Bot 私聊,发送指令:
你好,介绍一下你自己
帮我总结一下今天的新闻2. 群组使用
在群组中 @Bot 发送指令:
@myopenclaw_bot 帮我分析一下这段代码
@myopenclaw_bot 查询今天的天气3. 使用命令
如果配置了命令列表:
/start - 开始对话
/help - 获取帮助
/status - 查看 Agent 状态4. 发送文件
可以直接发送文件给 Bot:
- 文档:Bot 可以分析文档内容
- 图片:Bot 可以识别图片内容
- 代码文件:Bot 可以审查代码
5. 语音消息
发送语音消息,Bot 会自动转文字并处理。
配对机制
OpenClaw 默认启用配对机制,保护隐私安全:
首次使用
- 向 Bot 发送消息
- Bot 会提示需要配对
- 查看配对请求:
openclaw pairing list- 批准配对:
openclaw pairing approve <user-id>自动配对
在配置中启用自动配对:
{
"pairing": {
"autoApprove": true,
"whitelist": ["123456789"]
}
}多 Agent 配置
为不同用户分配不同的 Agent:
{
"bindings": [
{
"agentId": "main",
"match": {
"channel": "telegram",
"userId": "123456789"
}
},
{
"agentId": "assistant",
"match": {
"channel": "telegram",
"userId": "987654321"
}
}
]
}常见问题
Q: Bot 不响应消息?
检查以下几点:
- Gateway 是否正在运行:
openclaw status - Bot Token 是否正确
- 是否在白名单中(如果启用了白名单)
- 查看日志:
openclaw logs --channel telegram
Q: 如何获取群组 ID?
- 将 Bot 添加到群组
- 在群组中发送消息
- 查看日志获取群组 ID
或使用 Telegram 的 @userinfobot 获取。
Q: Bot 在群组中不响应?
- 确认 Bot 有读取消息的权限
- 在 BotFather 中禁用隐私模式:
/setprivacy→Disable - 或者要求用户 @提及 Bot
Q: 如何删除 Bot?
在 BotFather 中发送:/deletebot
Q: 支持哪些消息类型?
- 文本消息
- 图片
- 文档
- 音频
- 视频
- 语音消息
- 位置信息
- 联系人
安全建议
- 使用白名单:生产环境务必启用白名单
- 启用配对:防止未授权访问
- 定期轮换 Token:提高安全性
- 监控日志:及时发现异常行为
- 限制权限:只授予必要的权限
性能优化
限流配置
防止消息过载:
{
"channels": {
"telegram": {
"rateLimit": {
"maxRequests": 10,
"windowMs": 60000
}
}
}
}消息队列
处理高并发消息:
{
"channels": {
"telegram": {
"queueSize": 100,
"concurrency": 5
}
}
}实战案例
案例 1:个人助手
配置为个人专属助手:
{
"channels": {
"telegram": {
"groupPolicy": "allowlist",
"allowedUsers": ["YOUR_USER_ID"],
"requireMention": false
}
}
}案例 2:团队协作
在团队群组中使用:
{
"channels": {
"telegram": {
"groupPolicy": "allowlist",
"allowedGroups": ["TEAM_GROUP_ID"],
"requireMention": true
}
}
}案例 3:客服机器人
配置为客服 Bot:
{
"channels": {
"telegram": {
"groupPolicy": "open",
"autoReply": true,
"transferToHuman": {
"keywords": ["人工", "客服"]
}
}
}
}