創建BOT,加入好友並取得token
打開Telegram搜尋:
@BotFather
加入好友後,輸入/start 會提供些指令讓你選擇。
- /start :用戶開始和機器人進行交互
- /help :返回幫助信息
- /setting :返回機器人的設置界面用戶在首次向機器人發信息之前會看到/start按鈕,在菜單中(機器人信息頁)可以看到幫助和設置鏈接。
創建BOT過程如下, 成功會返回一段訊息:
藍框: 用來加該機器人好友的,建議直接點擊加入,先成為好友。
紅框: 該bot的token,主要用來操控BOT,要記住!!
取得chat id
需要chat id,bot才知道要傳送訊息給哪個使用者或群組。
首先,加入Bot好友後,傳一個訊息給這支BOT,例如”testbot”,發送成功後打開瀏覽器輸入
https://api.telegram.org/bot{token}/getUpdates
範例:
https://api.telegram.org/bot5630000628:AAH2XXXXXXXXXXXXXXXXXXXXXXXXXXXXn2zo/getUpdates
會看到json資料,從裡面我們可以得到chat_id,建議先利用這網站把Json轉成可讀性高一點
JSON格式化
轉成功後再貼在記事本,搜尋剛剛傳給bot的訊息:testbot
會看到有一段,像下圖的訊息
取得那段數字就好。
使用程式發送訊息
把chat id和token帶入下方的const內。
並開啟終端機輸入:go get -u github.com/go-telegram-bot-api/telegram-bot-api
package main
import (
"fmt"
tgbotapi "github.com/go-telegram-bot-api/telegram-bot-api"
"log"
)
var bot *tgbotapi.BotAPI
const (
chatID = 1234567 //要傳送訊息給指定用戶
youToken = "5630000628:AAH2XXXXXXXXXXXXXXXXXXXXXXXXXXXXn2zo"
)
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")
}
}
使用程式運行發送後就會收到 google 連結的的訊息了