add getStickerSet call
Daniel Leining daniel@leining.org
Wed, 29 Jan 2020 22:58:02 -0500
3 files changed,
42 insertions(+),
0 deletions(-)
M
bot.go
→
bot.go
@@ -974,3 +974,22 @@ bot.debugLog(config.method(), v, nil)
return bot.MakeRequest(config.method(), v) } + +// GetStickerSet get a sticker set. +func (bot *BotAPI) GetStickerSet(config GetStickerSetConfig) (StickerSet, error) { + v, err := config.values() + if err != nil { + return StickerSet{}, err + } + bot.debugLog(config.method(), v, nil) + res, err := bot.MakeRequest(config.method(), v) + if err != nil { + return StickerSet{}, err + } + stickerSet := StickerSet{} + err = json.Unmarshal(res.Result, &stickerSet) + if err != nil { + return StickerSet{}, err + } + return stickerSet, nil +}
M
configs.go
→
configs.go
@@ -1262,3 +1262,18 @@ v.Add("chat_id", strconv.FormatInt(config.ChatID, 10))
return v, nil } + +// GetStickerSetConfig contains information for get sticker set. +type GetStickerSetConfig struct { + Name string +} + +func (config GetStickerSetConfig) method() string { + return "getStickerSet" +} + +func (config GetStickerSetConfig) values() (url.Values, error) { + v := url.Values{} + v.Add("name", config.Name) + return v, nil +}
M
types.go
→
types.go
@@ -348,6 +348,14 @@ SetName string `json:"set_name"` // optional
IsAnimated bool `json:"is_animated"` // optional } +type StickerSet struct { + Name string `json:"name"` + Title string `json:"title"` + IsAnimated bool `json:"is_animated"` + ContainsMasks bool `json:"contains_masks"` + Stickers []Sticker `json:"stickers"` +} + // ChatAnimation contains information about an animation. type ChatAnimation struct { FileID string `json:"file_id"`