這不是 Telegram Bot API 機器人。請勿用於垃圾訊息、批量冷發或繞過 Telegram 限制。向第三方傳送、編輯或刪除內容前,應由你的 Agent 取得明確確認。
部署與登入
- 在控制台 → 應用程式建立 Telegram 帳號代理,開通訂閱後點擊部署。實例資源由平台自動設定。
- 實例就緒後點擊「產生登入 QR Code」。QR Code 短期有效,過期後可重新產生。
- 在 Telegram 開啟設定 → 裝置 → 連結桌面裝置並掃描 QR Code。
- 如果狀態變為
password_required,在控制台輸入 Telegram 兩步驟驗證密碼。密碼只提交到你的租戶實例,不會寫入平台設定。 - 狀態變為
authenticated後,控制台顯示目前帳號、MCP 位址和 Bearer 存取權杖。
/api/auth/logout 撤銷 Telegram 工作階段;「銷毀實例」還會刪除工作負載與持久磁碟區。
驗證與健康檢查
除/health 和 /readyz 外,登入、REST 與 MCP 介面都要求:
/health 只表示 HTTP 程序存活:
/readyz 表示 MTProto 連線是否可用。已連線時回傳 HTTP 200,即使帳號仍在掃碼或等待兩步驟驗證:
login_state 常見值包括 login_required、waiting_scan、password_required、authenticated;進行帳號訊息操作前仍需達到 authenticated。
連線 MCP 用戶端
Claude Code
Cursor 等支援靜態請求標頭的用戶端
依用戶端目前文件設定 Streamable HTTP 位址,並新增Authorization 請求標頭。例如支援下列結構的用戶端可使用:
claude_desktop_config.json 中的任何 HTTP 請求標頭;目前如需靜態 Bearer 請求標頭,請使用 Claude Code 或明確支援該能力的用戶端。
MCP 工具
target 可以是交談 ID、使用者名稱或精確交談名稱;名稱有歧義時優先使用 ID 或使用者名稱。
REST API
所有成功回應使用{"data": ...},失敗回應使用 {"error": "..."}。
範例
完整介面
常見問題
- 401:Bearer 權杖缺失或錯誤。確認權杖放在請求標頭,不是 URL 查詢參數。
- 503:代理存取權杖未設定,或 Telegram 用戶端尚未就緒。先檢查
/readyz;若代理存取權杖未設定,受保護介面也會回傳 503。 - 400:參數或 JSON 無效;搜尋必須提供
q,limit必須是大於等於 1 的整數。 - 403 / 404:目前帳號沒有權限,或 target / message ID 不存在。
- 429:觸發 Telegram 頻率限制。讀取
retry_after並等待,不要並行重試。 - QR Code 一直未完成:重新產生 QR Code,並確認使用的是 Telegram「連結桌面裝置」掃碼入口。
- 重新啟動後要求重新登入:檢查執行個體持久性磁碟區是否正常;主動登出、在 Telegram 裝置列表撤銷工作階段或工作階段失效後需要重新掃碼。
驗證範圍
原始碼和自動化測試涵蓋登入狀態、Bearer fail-close、REST 參數驗證、錯誤對應與工作階段持久化實作。生產使用仍應先在target=me(Saved Messages)完成唯讀與訊息建立/編輯/刪除 smoke,再允許 Agent 操作第三方工作階段。
