我正在寫一個小的 go bot。我使用了這個庫https://pkg.go.dev/github.com/go-telegram-bot-api/telegram-bot-api/[email protected]雖然它是版本 4,但是發送貼紙時一切正常以下代碼有效:bot.Send(tgbotapi.NewStickerShare(update.Message.Chat.ID, "hereIsTheIDOfTheSticker"))但是當我決定升級到版本 5 時,貼紙壞了?,F在我不知道如何發送它們。有人可以幫忙解決這個問題嗎?
1 回答
大話西游666
TA貢獻1817條經驗 獲得超14個贊
我認為圖書館使用它的方式已經改變。
該功能NewStickerShare不再存在。相反,您需要使用名為的新函數NewSticker:
該
NewSticker函數接受兩個參數:聊天ID
int64如您所見,該
RequestFileData接口具有以下協定:
type RequestFileData interface {
NeedsUpload() bool
UploadData() (string, io.Reader, error)
SendData() string}我們需要為您的 Sticker 實施此合同,或者找到圖書館已經實施的結構。可能庫為我們提供了一些東西,我們現在有了
FileID實現這些方法的結構。
由此,一旦你想發送貼紙的 ID,你需要開發這樣的東西:
stickerID := tgbotapi.FileID("hereIsTheIDOfTheSticker")
msg := tgbotapi.NewSticker(update.Message.Chat.ID, stickerID)
bot.Send(msg)如果你需要更多的結構來實現RequestFileData契約,圖書館提供了其中的一些:FilePath,FileReader......每個都有你自己的目標。
我希望它可以幫助你 :)
- 1 回答
- 0 關注
- 172 瀏覽
添加回答
舉報
0/150
提交
取消
