Telegram 集成¶
ZeroClaw 支持 Telegram Bot 集成,提供即时通讯界面。
快速开始¶
1. 创建 Telegram Bot¶
- 在 Telegram 中搜索 @BotFather
- 发送
/newbot - 按照提示创建机器人
- 保存 API Token
2. 配置 ZeroClaw¶
3. 配置文件¶
[channels_config.telegram]
bot_token = "1234567890:ABCDEF..."
# 允许的用户(推荐)
allowed_users = ["your_username"]
# 或允许所有用户(仅测试)
# allowed_users = ["*"]
4. 启动网关¶
用户白名单¶
推荐配置(安全)¶
获取用户信息¶
- 启动网关
- 在 Telegram 中发送任何消息给机器人
- 查看日志中的警告:
- 将用户 ID 添加到
allowed_users
配置格式¶
| 格式 | 示例 | 说明 |
|---|---|---|
| 用户名 | @username | 去掉 @ 符号 |
| 用户 ID | 123456789 | 数值 ID |
| 通配符 | * | 允许所有人(不推荐) |
白名单策略¶
# 空列表 = 拒绝所有人
allowed_users = []
# 通配符 = 允许所有人(仅测试)
allowed_users = ["*"]
# 指定用户 = 只允许这些用户
allowed_users = ["username1", "123456789"]
媒体回复¶
ZeroClaw 支持在 Telegram 中发送多种媒体:
上传文件¶
# AI 助手包含以下标记时会上传文件
[IMAGE:/tmp/screenshot.png]
[DOCUMENT:/tmp/report.pdf]
[VIDEO:/tmp/demo.mp4]
[AUDIO:/tmp/message.mp3]
[VOICE:/tmp/voice.ogg]
下载文件¶
高级功能¶
自定义命令¶
[channels_config.telegram]
# 自定义命令前缀(可选)
command_prefix = "/"
# 禁用特定命令
disabled_commands = ["help", "status"]
机器人设置¶
测试集成¶
故障排查¶
消息不回复¶
- 检查用户是否在白名单
- 检查 Bot Token 是否正确
- 查看日志中的错误消息
- 测试网关:
zeroclaw channel doctor telegram
Bot 无响应¶
# 检查网关状态
curl http://localhost:8080/health
# 检查 Telegram API
curl https://api.telegram.org/bot<TOKEN>/getMe
配置问题¶
安全最佳实践¶
1. 使用白名单¶
2. 启用配对¶
3. 使用环境变量¶
4. 定期更新¶
示例对话¶
User: 你好,ZeroClaw!
Bot: 您好!我是 ZeroClaw,很高兴为您服务!
User: 帮我写一个 Python 函数
Bot: 好的,这是您的 Python 函数示例...
User: 运行一下这个代码
Bot: [正在执行...]
输出:Hello, World!