1
0
telegram/send_media_group.go

46 lines
1.3 KiB
Go
Raw Normal View History

2017-12-14 07:33:44 +00:00
package telegram
import json "github.com/pquerna/ffjson/ffjson"
2017-12-14 07:33:44 +00:00
2018-04-19 13:02:15 +00:00
// SendMediaGroupParameters represents data for SendMediaGroup method.
type SendMediaGroupParameters struct {
// Unique identifier for the target chat.
ChatID int64 `json:"chat_id"`
2017-12-14 07:33:44 +00:00
// A JSON-serialized array describing photos and videos to be sent, must
// include 210 items
Media []interface{} `json:"media"`
// Sends the messages silently. Users will receive a notification with no
// sound.
DisableNotification bool `json:"disable_notification,omitempty"`
// If the messages are a reply, ID of the original message
ReplyToMessageID int `json:"reply_to_message_id,omitempty"`
}
2017-12-14 07:33:44 +00:00
2018-04-19 13:02:15 +00:00
// NewMediaGroup creates SendMediaGroupParameters only with required parameters.
func NewMediaGroup(chatID int64, media ...interface{}) *SendMediaGroupParameters {
return &SendMediaGroupParameters{
ChatID: chatID,
Media: media,
2017-12-14 07:33:44 +00:00
}
}
2017-12-14 07:33:44 +00:00
// SendMediaGroup send a group of photos or videos as an album. On success, an array of the sent
// Messages is returned.
2018-08-21 11:05:04 +00:00
func (bot *Bot) SendMediaGroup(params *SendMediaGroupParameters) (album []Message, err error) {
dst, err := json.Marshal(params)
2017-12-14 07:33:44 +00:00
if err != nil {
2018-08-21 11:05:04 +00:00
return
2017-12-14 07:33:44 +00:00
}
2018-04-12 11:58:05 +00:00
resp, err := bot.request(dst, MethodSendMediaGroup)
2017-12-14 07:33:44 +00:00
if err != nil {
2018-08-21 11:05:04 +00:00
return
2017-12-14 07:33:44 +00:00
}
2018-08-21 11:05:04 +00:00
err = json.Unmarshal(*resp.Result, &album)
return
2017-12-14 07:33:44 +00:00
}