OpenClaw Telegram 頻道
透過 grammY Bot API 框架將 OpenClaw 連接至 Telegram。使用 @BotFather 建立 Telegram 機器人,取得 token,幾分鐘內就能讓 AI 助手在 Telegram 上執行。預設使用長輪詢模式,可選 Webhook 模式。這是最容易設定的頻道之一,支援內嵌按鈕、貼圖、表情回應和群組聊天等豐富功能。
Telegram 支援功能
文字訊息
支援
媒體與檔案
支援
表情回應
支援
討論串
支援
語音訊息
支援
群組聊天
支援
Telegram 前置條件
- 一個 Telegram 帳號
- 透過 @BotFather 取得的 Bot Token(向 @BotFather 傳送 /newbot)
- OpenClaw Gateway 已執行並設定完成
- 伺服器安裝 Node.js 18+
Telegram 快速設定
透過 @BotFather 建立機器人
開啟 Telegram,搜尋 @BotFather,傳送 /newbot。按提示為機器人命名並取得 API token。妥善保存此 token——設定時需要用到。
新增 Telegram 頻道設定
在 ~/.openclaw/openclaw.json 中新增 Telegram 頻道設定。將 @BotFather 提供的 bot token 貼到 botToken 欄位。設定 dmPolicy(pairing、allowlist 或 open)來控制誰可以與您的 AI 助手對話。
啟動 Gateway 並測試
啟動 Gateway 程序。在 Telegram 中搜尋您的機器人並傳送訊息。如果使用預設的 pairing 策略,透過 'openclaw pairing approve telegram <code>' 審批發送者。OpenClaw 應透過 AI 助手自動回覆。
Telegram 設定範例
{
"channels": {
"telegram": {
"enabled": true,
"botToken": "YOUR_BOT_TOKEN_FROM_BOTFATHER",
"dmPolicy": "pairing"
}
}
}Telegram 深入了解
架構概述
透過 @BotFather 建立機器人
私訊策略
{
"channels": {
"telegram": {
"dmPolicy": "pairing",
"allowFrom": [123456789, 987654321]
}
}
}群組聊天管理
{
"channels": {
"telegram": {
"groupPolicy": "open",
"requireMention": false,
"groups": ["-1001234567890"]
}
}
}訊息格式與串流傳輸
{
"channels": {
"telegram": {
"streamMode": "partial",
"chunkMode": "newline"
}
}
}內嵌按鈕
{
"channels": {
"telegram": {
"capabilities": {
"inlineButtons": "all"
}
}
}
}貼圖與媒體
表情回應
{
"channels": {
"telegram": {
"reactionNotifications": "own",
"reactionLevel": "ack"
}
}
}指令與工具
Webhook 模式
{
"channels": {
"telegram": {
"webhookUrl": "https://your-domain.com/telegram/webhook",
"webhookSecret": "your-random-secret-string"
}
}
}Telegram 設定參考
| Key | Type | Default | Description |
|---|---|---|---|
| enabled | boolean | true | 啟用或停用 Telegram 頻道 |
| botToken | string | "" | 來自 @BotFather 的 Telegram Bot API token。也可使用 TELEGRAM_BOT_TOKEN 環境變數 |
| dmPolicy | string | "pairing" | 控制誰可以私訊機器人。選項:pairing、allowlist、open |
| allowFrom | number[] | [] | 允許與機器人對話的 Telegram 數字使用者 ID(當 dmPolicy 為 allowlist 時) |
| groupPolicy | string | "disabled" | 群組聊天策略。選項:disabled、open、allowlist |
| groups | string[] | [] | 允許的群組聊天 ID 清單。為空且 groupPolicy 非 disabled 時允許所有群組 |
| requireMention | boolean | true | 機器人在群組中是否需要 @提及 才回覆 |
| streamMode | string | "partial" | AI 回覆的串流模式。選項:partial(逐步更新)、block(分塊傳送) |
| chunkMode | string | "split" | 長回覆的處理方式。選項:split(硬字元限制)、newline(按段落分割) |
| webhookUrl | string | "" | Webhook 模式的 HTTPS URL。設定後從輪詢切換為 Webhook |
| webhookSecret | string | "" | Webhook 驗證的密鑰 token |
| reactionNotifications | string | "off" | 哪些回應觸發通知。選項:off、own、all |
| reactionLevel | string | "ack" | 機器人的回應能力。選項:off、ack、minimal、extensive |
| capabilities.inlineButtons | string | "off" | 內嵌按鈕模式。選項:off、dm、group、all、allowlist |
| configWrites | boolean | true | 超級群組升級時自動遷移聊天 ID。設為 false 可停用 |
啟用或停用 Telegram 頻道
來自 @BotFather 的 Telegram Bot API token。也可使用 TELEGRAM_BOT_TOKEN 環境變數
控制誰可以私訊機器人。選項:pairing、allowlist、open
允許與機器人對話的 Telegram 數字使用者 ID(當 dmPolicy 為 allowlist 時)
群組聊天策略。選項:disabled、open、allowlist
允許的群組聊天 ID 清單。為空且 groupPolicy 非 disabled 時允許所有群組
機器人在群組中是否需要 @提及 才回覆
AI 回覆的串流模式。選項:partial(逐步更新)、block(分塊傳送)
長回覆的處理方式。選項:split(硬字元限制)、newline(按段落分割)
Webhook 模式的 HTTPS URL。設定後從輪詢切換為 Webhook
Webhook 驗證的密鑰 token
哪些回應觸發通知。選項:off、own、all
機器人的回應能力。選項:off、ack、minimal、extensive
內嵌按鈕模式。選項:off、dm、group、all、allowlist
超級群組升級時自動遷移聊天 ID。設為 false 可停用
Telegram 常見問題
Telegram 故障排除
Telegram 機器人預設啟用隱私模式。啟用時,機器人只能接收 @提及 它的訊息或以斜線指令開頭的訊息。
bot token 可能不正確,Gateway 可能未執行,或存在網路連線問題。
Webhook URL 不可公開存取,SSL 憑證無效,或 Webhook 未正確註冊。
Telegram 有 4,096 字元的訊息限制。較長的 AI 回覆會被自動分塊。