Telegram機器人進階應用,利用頻道網管告警紀錄簿

 4,108 total views,  5 views today

還在使用過時的簡訊,或是email通知你電腦設備狀態嗎?最近很火紅的Telegram有個【頻道】功能,有點像是收音機廣播電台,被動接收頻道主的推送訊息,今天因為 TDC 說可以把 telegram 機器人,加入到頻道,做系統資源監控、即時告警等功能,終於實作出來了。

這次透過curl來呼叫telegramAPI,叫醒機器人,發送訊息到頻道,這樣就能隨時知道想要的資訊,更人性化的管理資訊設備。

程式碼放在github 

https://github.com/eric2100/TelegramSendMessage

#!/bin/bash
if [ -z "$1" ]; then
  echo No argument given 
  exit
fi

TOKEN=<TOKEN>
CHAT_ID=<CHAT_ID>
Message=$1
FilePath=$2

CMD1="https://api.telegram.org/bot$TOKEN/sendMessage"
CMD2="https://api.telegram.org/bot$TOKEN/sendDocument"

curl -s -X POST $CMD1 -d chat_id=$CHAT_ID -d text="$Message" >/dev/null 2>&1

if [ -n "$FilePath" ]; then
  curl $CMD2 -F chat_id=$CHAT_ID -F [email protected]"$FilePath" >/dev/null 2>&1
fi

設定相關的設定,機器人 <TOKEN> 換成你機器人的,<CHAT_ID>是想要傳送的使用者ID,頻道的話是 -100 開頭的。

單純傳送文字的用法

./SendMsg Hello

傳送文字與檔案

./SendMsg Hello /tmp/a.txt

設定之後,就能做很多的應用了,例如記憶體不夠發通知,資料庫備份完成發通知等等的。

發表迴響

%d 位部落客按了讚: