Telegram 推送通知配置指南

配置原理與介面結構

Telegram 訊息推送基於 Telegram Bot API 實現。完整的推送 URL 由 Bot Token(機器人存取金鑰)Chat ID(接收端唯一識別碼) 拼接而成。

標準拼接範本:

[https://api.telegram.org/bot](https://api.telegram.org/bot)<TOKEN>/sendMessage?chat_id=<CHAT_ID>

取得步驟

步驟 1:建立機器人並取得 Bot Token

  1. 開啟 Telegram,在搜尋欄輸入並追蹤官方機器人 @BotFather
  2. @BotFather 傳送指令:/newbot
  3. 依照提示依序輸入:
    • Bot Name:機器人的顯示名稱(例如:通知助手)。
    • Bot Username:機器人的唯一使用者名稱(必須以 bot 結尾,例如:my_notice_bot)。
  4. 建立成功後,@BotFather 將輸出 API 存取憑證。複製 HTTP API Token 字串(格式如 123456789:ABCdefGhIJKlmNoPQRsTUVwxyZ)。

步驟 2:取得接收端 Chat ID

根據訊息接收對象類型(個人或群組),選擇對應的取得方式:

方案 A:個人接收通知

  • 方法一:透過官方查詢機器人(推薦)
    1. 在 Telegram 中搜尋並追蹤 @userinfobot
    2. 向其傳送任意訊息或點選 /start
    3. 機器人將返回個人帳號中繼資料,其中 Id 後方的純數字即為您的個人 Chat ID(例如:987654321)。
  • 方法二:透過 API 介面查詢
    1. 主動向您剛建立的機器人傳送一則訊息(例如:hello)以啟用對話。
    2. 開啟瀏覽器,造訪以下連結(將 <TOKEN> 替換為步驟 1 取得的憑證):
       [https://api.telegram.org/bot](https://api.telegram.org/bot)<TOKEN>/getUpdates
    3. 在返回的 JSON 回應中,擷取 "result" -> "message" -> "chat" -> "id" 的數值。

方案 B:群組/頻道接收通知

  1. 將新建立的機器人加入目標 Telegram 群組。
  2. 在群組內傳送一則任意訊息(例如:test),或授予機器人管理員權限。
  3. 在瀏覽器中造訪以下連結(將 <TOKEN> 替換為步驟 1 取得的憑證):
     [https://api.telegram.org/bot](https://api.telegram.org/bot)<TOKEN>/getUpdates
  4. 在返回的 JSON 回應中,找到包含對應群組名稱的記錄,擷取 "chat" -> "id" 欄位。

    注意:群組的 Chat ID 通常為以 --100 開頭的負數(例如:-100123456780),拼接時必須完整保留負號及前綴。


三、URL 拼接範例

取得 <TOKEN><CHAT_ID> 後,請將其代入標準範本中進行替換:

1. 個人通知 URL 範例

  • Token: 8832838494:AAGb7ReOvyhcbkh03uXMN01nkSNBW9LuL6t
  • Chat ID: 987654321
  • 最終拼接結果
    [https://api.telegram.org/bot8832838494:AAGb7ReOvyhcbkh03uXMN01nkSNBW9LuL6t/sendMessage?chat_id=987654321](https://api.telegram.org/bot8832838494:AAGb7ReOvyhcbkh03uXMN01nkSNBW9LuL6t/sendMessage?chat_id=987654321)

2. 群組通知 URL 範例

  • Token: 8832838494:AAGb7ReOvyhcbkh03uXMN01nkSNBW9LuL6t
  • Chat ID: -7
  • 最終拼接結果
    [https://api.telegram.org/bot8832838494:AAGb7ReOvyhcbkh03uXMN01nkSNBW9LuL6t/sendMessage?chat_id=-100123456780](https://api.telegram.org/bot8832838494:AAGb7ReOvyhcbkh03uXMN01nkSNBW9LuL6t/sendMessage?chat_id=-100123456780)