summaryrefslogtreecommitdiffstats
path: root/vendor/github.com/bwmarrin/discordgo/message.go
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/github.com/bwmarrin/discordgo/message.go')
-rw-r--r--vendor/github.com/bwmarrin/discordgo/message.go100
1 files changed, 75 insertions, 25 deletions
diff --git a/vendor/github.com/bwmarrin/discordgo/message.go b/vendor/github.com/bwmarrin/discordgo/message.go
index 8966c161..d7abda60 100644
--- a/vendor/github.com/bwmarrin/discordgo/message.go
+++ b/vendor/github.com/bwmarrin/discordgo/message.go
@@ -19,8 +19,8 @@ type Message struct {
ID string `json:"id"`
ChannelID string `json:"channel_id"`
Content string `json:"content"`
- Timestamp string `json:"timestamp"`
- EditedTimestamp string `json:"edited_timestamp"`
+ Timestamp Timestamp `json:"timestamp"`
+ EditedTimestamp Timestamp `json:"edited_timestamp"`
MentionRoles []string `json:"mention_roles"`
Tts bool `json:"tts"`
MentionEveryone bool `json:"mention_everyone"`
@@ -28,6 +28,7 @@ type Message struct {
Attachments []*MessageAttachment `json:"attachments"`
Embeds []*MessageEmbed `json:"embeds"`
Mentions []*User `json:"mentions"`
+ Reactions []*MessageReactions `json:"reactions"`
}
// A MessageAttachment stores data for message attachments.
@@ -41,31 +42,80 @@ type MessageAttachment struct {
Size int `json:"size"`
}
+// MessageEmbedFooter is a part of a MessageEmbed struct.
+type MessageEmbedFooter struct {
+ Text string `json:"text,omitempty"`
+ IconURL string `json:"icon_url,omitempty"`
+ ProxyIconURL string `json:"proxy_icon_url,omitempty"`
+}
+
+// MessageEmbedImage is a part of a MessageEmbed struct.
+type MessageEmbedImage struct {
+ URL string `json:"url,omitempty"`
+ ProxyURL string `json:"proxy_url,omitempty"`
+ Width int `json:"width,omitempty"`
+ Height int `json:"height,omitempty"`
+}
+
+// MessageEmbedThumbnail is a part of a MessageEmbed struct.
+type MessageEmbedThumbnail struct {
+ URL string `json:"url,omitempty"`
+ ProxyURL string `json:"proxy_url,omitempty"`
+ Width int `json:"width,omitempty"`
+ Height int `json:"height,omitempty"`
+}
+
+// MessageEmbedVideo is a part of a MessageEmbed struct.
+type MessageEmbedVideo struct {
+ URL string `json:"url,omitempty"`
+ ProxyURL string `json:"proxy_url,omitempty"`
+ Width int `json:"width,omitempty"`
+ Height int `json:"height,omitempty"`
+}
+
+// MessageEmbedProvider is a part of a MessageEmbed struct.
+type MessageEmbedProvider struct {
+ URL string `json:"url,omitempty"`
+ Name string `json:"name,omitempty"`
+}
+
+// MessageEmbedAuthor is a part of a MessageEmbed struct.
+type MessageEmbedAuthor struct {
+ URL string `json:"url,omitempty"`
+ Name string `json:"name,omitempty"`
+ IconURL string `json:"icon_url,omitempty"`
+ ProxyIconURL string `json:"proxy_icon_url,omitempty"`
+}
+
+// MessageEmbedField is a part of a MessageEmbed struct.
+type MessageEmbedField struct {
+ Name string `json:"name,omitempty"`
+ Value string `json:"value,omitempty"`
+ Inline bool `json:"inline,omitempty"`
+}
+
// An MessageEmbed stores data for message embeds.
type MessageEmbed struct {
- URL string `json:"url"`
- Type string `json:"type"`
- Title string `json:"title"`
- Description string `json:"description"`
- Thumbnail *struct {
- URL string `json:"url"`
- ProxyURL string `json:"proxy_url"`
- Width int `json:"width"`
- Height int `json:"height"`
- } `json:"thumbnail"`
- Provider *struct {
- URL string `json:"url"`
- Name string `json:"name"`
- } `json:"provider"`
- Author *struct {
- URL string `json:"url"`
- Name string `json:"name"`
- } `json:"author"`
- Video *struct {
- URL string `json:"url"`
- Width int `json:"width"`
- Height int `json:"height"`
- } `json:"video"`
+ URL string `json:"url,omitempty"`
+ Type string `json:"type,omitempty"`
+ Title string `json:"title,omitempty"`
+ Description string `json:"description,omitempty"`
+ Timestamp string `json:"timestamp,omitempty"`
+ Color int `json:"color,omitempty"`
+ Footer *MessageEmbedFooter `json:"footer,omitempty"`
+ Image *MessageEmbedImage `json:"image,omitempty"`
+ Thumbnail *MessageEmbedThumbnail `json:"thumbnail,omitempty"`
+ Video *MessageEmbedVideo `json:"video,omitempty"`
+ Provider *MessageEmbedProvider `json:"provider,omitempty"`
+ Author *MessageEmbedAuthor `json:"author,omitempty"`
+ Fields []*MessageEmbedField `json:"fields,omitempty"`
+}
+
+// MessageReactions holds a reactions object for a message.
+type MessageReactions struct {
+ Count int `json:"count"`
+ Me bool `json:"me"`
+ Emoji *Emoji `json:"emoji"`
}
// ContentWithMentionsReplaced will replace all @<id> mentions with the