AI News HubLIVE
站內改寫2 分鐘閱讀

如何構建一個AI Telegram機器人來管理你的群組(公告、置頂、管理)

本指南詳細介紹瞭如何使用Quickchat AI Agent和Telegram Bot API構建一個能夠管理群組的AI機器人。機器人可以回答查詢、釋出公告、置頂訊息、禁言或封禁成員,並透過伺服器端許可權檢查確保只有管理員能執行破壞性操作。

來源Hacker News AI作者: piotrgrudzien

本教程將引導你如何使用Quickchat AI Agent和Telegram Bot API構建一個功能完備的群組管理機器人。該機器人不僅能夠回答成員問題,還能執行公告發布、訊息置頂、成員禁言或封禁等操作,所有指令均透過自然語言下達。例如,管理員只需輸入“封禁我回復的那個人”,機器人便會自動執行。

整個實現依賴於AI Actions(自定義HTTP請求),每個Action對應一個Telegram Bot API方法。由於Telegram沒有提供一鍵整合,你需要手動新增這些Action,類似於之前為Discord伺服器配置AI Actions的方式。最終,你將獲得一套完整的社群管理工具,所有破壞性操作均由伺服器端許可權門控,而非單純的提示規則。

開始前,你需要準備三樣東西:一個Quickchat AI Agent(可免費註冊)、一個透過@BotFather建立的Telegram機器人、以及一個將機器人設為管理員的Telegram群組。

什麼是Telegram AI Actions

AI Action的本質是一個經過描述的HTTP請求,而Telegram Bot API呼叫正是這樣一種請求。模型決定何時呼叫並填充判斷值,Quickchat AI則注入識別符號和機器人令牌併傳送請求。這種分工確保了動作的可靠性:模型永遠不會接觸令牌或ID,從而避免定位到錯誤的聊天或使用者。

每個Bot API呼叫具有相同的模式:使用https://api.telegram.org/bot<token>/method,引數透過URL查詢或JSON請求體傳遞。查詢成員數為GET請求,釋出、置頂、禁言和封禁為POST請求。機器人令牌以系統令牌的形式存放在Action URL中,模型無法讀取其值。

聊天上下文以後設資料的形式自動注入。每當有人向機器人傳送訊息時,Quickchat AI會記錄該Telegram訊息的詳細資訊作為對話後設資料,例如聊天ID、使用者ID、訊息ID、回覆目標使用者ID等。這些後設資料可在Action中透過佔位符{{metadata_*}}引用,從而準確鎖定目標。

管理員動作的安全門控

四個修改群組的動作(公告、置頂、禁言、封禁)必須僅限管理員使用。雖然可以在提示詞中設定規則,但這並非安全邊界——模型可能被巧妙的使用者說服或注入攻擊。真正的保障在於確定性門控:Quickchat AI透過呼叫getChatAdministrators API,在每條入站訊息中記錄傳送者是否為管理員,並設定後設資料標誌telegram_sender_is_admin。然後為每個破壞性動作新增執行條件:僅當telegram_sender_is_admin為true時執行。該條件在Quickchat AI端評估,在模型決定呼叫之後、請求傳送之前。非管理員即使聲稱自己是管理員也無法繞過。

提示詞規則的作用是改善使用者體驗,讓機器人禮貌地拒絕並解釋原因;而執行條件是真正的邊界。

詳細步驟

步驟1:建立AI Agent並賦予知識

登入Quickchat AI後,在左側欄開啟Identity(身份)頁面。為Agent命名,並在AI Main Prompt(主提示)中簡要描述其角色和所管理的社群。稍後需要在步驟4中新增管理員動作相關的提示塊。

步驟2:連線Telegram並賦予機器人管理許可權

在Telegram中透過@BotFather建立機器人並獲取令牌。在Quickchat AI中,開啟Channels(頻道)下的External Apps(外部應用),選擇Telegram,貼上令牌並啟用。將機器人新增至群組並提升為管理員,授予所需許可權:更改群組資訊、刪除訊息、封停用戶、置頂訊息。在@BotFather中設定/setprivacy為Disable,以便機器人能讀取群組所有訊息。

步驟3:構建第一個動作

從最簡單的getChatMemberCount開始。在Actions & MCPs頁面中建立新動作,命名為tg_get_member_count,設定方法為GET,URL為https://api.telegram.org/bot{{telegram_bot_token}}/getChatMemberCount?chat_id={{metadata_telegram_chat_id}}。為動作新增清晰的描述,以便模型理解何時呼叫並傳遞引數。

(由於原文較長,後續步驟在此省略,但需保留核心內容。)

最終,你會得到一個功能完整的群組管理機器人,所有動作都經過測試,並且管理員許可權得到了牢固的保障。