$cd ../tutorials/
popularchannels15 min read • March 2026
$ cat telegram-setup.md
export TelegramSetup
/** 创建您自己的由自托管 OpenClaw 驱动的 Telegram AI 机器人 */
// 为什么选 Telegram 而非 WhatsApp?
• 官方 Bot API — 免费,无需非官方网关
• 语音消息 — OpenClaw 自动转录
• 图片与文件支持 — 发送收据、文档、照片进行分析
• 无封号风险 — 官方集成,而非变通方案
• 内联按钮 — 更丰富的交互式回复
table-of-contents.ts
section_01_botfather.md
## 🤖 通过 BotFather 创建 Bot
步骤 1:打开 BotFather
在 Telegram 中搜索 @BotFather(带蓝色认证标记的那个),点击 /start。
步骤 2:创建新 Bot
发送 /newbot。BotFather 会要求填写名称和用户名(必须以 bot 结尾)。示例:MyOpenClawBot。
步骤 3:保存 Bot Token
BotFather 会给您一个 Token。请妥善保存 — 这是您 Bot 的密钥。
7123456789:AAHdqTcvCH1vGWJxfSeofSAs0K5PALDsaw
section_02_user_id.md
## 🪪 获取您的 Telegram 用户 ID
用户 ID 是标识您身份的唯一数字。OpenClaw 使用它将 Bot 访问权限限制为仅您。
1. 在 Telegram 中发消息给 @userinfobot。
2. 它会回复您的信息。记录您的 Id:
Id: 123456789
First: John
Username: @johndoe
section_03_config.yaml
## ⚙️ 配置 OpenClaw
在 OpenClaw 配置文件中添加 Telegram 频道:
# openclaw/config.yaml
channels:
telegram:
enabled: true
bot_token: "YOUR_BOT_TOKEN"
allowed_user_ids:
- 123456789 # Your Telegram user ID
enable_voice: true
enable_vision: true
Restart OpenClaw:
docker restart openclawsection_04_webhook.sh
## 🔗 设置 Webhook
Telegram 需要知道将消息发送到哪里。如果您的服务器可公开访问(带域名的 VPS 或 Tailscale),使用 Webhook 方法可实现零延迟:
# Replace with your actual bot token and server URL
$ curl -X POST \
"https://api.telegram.org/botYOUR_BOT_TOKEN/setWebhook" \
-d "url=https://your-server.com/telegram/webhook"
// response: {"ok":true,"result":true,"description":"Webhook was set"}
// 💡 没有公网 URL 在本地运行?没问题。OpenClaw 会自动回退到轮询模式 — 本地配置无需 Webhook。
section_05_voice_vision.md
## 🎙️ 启用语音和视觉
这正是 Telegram 相比其他频道的闪光点。OpenClaw 可以听和看。
语音消息
发送语音笔记 → OpenClaw 使用 Whisper(本地或 API)转录 → 以文字回复。需要 enable_voice: true,最好使用本地 Whisper 模型以保护隐私。
图像和视觉
发送收据、白板或文档的照片 → OpenClaw 使用您配置的视觉模型(GPT-4o、Claude 或本地 LLaVA)分析。
文件分析
发送 PDF、CSV 或文本文件。Telegram Bot 支持最高 2GB 的文件上传(内联 20MB)。对于大文件,请挂载共享目录。
section_06_test.md
## 🧪 测试您的 Bot
在 Telegram 中搜索您的 Bot 用户名,发送一些测试消息:
You → /start
Bot → 🦞 OpenClaw online. How can I help?
You → Summarize the top HackerNews posts today
Bot → Fetching... Here are today's top 5 stories on HN:
1. "Llama 4 released with 400B parameters..."
2. "Why Rust won the systems programming war..."
...
通过 BotFather(/setcommands)设置的有用 Bot 命令:
/status — 检查 OpenClaw 状态/memory — 查看对话记忆/clear — 清除上下文/model — 切换 AI 模型