iT邦幫忙

第 12 屆 iThome 鐵人賽

DAY 10
0
DevOps

微服務系統建置與監控系列 第 10

Day10 用GO建立telegram bot

在上一個篇章我們有介紹telegram,並教學如何獲得token和chat_id,接下本篇會實際用go語言結合bot來傳送訊息。

使用套件tgbotapi

go get -u github.com/go-telegram-bot-api/telegram-bot-api

取得套件後,可以開始寫code


var bot *tgbotapi.BotAPI

const (
	chatID   = 12345679    //要傳送訊息給指定用戶
	youToken = "12345678:AFRJOSDPOLLMNHJ"
)

func main() {
	var err error
	bot, err = tgbotapi.NewBotAPI(youToken)
	if err != nil {
		log.Fatal(err)
	}
	bot.Debug = false

	link := fmt.Sprintf(`<a href="%s">[google]</a>`, "https://www.google.com.tw/")
	sendMsg(link)
}

func sendMsg(msg string) {
	NewMsg := tgbotapi.NewMessage(chatID, msg)
	NewMsg.ParseMode = tgbotapi.ModeHTML   //傳送html格式的訊息
	_, err := bot.Send(NewMsg)
	if err == nil {
		log.Printf("Send telegram message success")
	} else {
		log.Printf("Send telegram message error")
	}
}

執行完程式,就可以看到傳送回來的訊息內容
https://ithelp.ithome.com.tw/upload/images/20200915/20129762DBhLVtn5Pz.png

小結

使用telegram的套件,我們輕易的就能傳送訊息,訊息格式支援 Markdown 和 HTML。接下來的挑戰我們會使用telegram bot來傳送純文字訊息,而telegram還提供了其它豐富的訊息格式,但本次挑戰中並不會應用到,所以就不在多做介紹,有興趣的人可以自行研究。


上一篇
Day9 Telegram Bot
下一篇
Day11 認識Docker
系列文
微服務系統建置與監控30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言