Implement Clone for all events
This commit is contained in:
parent
ca9f7f6c11
commit
7d17a1c976
|
@ -2,7 +2,7 @@ use serde::{Deserialize, Serialize};
|
||||||
|
|
||||||
use crate::types::{GuildApplicationCommandPermissions, WebSocketEvent};
|
use crate::types::{GuildApplicationCommandPermissions, WebSocketEvent};
|
||||||
|
|
||||||
#[derive(Debug, Deserialize, Serialize, Default)]
|
#[derive(Debug, Deserialize, Serialize, Default, Clone)]
|
||||||
/// See https://discord.com/developers/docs/topics/gateway-events#application-command-permissions-update
|
/// See https://discord.com/developers/docs/topics/gateway-events#application-command-permissions-update
|
||||||
pub struct ApplicationCommandPermissionsUpdate {
|
pub struct ApplicationCommandPermissionsUpdate {
|
||||||
#[serde(flatten)]
|
#[serde(flatten)]
|
||||||
|
|
|
@ -5,7 +5,7 @@ use crate::types::{
|
||||||
WebSocketEvent,
|
WebSocketEvent,
|
||||||
};
|
};
|
||||||
|
|
||||||
#[derive(Debug, Deserialize, Serialize, Default)]
|
#[derive(Debug, Deserialize, Serialize, Default, Clone)]
|
||||||
/// See https://discord.com/developers/docs/topics/gateway-events#auto-moderation-rule-create
|
/// See https://discord.com/developers/docs/topics/gateway-events#auto-moderation-rule-create
|
||||||
pub struct AutoModerationRuleCreate {
|
pub struct AutoModerationRuleCreate {
|
||||||
#[serde(flatten)]
|
#[serde(flatten)]
|
||||||
|
@ -14,7 +14,7 @@ pub struct AutoModerationRuleCreate {
|
||||||
|
|
||||||
impl WebSocketEvent for AutoModerationRuleCreate {}
|
impl WebSocketEvent for AutoModerationRuleCreate {}
|
||||||
|
|
||||||
#[derive(Debug, Deserialize, Serialize, Default)]
|
#[derive(Debug, Deserialize, Serialize, Default, Clone)]
|
||||||
/// See https://discord.com/developers/docs/topics/gateway-events#auto-moderation-rule-update
|
/// See https://discord.com/developers/docs/topics/gateway-events#auto-moderation-rule-update
|
||||||
pub struct AutoModerationRuleUpdate {
|
pub struct AutoModerationRuleUpdate {
|
||||||
#[serde(flatten)]
|
#[serde(flatten)]
|
||||||
|
@ -23,7 +23,7 @@ pub struct AutoModerationRuleUpdate {
|
||||||
|
|
||||||
impl WebSocketEvent for AutoModerationRuleUpdate {}
|
impl WebSocketEvent for AutoModerationRuleUpdate {}
|
||||||
|
|
||||||
#[derive(Debug, Deserialize, Serialize, Default)]
|
#[derive(Debug, Deserialize, Serialize, Default, Clone)]
|
||||||
/// See https://discord.com/developers/docs/topics/gateway-events#auto-moderation-rule-delete
|
/// See https://discord.com/developers/docs/topics/gateway-events#auto-moderation-rule-delete
|
||||||
pub struct AutoModerationRuleDelete {
|
pub struct AutoModerationRuleDelete {
|
||||||
#[serde(flatten)]
|
#[serde(flatten)]
|
||||||
|
@ -32,7 +32,7 @@ pub struct AutoModerationRuleDelete {
|
||||||
|
|
||||||
impl WebSocketEvent for AutoModerationRuleDelete {}
|
impl WebSocketEvent for AutoModerationRuleDelete {}
|
||||||
|
|
||||||
#[derive(Debug, Deserialize, Serialize, Default)]
|
#[derive(Debug, Deserialize, Serialize, Default, Clone)]
|
||||||
/// See https://discord.com/developers/docs/topics/gateway-events#auto-moderation-action-execution
|
/// See https://discord.com/developers/docs/topics/gateway-events#auto-moderation-action-execution
|
||||||
pub struct AutoModerationActionExecution {
|
pub struct AutoModerationActionExecution {
|
||||||
pub guild_id: Snowflake,
|
pub guild_id: Snowflake,
|
||||||
|
|
|
@ -2,7 +2,7 @@ use serde::{Deserialize, Serialize};
|
||||||
|
|
||||||
use crate::types::{VoiceState, WebSocketEvent};
|
use crate::types::{VoiceState, WebSocketEvent};
|
||||||
|
|
||||||
#[derive(Debug, Deserialize, Serialize, Default)]
|
#[derive(Debug, Deserialize, Serialize, Default, Clone)]
|
||||||
/// Officially Undocumented
|
/// Officially Undocumented
|
||||||
/// Is sent to a client by the server to signify a new being created
|
/// Is sent to a client by the server to signify a new being created
|
||||||
/// {"t":"CALL_CREATE","s":2,"op":0,"d":{"voice_states":[],"ringing":[],"region":"milan","message_id":"1107187514906775613","embedded_activities":[],"channel_id":"837609115475771392"}}
|
/// {"t":"CALL_CREATE","s":2,"op":0,"d":{"voice_states":[],"ringing":[],"region":"milan","message_id":"1107187514906775613","embedded_activities":[],"channel_id":"837609115475771392"}}
|
||||||
|
@ -18,7 +18,7 @@ pub struct CallCreate {
|
||||||
}
|
}
|
||||||
impl WebSocketEvent for CallCreate {}
|
impl WebSocketEvent for CallCreate {}
|
||||||
|
|
||||||
#[derive(Debug, Deserialize, Serialize, Default)]
|
#[derive(Debug, Deserialize, Serialize, Default, Clone)]
|
||||||
/// Officially Undocumented
|
/// Officially Undocumented
|
||||||
/// Updates the status of calls
|
/// Updates the status of calls
|
||||||
/// {"t":"CALL_UPDATE","s":5,"op":0,"d":{"ringing":["837606544539254834"],"region":"milan","message_id":"1107191540234846308","guild_id":null,"channel_id":"837609115475771392"}}
|
/// {"t":"CALL_UPDATE","s":5,"op":0,"d":{"ringing":["837606544539254834"],"region":"milan","message_id":"1107191540234846308","guild_id":null,"channel_id":"837609115475771392"}}
|
||||||
|
@ -32,7 +32,7 @@ pub struct CallUpdate {
|
||||||
}
|
}
|
||||||
impl WebSocketEvent for CallUpdate {}
|
impl WebSocketEvent for CallUpdate {}
|
||||||
|
|
||||||
#[derive(Debug, Deserialize, Serialize, Default)]
|
#[derive(Debug, Deserialize, Serialize, Default, Clone)]
|
||||||
/// Officially Undocumented
|
/// Officially Undocumented
|
||||||
/// Deletes a ringing call
|
/// Deletes a ringing call
|
||||||
/// {"t":"CALL_DELETE","s":8,"op":0,"d":{"channel_id":"837609115475771392"}}
|
/// {"t":"CALL_DELETE","s":8,"op":0,"d":{"channel_id":"837609115475771392"}}
|
||||||
|
@ -41,7 +41,7 @@ pub struct CallDelete {
|
||||||
}
|
}
|
||||||
impl WebSocketEvent for CallDelete {}
|
impl WebSocketEvent for CallDelete {}
|
||||||
|
|
||||||
#[derive(Debug, Deserialize, Serialize, Default)]
|
#[derive(Debug, Deserialize, Serialize, Default, Clone)]
|
||||||
/// Officially Undocumented
|
/// Officially Undocumented
|
||||||
/// See https://unofficial-discord-docs.vercel.app/gateway/op13
|
/// See https://unofficial-discord-docs.vercel.app/gateway/op13
|
||||||
/// {"op":13,"d":{"channel_id":"837609115475771392"}}
|
/// {"op":13,"d":{"channel_id":"837609115475771392"}}
|
||||||
|
|
|
@ -3,7 +3,7 @@ use crate::types::events::WebSocketEvent;
|
||||||
use chrono::{DateTime, Utc};
|
use chrono::{DateTime, Utc};
|
||||||
use serde::{Deserialize, Serialize};
|
use serde::{Deserialize, Serialize};
|
||||||
|
|
||||||
#[derive(Debug, Default, Deserialize, Serialize)]
|
#[derive(Debug, Default, Deserialize, Serialize, Clone)]
|
||||||
/// See https://discord.com/developers/docs/topics/gateway-events#channel-pins-update
|
/// See https://discord.com/developers/docs/topics/gateway-events#channel-pins-update
|
||||||
pub struct ChannelPinsUpdate {
|
pub struct ChannelPinsUpdate {
|
||||||
pub guild_id: Option<String>,
|
pub guild_id: Option<String>,
|
||||||
|
@ -13,7 +13,7 @@ pub struct ChannelPinsUpdate {
|
||||||
|
|
||||||
impl WebSocketEvent for ChannelPinsUpdate {}
|
impl WebSocketEvent for ChannelPinsUpdate {}
|
||||||
|
|
||||||
#[derive(Debug, Default, Deserialize, Serialize)]
|
#[derive(Debug, Default, Deserialize, Serialize, Clone)]
|
||||||
/// See https://discord.com/developers/docs/topics/gateway-events#channel-create
|
/// See https://discord.com/developers/docs/topics/gateway-events#channel-create
|
||||||
pub struct ChannelCreate {
|
pub struct ChannelCreate {
|
||||||
#[serde(flatten)]
|
#[serde(flatten)]
|
||||||
|
@ -22,7 +22,7 @@ pub struct ChannelCreate {
|
||||||
|
|
||||||
impl WebSocketEvent for ChannelCreate {}
|
impl WebSocketEvent for ChannelCreate {}
|
||||||
|
|
||||||
#[derive(Debug, Default, Deserialize, Serialize)]
|
#[derive(Debug, Default, Deserialize, Serialize, Clone)]
|
||||||
/// See https://discord.com/developers/docs/topics/gateway-events#channel-update
|
/// See https://discord.com/developers/docs/topics/gateway-events#channel-update
|
||||||
pub struct ChannelUpdate {
|
pub struct ChannelUpdate {
|
||||||
#[serde(flatten)]
|
#[serde(flatten)]
|
||||||
|
@ -31,7 +31,7 @@ pub struct ChannelUpdate {
|
||||||
|
|
||||||
impl WebSocketEvent for ChannelUpdate {}
|
impl WebSocketEvent for ChannelUpdate {}
|
||||||
|
|
||||||
#[derive(Debug, Default, Deserialize, Serialize)]
|
#[derive(Debug, Default, Deserialize, Serialize, Clone)]
|
||||||
/// Officially undocumented.
|
/// Officially undocumented.
|
||||||
/// Sends updates to client about a new message with its id
|
/// Sends updates to client about a new message with its id
|
||||||
/// {"channel_unread_updates": [{"id": "816412869766938648", "last_message_id": "1085892012085104680"}}
|
/// {"channel_unread_updates": [{"id": "816412869766938648", "last_message_id": "1085892012085104680"}}
|
||||||
|
@ -40,7 +40,7 @@ pub struct ChannelUnreadUpdate {
|
||||||
pub guild_id: String,
|
pub guild_id: String,
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Debug, Default, Deserialize, Serialize)]
|
#[derive(Debug, Default, Deserialize, Serialize, Clone)]
|
||||||
/// Contains very few fields from [Channel]
|
/// Contains very few fields from [Channel]
|
||||||
/// See also [ChannelUnreadUpdates]
|
/// See also [ChannelUnreadUpdates]
|
||||||
pub struct ChannelUnreadUpdateObject {
|
pub struct ChannelUnreadUpdateObject {
|
||||||
|
@ -51,7 +51,7 @@ pub struct ChannelUnreadUpdateObject {
|
||||||
|
|
||||||
impl WebSocketEvent for ChannelUnreadUpdate {}
|
impl WebSocketEvent for ChannelUnreadUpdate {}
|
||||||
|
|
||||||
#[derive(Debug, Default, Deserialize, Serialize)]
|
#[derive(Debug, Default, Deserialize, Serialize, Clone)]
|
||||||
/// See https://discord.com/developers/docs/topics/gateway-events#channel-delete
|
/// See https://discord.com/developers/docs/topics/gateway-events#channel-delete
|
||||||
pub struct ChannelDelete {
|
pub struct ChannelDelete {
|
||||||
#[serde(flatten)]
|
#[serde(flatten)]
|
||||||
|
|
|
@ -6,7 +6,7 @@ use serde::{Deserialize, Serialize};
|
||||||
|
|
||||||
use super::PresenceUpdate;
|
use super::PresenceUpdate;
|
||||||
|
|
||||||
#[derive(Debug, Deserialize, Serialize, Default)]
|
#[derive(Debug, Deserialize, Serialize, Default, Clone)]
|
||||||
/// See https://discord.com/developers/docs/topics/gateway-events#guild-create
|
/// See https://discord.com/developers/docs/topics/gateway-events#guild-create
|
||||||
/// This one is particularly painful, it can be a Guild object with an extra field or an unavailable guild object
|
/// This one is particularly painful, it can be a Guild object with an extra field or an unavailable guild object
|
||||||
pub struct GuildCreate {
|
pub struct GuildCreate {
|
||||||
|
@ -14,7 +14,7 @@ pub struct GuildCreate {
|
||||||
pub d: GuildCreateDataOption,
|
pub d: GuildCreateDataOption,
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Debug, Deserialize, Serialize)]
|
#[derive(Debug, Deserialize, Serialize, Clone)]
|
||||||
#[serde(untagged)]
|
#[serde(untagged)]
|
||||||
pub enum GuildCreateDataOption {
|
pub enum GuildCreateDataOption {
|
||||||
UnavailableGuild(UnavailableGuild),
|
UnavailableGuild(UnavailableGuild),
|
||||||
|
@ -28,7 +28,7 @@ impl Default for GuildCreateDataOption {
|
||||||
}
|
}
|
||||||
impl WebSocketEvent for GuildCreate {}
|
impl WebSocketEvent for GuildCreate {}
|
||||||
|
|
||||||
#[derive(Debug, Default, Deserialize, Serialize)]
|
#[derive(Debug, Default, Deserialize, Serialize, Clone)]
|
||||||
/// See https://discord.com/developers/docs/topics/gateway-events#guild-ban-add-guild-ban-add-event-fields
|
/// See https://discord.com/developers/docs/topics/gateway-events#guild-ban-add-guild-ban-add-event-fields
|
||||||
pub struct GuildBanAdd {
|
pub struct GuildBanAdd {
|
||||||
pub guild_id: String,
|
pub guild_id: String,
|
||||||
|
@ -37,7 +37,7 @@ pub struct GuildBanAdd {
|
||||||
|
|
||||||
impl WebSocketEvent for GuildBanAdd {}
|
impl WebSocketEvent for GuildBanAdd {}
|
||||||
|
|
||||||
#[derive(Debug, Default, Deserialize, Serialize)]
|
#[derive(Debug, Default, Deserialize, Serialize, Clone)]
|
||||||
/// See https://discord.com/developers/docs/topics/gateway-events#guild-ban-remove
|
/// See https://discord.com/developers/docs/topics/gateway-events#guild-ban-remove
|
||||||
pub struct GuildBanRemove {
|
pub struct GuildBanRemove {
|
||||||
pub guild_id: String,
|
pub guild_id: String,
|
||||||
|
@ -46,7 +46,7 @@ pub struct GuildBanRemove {
|
||||||
|
|
||||||
impl WebSocketEvent for GuildBanRemove {}
|
impl WebSocketEvent for GuildBanRemove {}
|
||||||
|
|
||||||
#[derive(Debug, Default, Deserialize, Serialize)]
|
#[derive(Debug, Default, Deserialize, Serialize, Clone)]
|
||||||
/// See https://discord.com/developers/docs/topics/gateway-events#guild-update
|
/// See https://discord.com/developers/docs/topics/gateway-events#guild-update
|
||||||
pub struct GuildUpdate {
|
pub struct GuildUpdate {
|
||||||
#[serde(flatten)]
|
#[serde(flatten)]
|
||||||
|
@ -55,7 +55,7 @@ pub struct GuildUpdate {
|
||||||
|
|
||||||
impl WebSocketEvent for GuildUpdate {}
|
impl WebSocketEvent for GuildUpdate {}
|
||||||
|
|
||||||
#[derive(Debug, Default, Deserialize, Serialize)]
|
#[derive(Debug, Default, Deserialize, Serialize, Clone)]
|
||||||
/// See https://discord.com/developers/docs/topics/gateway-events#guild-delete
|
/// See https://discord.com/developers/docs/topics/gateway-events#guild-delete
|
||||||
pub struct GuildDelete {
|
pub struct GuildDelete {
|
||||||
#[serde(flatten)]
|
#[serde(flatten)]
|
||||||
|
@ -64,7 +64,7 @@ pub struct GuildDelete {
|
||||||
|
|
||||||
impl WebSocketEvent for GuildDelete {}
|
impl WebSocketEvent for GuildDelete {}
|
||||||
|
|
||||||
#[derive(Debug, Default, Deserialize, Serialize)]
|
#[derive(Debug, Default, Deserialize, Serialize, Clone)]
|
||||||
/// See https://discord.com/developers/docs/topics/gateway-events#guild-audit-log-entry-create
|
/// See https://discord.com/developers/docs/topics/gateway-events#guild-audit-log-entry-create
|
||||||
pub struct GuildAuditLogEntryCreate {
|
pub struct GuildAuditLogEntryCreate {
|
||||||
#[serde(flatten)]
|
#[serde(flatten)]
|
||||||
|
@ -73,7 +73,7 @@ pub struct GuildAuditLogEntryCreate {
|
||||||
|
|
||||||
impl WebSocketEvent for GuildAuditLogEntryCreate {}
|
impl WebSocketEvent for GuildAuditLogEntryCreate {}
|
||||||
|
|
||||||
#[derive(Debug, Default, Deserialize, Serialize)]
|
#[derive(Debug, Default, Deserialize, Serialize, Clone)]
|
||||||
/// See https://discord.com/developers/docs/topics/gateway-events#guild-emojis-update
|
/// See https://discord.com/developers/docs/topics/gateway-events#guild-emojis-update
|
||||||
pub struct GuildEmojisUpdate {
|
pub struct GuildEmojisUpdate {
|
||||||
pub guild_id: String,
|
pub guild_id: String,
|
||||||
|
@ -82,7 +82,7 @@ pub struct GuildEmojisUpdate {
|
||||||
|
|
||||||
impl WebSocketEvent for GuildEmojisUpdate {}
|
impl WebSocketEvent for GuildEmojisUpdate {}
|
||||||
|
|
||||||
#[derive(Debug, Default, Deserialize, Serialize)]
|
#[derive(Debug, Default, Deserialize, Serialize, Clone)]
|
||||||
/// See https://discord.com/developers/docs/topics/gateway-events#guild-stickers-update
|
/// See https://discord.com/developers/docs/topics/gateway-events#guild-stickers-update
|
||||||
pub struct GuildStickersUpdate {
|
pub struct GuildStickersUpdate {
|
||||||
pub guild_id: String,
|
pub guild_id: String,
|
||||||
|
@ -91,7 +91,7 @@ pub struct GuildStickersUpdate {
|
||||||
|
|
||||||
impl WebSocketEvent for GuildStickersUpdate {}
|
impl WebSocketEvent for GuildStickersUpdate {}
|
||||||
|
|
||||||
#[derive(Debug, Default, Deserialize, Serialize)]
|
#[derive(Debug, Default, Deserialize, Serialize, Clone)]
|
||||||
/// See https://discord.com/developers/docs/topics/gateway-events#guild-integrations-update
|
/// See https://discord.com/developers/docs/topics/gateway-events#guild-integrations-update
|
||||||
pub struct GuildIntegrationsUpdate {
|
pub struct GuildIntegrationsUpdate {
|
||||||
pub guild_id: String,
|
pub guild_id: String,
|
||||||
|
@ -99,7 +99,7 @@ pub struct GuildIntegrationsUpdate {
|
||||||
|
|
||||||
impl WebSocketEvent for GuildIntegrationsUpdate {}
|
impl WebSocketEvent for GuildIntegrationsUpdate {}
|
||||||
|
|
||||||
#[derive(Debug, Default, Deserialize, Serialize)]
|
#[derive(Debug, Default, Deserialize, Serialize, Clone)]
|
||||||
/// See https://discord.com/developers/docs/topics/gateway-events#guild-member-add
|
/// See https://discord.com/developers/docs/topics/gateway-events#guild-member-add
|
||||||
pub struct GuildMemberAdd {
|
pub struct GuildMemberAdd {
|
||||||
#[serde(flatten)]
|
#[serde(flatten)]
|
||||||
|
@ -109,7 +109,7 @@ pub struct GuildMemberAdd {
|
||||||
|
|
||||||
impl WebSocketEvent for GuildMemberAdd {}
|
impl WebSocketEvent for GuildMemberAdd {}
|
||||||
|
|
||||||
#[derive(Debug, Default, Deserialize, Serialize)]
|
#[derive(Debug, Default, Deserialize, Serialize, Clone)]
|
||||||
/// See https://discord.com/developers/docs/topics/gateway-events#guild-member-remove
|
/// See https://discord.com/developers/docs/topics/gateway-events#guild-member-remove
|
||||||
pub struct GuildMemberRemove {
|
pub struct GuildMemberRemove {
|
||||||
pub guild_id: String,
|
pub guild_id: String,
|
||||||
|
@ -118,7 +118,7 @@ pub struct GuildMemberRemove {
|
||||||
|
|
||||||
impl WebSocketEvent for GuildMemberRemove {}
|
impl WebSocketEvent for GuildMemberRemove {}
|
||||||
|
|
||||||
#[derive(Debug, Default, Deserialize, Serialize)]
|
#[derive(Debug, Default, Deserialize, Serialize, Clone)]
|
||||||
/// See https://discord.com/developers/docs/topics/gateway-events#guild-member-update
|
/// See https://discord.com/developers/docs/topics/gateway-events#guild-member-update
|
||||||
pub struct GuildMemberUpdate {
|
pub struct GuildMemberUpdate {
|
||||||
pub guild_id: String,
|
pub guild_id: String,
|
||||||
|
@ -136,7 +136,7 @@ pub struct GuildMemberUpdate {
|
||||||
|
|
||||||
impl WebSocketEvent for GuildMemberUpdate {}
|
impl WebSocketEvent for GuildMemberUpdate {}
|
||||||
|
|
||||||
#[derive(Debug, Default, Deserialize, Serialize)]
|
#[derive(Debug, Default, Deserialize, Serialize, Clone)]
|
||||||
/// See https://discord.com/developers/docs/topics/gateway-events#guild-members-chunk
|
/// See https://discord.com/developers/docs/topics/gateway-events#guild-members-chunk
|
||||||
pub struct GuildMembersChunk {
|
pub struct GuildMembersChunk {
|
||||||
pub guild_id: String,
|
pub guild_id: String,
|
||||||
|
@ -150,7 +150,7 @@ pub struct GuildMembersChunk {
|
||||||
|
|
||||||
impl WebSocketEvent for GuildMembersChunk {}
|
impl WebSocketEvent for GuildMembersChunk {}
|
||||||
|
|
||||||
#[derive(Debug, Default, Deserialize, Serialize)]
|
#[derive(Debug, Default, Deserialize, Serialize, Clone)]
|
||||||
/// See https://discord.com/developers/docs/topics/gateway-events#guild-role-create
|
/// See https://discord.com/developers/docs/topics/gateway-events#guild-role-create
|
||||||
pub struct GuildRoleCreate {
|
pub struct GuildRoleCreate {
|
||||||
pub guild_id: String,
|
pub guild_id: String,
|
||||||
|
@ -159,7 +159,7 @@ pub struct GuildRoleCreate {
|
||||||
|
|
||||||
impl WebSocketEvent for GuildRoleCreate {}
|
impl WebSocketEvent for GuildRoleCreate {}
|
||||||
|
|
||||||
#[derive(Debug, Default, Deserialize, Serialize)]
|
#[derive(Debug, Default, Deserialize, Serialize, Clone)]
|
||||||
/// See https://discord.com/developers/docs/topics/gateway-events#guild-role-update
|
/// See https://discord.com/developers/docs/topics/gateway-events#guild-role-update
|
||||||
pub struct GuildRoleUpdate {
|
pub struct GuildRoleUpdate {
|
||||||
pub guild_id: String,
|
pub guild_id: String,
|
||||||
|
@ -168,7 +168,7 @@ pub struct GuildRoleUpdate {
|
||||||
|
|
||||||
impl WebSocketEvent for GuildRoleUpdate {}
|
impl WebSocketEvent for GuildRoleUpdate {}
|
||||||
|
|
||||||
#[derive(Debug, Default, Deserialize, Serialize)]
|
#[derive(Debug, Default, Deserialize, Serialize, Clone)]
|
||||||
/// See https://discord.com/developers/docs/topics/gateway-events#guild-role-delete
|
/// See https://discord.com/developers/docs/topics/gateway-events#guild-role-delete
|
||||||
pub struct GuildRoleDelete {
|
pub struct GuildRoleDelete {
|
||||||
pub guild_id: String,
|
pub guild_id: String,
|
||||||
|
@ -177,7 +177,7 @@ pub struct GuildRoleDelete {
|
||||||
|
|
||||||
impl WebSocketEvent for GuildRoleDelete {}
|
impl WebSocketEvent for GuildRoleDelete {}
|
||||||
|
|
||||||
#[derive(Debug, Default, Deserialize, Serialize)]
|
#[derive(Debug, Default, Deserialize, Serialize, Clone)]
|
||||||
/// See https://discord.com/developers/docs/topics/gateway-events#guild-scheduled-event-create
|
/// See https://discord.com/developers/docs/topics/gateway-events#guild-scheduled-event-create
|
||||||
pub struct GuildScheduledEventCreate {
|
pub struct GuildScheduledEventCreate {
|
||||||
#[serde(flatten)]
|
#[serde(flatten)]
|
||||||
|
@ -186,7 +186,7 @@ pub struct GuildScheduledEventCreate {
|
||||||
|
|
||||||
impl WebSocketEvent for GuildScheduledEventCreate {}
|
impl WebSocketEvent for GuildScheduledEventCreate {}
|
||||||
|
|
||||||
#[derive(Debug, Default, Deserialize, Serialize)]
|
#[derive(Debug, Default, Deserialize, Serialize, Clone)]
|
||||||
/// See https://discord.com/developers/docs/topics/gateway-events#guild-scheduled-event-update
|
/// See https://discord.com/developers/docs/topics/gateway-events#guild-scheduled-event-update
|
||||||
pub struct GuildScheduledEventUpdate {
|
pub struct GuildScheduledEventUpdate {
|
||||||
#[serde(flatten)]
|
#[serde(flatten)]
|
||||||
|
@ -195,7 +195,7 @@ pub struct GuildScheduledEventUpdate {
|
||||||
|
|
||||||
impl WebSocketEvent for GuildScheduledEventUpdate {}
|
impl WebSocketEvent for GuildScheduledEventUpdate {}
|
||||||
|
|
||||||
#[derive(Debug, Default, Deserialize, Serialize)]
|
#[derive(Debug, Default, Deserialize, Serialize, Clone)]
|
||||||
/// See https://discord.com/developers/docs/topics/gateway-events#guild-scheduled-event-delete
|
/// See https://discord.com/developers/docs/topics/gateway-events#guild-scheduled-event-delete
|
||||||
pub struct GuildScheduledEventDelete {
|
pub struct GuildScheduledEventDelete {
|
||||||
#[serde(flatten)]
|
#[serde(flatten)]
|
||||||
|
@ -204,7 +204,7 @@ pub struct GuildScheduledEventDelete {
|
||||||
|
|
||||||
impl WebSocketEvent for GuildScheduledEventDelete {}
|
impl WebSocketEvent for GuildScheduledEventDelete {}
|
||||||
|
|
||||||
#[derive(Debug, Default, Deserialize, Serialize)]
|
#[derive(Debug, Default, Deserialize, Serialize, Clone)]
|
||||||
/// See https://discord.com/developers/docs/topics/gateway-events#guild-scheduled-event-user-add
|
/// See https://discord.com/developers/docs/topics/gateway-events#guild-scheduled-event-user-add
|
||||||
pub struct GuildScheduledEventUserAdd {
|
pub struct GuildScheduledEventUserAdd {
|
||||||
pub guild_scheduled_event_id: String,
|
pub guild_scheduled_event_id: String,
|
||||||
|
@ -214,7 +214,7 @@ pub struct GuildScheduledEventUserAdd {
|
||||||
|
|
||||||
impl WebSocketEvent for GuildScheduledEventUserAdd {}
|
impl WebSocketEvent for GuildScheduledEventUserAdd {}
|
||||||
|
|
||||||
#[derive(Debug, Default, Deserialize, Serialize)]
|
#[derive(Debug, Default, Deserialize, Serialize, Clone)]
|
||||||
/// See https://discord.com/developers/docs/topics/gateway-events#guild-scheduled-event-user-remove
|
/// See https://discord.com/developers/docs/topics/gateway-events#guild-scheduled-event-user-remove
|
||||||
pub struct GuildScheduledEventUserRemove {
|
pub struct GuildScheduledEventUserRemove {
|
||||||
pub guild_scheduled_event_id: String,
|
pub guild_scheduled_event_id: String,
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
use crate::types::events::WebSocketEvent;
|
use crate::types::events::WebSocketEvent;
|
||||||
use serde::{Deserialize, Serialize};
|
use serde::{Deserialize, Serialize};
|
||||||
|
|
||||||
#[derive(Debug, Default, Deserialize, Serialize)]
|
#[derive(Debug, Default, Deserialize, Serialize, Clone)]
|
||||||
pub struct GatewayHeartbeat {
|
pub struct GatewayHeartbeat {
|
||||||
pub op: u8,
|
pub op: u8,
|
||||||
pub d: Option<u64>,
|
pub d: Option<u64>,
|
||||||
|
@ -9,7 +9,7 @@ pub struct GatewayHeartbeat {
|
||||||
|
|
||||||
impl WebSocketEvent for GatewayHeartbeat {}
|
impl WebSocketEvent for GatewayHeartbeat {}
|
||||||
|
|
||||||
#[derive(Debug, Default, Deserialize, Serialize)]
|
#[derive(Debug, Default, Deserialize, Serialize, Clone)]
|
||||||
pub struct GatewayHeartbeatAck {
|
pub struct GatewayHeartbeatAck {
|
||||||
pub op: i32,
|
pub op: i32,
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
use crate::types::events::WebSocketEvent;
|
use crate::types::events::WebSocketEvent;
|
||||||
use serde::{Deserialize, Serialize};
|
use serde::{Deserialize, Serialize};
|
||||||
|
|
||||||
#[derive(Debug, Default, Deserialize, Serialize)]
|
#[derive(Debug, Default, Deserialize, Serialize, Clone)]
|
||||||
pub struct GatewayHello {
|
pub struct GatewayHello {
|
||||||
pub op: i32,
|
pub op: i32,
|
||||||
pub d: HelloData,
|
pub d: HelloData,
|
||||||
|
@ -9,7 +9,7 @@ pub struct GatewayHello {
|
||||||
|
|
||||||
impl WebSocketEvent for GatewayHello {}
|
impl WebSocketEvent for GatewayHello {}
|
||||||
|
|
||||||
#[derive(Debug, Default, Deserialize, Serialize)]
|
#[derive(Debug, Default, Deserialize, Serialize, Clone)]
|
||||||
pub struct HelloData {
|
pub struct HelloData {
|
||||||
pub heartbeat_interval: u128,
|
pub heartbeat_interval: u128,
|
||||||
}
|
}
|
||||||
|
|
|
@ -2,7 +2,7 @@ use crate::types::events::{PresenceUpdate, WebSocketEvent};
|
||||||
use serde::{Deserialize, Serialize};
|
use serde::{Deserialize, Serialize};
|
||||||
use serde_with::serde_as;
|
use serde_with::serde_as;
|
||||||
|
|
||||||
#[derive(Debug, Deserialize, Serialize)]
|
#[derive(Debug, Deserialize, Serialize, Clone)]
|
||||||
pub struct GatewayIdentifyPayload {
|
pub struct GatewayIdentifyPayload {
|
||||||
pub token: String,
|
pub token: String,
|
||||||
pub properties: GatewayIdentifyConnectionProps,
|
pub properties: GatewayIdentifyConnectionProps,
|
||||||
|
@ -65,7 +65,7 @@ impl GatewayIdentifyPayload {
|
||||||
|
|
||||||
impl WebSocketEvent for GatewayIdentifyPayload {}
|
impl WebSocketEvent for GatewayIdentifyPayload {}
|
||||||
|
|
||||||
#[derive(Debug, Deserialize, Serialize)]
|
#[derive(Debug, Deserialize, Serialize, Clone)]
|
||||||
#[serde_as]
|
#[serde_as]
|
||||||
pub struct GatewayIdentifyConnectionProps {
|
pub struct GatewayIdentifyConnectionProps {
|
||||||
/// Almost always sent
|
/// Almost always sent
|
||||||
|
|
|
@ -2,7 +2,7 @@ use serde::{Deserialize, Serialize};
|
||||||
|
|
||||||
use crate::types::{Integration, WebSocketEvent};
|
use crate::types::{Integration, WebSocketEvent};
|
||||||
|
|
||||||
#[derive(Debug, Default, Deserialize, Serialize)]
|
#[derive(Debug, Default, Deserialize, Serialize, Clone)]
|
||||||
/// See https://discord.com/developers/docs/topics/gateway-events#integration-create
|
/// See https://discord.com/developers/docs/topics/gateway-events#integration-create
|
||||||
pub struct IntegrationCreate {
|
pub struct IntegrationCreate {
|
||||||
#[serde(flatten)]
|
#[serde(flatten)]
|
||||||
|
@ -12,7 +12,7 @@ pub struct IntegrationCreate {
|
||||||
|
|
||||||
impl WebSocketEvent for IntegrationCreate {}
|
impl WebSocketEvent for IntegrationCreate {}
|
||||||
|
|
||||||
#[derive(Debug, Default, Deserialize, Serialize)]
|
#[derive(Debug, Default, Deserialize, Serialize, Clone)]
|
||||||
/// See https://discord.com/developers/docs/topics/gateway-events#integration-update
|
/// See https://discord.com/developers/docs/topics/gateway-events#integration-update
|
||||||
pub struct IntegrationUpdate {
|
pub struct IntegrationUpdate {
|
||||||
#[serde(flatten)]
|
#[serde(flatten)]
|
||||||
|
@ -22,7 +22,7 @@ pub struct IntegrationUpdate {
|
||||||
|
|
||||||
impl WebSocketEvent for IntegrationUpdate {}
|
impl WebSocketEvent for IntegrationUpdate {}
|
||||||
|
|
||||||
#[derive(Debug, Default, Deserialize, Serialize)]
|
#[derive(Debug, Default, Deserialize, Serialize, Clone)]
|
||||||
/// See https://discord.com/developers/docs/topics/gateway-events#integration-delete
|
/// See https://discord.com/developers/docs/topics/gateway-events#integration-delete
|
||||||
pub struct IntegrationDelete {
|
pub struct IntegrationDelete {
|
||||||
pub id: String,
|
pub id: String,
|
||||||
|
|
|
@ -2,7 +2,7 @@ use serde::{Deserialize, Serialize};
|
||||||
|
|
||||||
use crate::types::{Interaction, WebSocketEvent};
|
use crate::types::{Interaction, WebSocketEvent};
|
||||||
|
|
||||||
#[derive(Debug, Default, Deserialize, Serialize)]
|
#[derive(Debug, Default, Deserialize, Serialize, Clone)]
|
||||||
/// See https://discord.com/developers/docs/topics/gateway-events#interaction-create
|
/// See https://discord.com/developers/docs/topics/gateway-events#interaction-create
|
||||||
pub struct InteractionCreate {
|
pub struct InteractionCreate {
|
||||||
#[serde(flatten)]
|
#[serde(flatten)]
|
||||||
|
|
|
@ -2,7 +2,7 @@ use serde::{Deserialize, Serialize};
|
||||||
|
|
||||||
use crate::types::{GuildInvite, WebSocketEvent};
|
use crate::types::{GuildInvite, WebSocketEvent};
|
||||||
|
|
||||||
#[derive(Debug, Default, Deserialize, Serialize)]
|
#[derive(Debug, Default, Deserialize, Serialize, Clone)]
|
||||||
/// See https://discord.com/developers/docs/topics/gateway-events#invite-create
|
/// See https://discord.com/developers/docs/topics/gateway-events#invite-create
|
||||||
pub struct InviteCreate {
|
pub struct InviteCreate {
|
||||||
#[serde(flatten)]
|
#[serde(flatten)]
|
||||||
|
@ -11,7 +11,7 @@ pub struct InviteCreate {
|
||||||
|
|
||||||
impl WebSocketEvent for InviteCreate {}
|
impl WebSocketEvent for InviteCreate {}
|
||||||
|
|
||||||
#[derive(Debug, Default, Deserialize, Serialize)]
|
#[derive(Debug, Default, Deserialize, Serialize, Clone)]
|
||||||
/// See https://discord.com/developers/docs/topics/gateway-events#invite-delete
|
/// See https://discord.com/developers/docs/topics/gateway-events#invite-delete
|
||||||
pub struct InviteDelete {
|
pub struct InviteDelete {
|
||||||
pub channel_id: String,
|
pub channel_id: String,
|
||||||
|
|
|
@ -4,7 +4,7 @@ use serde::{Deserialize, Serialize};
|
||||||
|
|
||||||
use super::WebSocketEvent;
|
use super::WebSocketEvent;
|
||||||
|
|
||||||
#[derive(Debug, Deserialize, Serialize, Default)]
|
#[derive(Debug, Deserialize, Serialize, Default, Clone)]
|
||||||
/// Officially Undocumented
|
/// Officially Undocumented
|
||||||
///
|
///
|
||||||
/// Sent to the server to signify lazy loading of a guild;
|
/// Sent to the server to signify lazy loading of a guild;
|
||||||
|
|
|
@ -1,11 +1,10 @@
|
||||||
use chrono::{DateTime, Utc};
|
|
||||||
use serde::{Deserialize, Serialize};
|
use serde::{Deserialize, Serialize};
|
||||||
|
|
||||||
use crate::types::entities::{Emoji, GuildMember, Message, PublicUser};
|
use crate::types::entities::{Emoji, GuildMember, Message, PublicUser};
|
||||||
|
|
||||||
use super::WebSocketEvent;
|
use super::WebSocketEvent;
|
||||||
|
|
||||||
#[derive(Debug, Deserialize, Serialize, Default)]
|
#[derive(Debug, Deserialize, Serialize, Default, Clone)]
|
||||||
pub struct TypingStartEvent {
|
pub struct TypingStartEvent {
|
||||||
pub channel_id: String,
|
pub channel_id: String,
|
||||||
pub guild_id: Option<String>,
|
pub guild_id: Option<String>,
|
||||||
|
@ -16,7 +15,7 @@ pub struct TypingStartEvent {
|
||||||
|
|
||||||
impl WebSocketEvent for TypingStartEvent {}
|
impl WebSocketEvent for TypingStartEvent {}
|
||||||
|
|
||||||
#[derive(Debug, Serialize, Deserialize, Default)]
|
#[derive(Debug, Serialize, Deserialize, Default, Clone)]
|
||||||
/// See https://discord.com/developers/docs/topics/gateway-events#message-create
|
/// See https://discord.com/developers/docs/topics/gateway-events#message-create
|
||||||
pub struct MessageCreate {
|
pub struct MessageCreate {
|
||||||
#[serde(flatten)]
|
#[serde(flatten)]
|
||||||
|
@ -26,7 +25,7 @@ pub struct MessageCreate {
|
||||||
mentions: Option<Vec<MessageCreateUser>>,
|
mentions: Option<Vec<MessageCreateUser>>,
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Debug, Serialize, Deserialize, Default)]
|
#[derive(Debug, Serialize, Deserialize, Default, Clone)]
|
||||||
/// See https://discord.com/developers/docs/topics/gateway-events#message-create-message-create-extra-fields
|
/// See https://discord.com/developers/docs/topics/gateway-events#message-create-message-create-extra-fields
|
||||||
pub struct MessageCreateUser {
|
pub struct MessageCreateUser {
|
||||||
#[serde(flatten)]
|
#[serde(flatten)]
|
||||||
|
@ -36,7 +35,7 @@ pub struct MessageCreateUser {
|
||||||
|
|
||||||
impl WebSocketEvent for MessageCreate {}
|
impl WebSocketEvent for MessageCreate {}
|
||||||
|
|
||||||
#[derive(Debug, Serialize, Deserialize, Default)]
|
#[derive(Debug, Serialize, Deserialize, Default, Clone)]
|
||||||
pub struct MessageUpdate {
|
pub struct MessageUpdate {
|
||||||
#[serde(flatten)]
|
#[serde(flatten)]
|
||||||
message: Message,
|
message: Message,
|
||||||
|
@ -47,7 +46,7 @@ pub struct MessageUpdate {
|
||||||
|
|
||||||
impl WebSocketEvent for MessageUpdate {}
|
impl WebSocketEvent for MessageUpdate {}
|
||||||
|
|
||||||
#[derive(Debug, Serialize, Deserialize, Default)]
|
#[derive(Debug, Serialize, Deserialize, Default, Clone)]
|
||||||
pub struct MessageDelete {
|
pub struct MessageDelete {
|
||||||
id: String,
|
id: String,
|
||||||
channel_id: String,
|
channel_id: String,
|
||||||
|
@ -56,7 +55,7 @@ pub struct MessageDelete {
|
||||||
|
|
||||||
impl WebSocketEvent for MessageDelete {}
|
impl WebSocketEvent for MessageDelete {}
|
||||||
|
|
||||||
#[derive(Debug, Serialize, Deserialize, Default)]
|
#[derive(Debug, Serialize, Deserialize, Default, Clone)]
|
||||||
pub struct MessageDeleteBulk {
|
pub struct MessageDeleteBulk {
|
||||||
ids: Vec<String>,
|
ids: Vec<String>,
|
||||||
channel_id: String,
|
channel_id: String,
|
||||||
|
@ -65,7 +64,7 @@ pub struct MessageDeleteBulk {
|
||||||
|
|
||||||
impl WebSocketEvent for MessageDeleteBulk {}
|
impl WebSocketEvent for MessageDeleteBulk {}
|
||||||
|
|
||||||
#[derive(Debug, Serialize, Deserialize, Default)]
|
#[derive(Debug, Serialize, Deserialize, Default, Clone)]
|
||||||
pub struct MessageReactionAdd {
|
pub struct MessageReactionAdd {
|
||||||
user_id: String,
|
user_id: String,
|
||||||
channel_id: String,
|
channel_id: String,
|
||||||
|
@ -77,7 +76,7 @@ pub struct MessageReactionAdd {
|
||||||
|
|
||||||
impl WebSocketEvent for MessageReactionAdd {}
|
impl WebSocketEvent for MessageReactionAdd {}
|
||||||
|
|
||||||
#[derive(Debug, Serialize, Deserialize, Default)]
|
#[derive(Debug, Serialize, Deserialize, Default, Clone)]
|
||||||
pub struct MessageReactionRemove {
|
pub struct MessageReactionRemove {
|
||||||
user_id: String,
|
user_id: String,
|
||||||
channel_id: String,
|
channel_id: String,
|
||||||
|
@ -88,7 +87,7 @@ pub struct MessageReactionRemove {
|
||||||
|
|
||||||
impl WebSocketEvent for MessageReactionRemove {}
|
impl WebSocketEvent for MessageReactionRemove {}
|
||||||
|
|
||||||
#[derive(Debug, Serialize, Deserialize, Default)]
|
#[derive(Debug, Serialize, Deserialize, Default, Clone)]
|
||||||
pub struct MessageReactionRemoveAll {
|
pub struct MessageReactionRemoveAll {
|
||||||
channel_id: String,
|
channel_id: String,
|
||||||
message_id: String,
|
message_id: String,
|
||||||
|
@ -97,7 +96,7 @@ pub struct MessageReactionRemoveAll {
|
||||||
|
|
||||||
impl WebSocketEvent for MessageReactionRemoveAll {}
|
impl WebSocketEvent for MessageReactionRemoveAll {}
|
||||||
|
|
||||||
#[derive(Debug, Serialize, Deserialize, Default)]
|
#[derive(Debug, Serialize, Deserialize, Default, Clone)]
|
||||||
pub struct MessageReactionRemoveEmoji {
|
pub struct MessageReactionRemoveEmoji {
|
||||||
channel_id: String,
|
channel_id: String,
|
||||||
message_id: String,
|
message_id: String,
|
||||||
|
@ -107,7 +106,7 @@ pub struct MessageReactionRemoveEmoji {
|
||||||
|
|
||||||
impl WebSocketEvent for MessageReactionRemoveEmoji {}
|
impl WebSocketEvent for MessageReactionRemoveEmoji {}
|
||||||
|
|
||||||
#[derive(Debug, Deserialize, Serialize, Default)]
|
#[derive(Debug, Deserialize, Serialize, Default, Clone)]
|
||||||
/// Officially Undocumented
|
/// Officially Undocumented
|
||||||
///
|
///
|
||||||
/// Not documented anywhere unofficially
|
/// Not documented anywhere unofficially
|
||||||
|
|
|
@ -3,7 +3,7 @@ use serde::{Deserialize, Serialize};
|
||||||
use super::{ChannelUnreadUpdateObject, WebSocketEvent};
|
use super::{ChannelUnreadUpdateObject, WebSocketEvent};
|
||||||
use crate::types::{GuildMember, VoiceState};
|
use crate::types::{GuildMember, VoiceState};
|
||||||
|
|
||||||
#[derive(Debug, Deserialize, Serialize, Default)]
|
#[derive(Debug, Deserialize, Serialize, Default, Clone)]
|
||||||
/// Officially Undocumented
|
/// Officially Undocumented
|
||||||
///
|
///
|
||||||
/// Seems to be passively set to update the client on guild details (though, why not just send the update events?)
|
/// Seems to be passively set to update the client on guild details (though, why not just send the update events?)
|
||||||
|
|
|
@ -4,7 +4,7 @@ use crate::types::interfaces::ClientStatusObject;
|
||||||
use crate::types::{Activity, GuildMember, PresenceUpdate, VoiceState};
|
use crate::types::{Activity, GuildMember, PresenceUpdate, VoiceState};
|
||||||
use serde::{Deserialize, Serialize};
|
use serde::{Deserialize, Serialize};
|
||||||
|
|
||||||
#[derive(Debug, Deserialize, Serialize, Default)]
|
#[derive(Debug, Deserialize, Serialize, Default, Clone)]
|
||||||
/// Sort of documented, though most fields are left out
|
/// Sort of documented, though most fields are left out
|
||||||
/// For a full example see https://gist.github.com/kozabrada123/a347002b1fb8825a5727e40746d4e199
|
/// For a full example see https://gist.github.com/kozabrada123/a347002b1fb8825a5727e40746d4e199
|
||||||
/// to:do add all undocumented fields
|
/// to:do add all undocumented fields
|
||||||
|
@ -27,7 +27,7 @@ pub struct GatewayReady {
|
||||||
|
|
||||||
impl WebSocketEvent for GatewayReady {}
|
impl WebSocketEvent for GatewayReady {}
|
||||||
|
|
||||||
#[derive(Debug, Deserialize, Serialize, Default)]
|
#[derive(Debug, Deserialize, Serialize, Default, Clone)]
|
||||||
/// Officially Undocumented
|
/// Officially Undocumented
|
||||||
/// Sent after the READY event when a client is a user
|
/// Sent after the READY event when a client is a user
|
||||||
/// {"t":"READY_SUPPLEMENTAL","s":2,"op":0,"d":{"merged_presences":{"guilds":[[{"user_id":"463640391196082177","status":"online","game":null,"client_status":{"web":"online"},"activities":[]}]],"friends":[{"user_id":"463640391196082177","status":"online","last_modified":1684053508443,"client_status":{"web":"online"},"activities":[]}]},"merged_members":[[{"user_id":"463640391196082177","roles":[],"premium_since":null,"pending":false,"nick":"pog","mute":false,"joined_at":"2021-05-30T15:24:08.763000+00:00","flags":0,"deaf":false,"communication_disabled_until":null,"avatar":null}]],"lazy_private_channels":[],"guilds":[{"voice_states":[],"id":"848582562217590824","embedded_activities":[]}],"disclose":["pomelo"]}}
|
/// {"t":"READY_SUPPLEMENTAL","s":2,"op":0,"d":{"merged_presences":{"guilds":[[{"user_id":"463640391196082177","status":"online","game":null,"client_status":{"web":"online"},"activities":[]}]],"friends":[{"user_id":"463640391196082177","status":"online","last_modified":1684053508443,"client_status":{"web":"online"},"activities":[]}]},"merged_members":[[{"user_id":"463640391196082177","roles":[],"premium_since":null,"pending":false,"nick":"pog","mute":false,"joined_at":"2021-05-30T15:24:08.763000+00:00","flags":0,"deaf":false,"communication_disabled_until":null,"avatar":null}]],"lazy_private_channels":[],"guilds":[{"voice_states":[],"id":"848582562217590824","embedded_activities":[]}],"disclose":["pomelo"]}}
|
||||||
|
@ -43,13 +43,13 @@ pub struct GatewayReadySupplemental {
|
||||||
|
|
||||||
impl WebSocketEvent for GatewayReadySupplemental {}
|
impl WebSocketEvent for GatewayReadySupplemental {}
|
||||||
|
|
||||||
#[derive(Debug, Deserialize, Serialize, Default)]
|
#[derive(Debug, Deserialize, Serialize, Default, Clone)]
|
||||||
pub struct MergedPresences {
|
pub struct MergedPresences {
|
||||||
pub guilds: Vec<Vec<MergedPresenceGuild>>,
|
pub guilds: Vec<Vec<MergedPresenceGuild>>,
|
||||||
pub friends: Vec<MergedPresenceFriend>,
|
pub friends: Vec<MergedPresenceFriend>,
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Debug, Deserialize, Serialize, Default)]
|
#[derive(Debug, Deserialize, Serialize, Default, Clone)]
|
||||||
pub struct MergedPresenceFriend {
|
pub struct MergedPresenceFriend {
|
||||||
pub user_id: String,
|
pub user_id: String,
|
||||||
pub status: String,
|
pub status: String,
|
||||||
|
@ -59,7 +59,7 @@ pub struct MergedPresenceFriend {
|
||||||
pub activities: Vec<Activity>,
|
pub activities: Vec<Activity>,
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Debug, Deserialize, Serialize, Default)]
|
#[derive(Debug, Deserialize, Serialize, Default, Clone)]
|
||||||
pub struct MergedPresenceGuild {
|
pub struct MergedPresenceGuild {
|
||||||
pub user_id: String,
|
pub user_id: String,
|
||||||
pub status: String,
|
pub status: String,
|
||||||
|
@ -69,7 +69,7 @@ pub struct MergedPresenceGuild {
|
||||||
pub activities: Vec<Activity>,
|
pub activities: Vec<Activity>,
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Debug, Deserialize, Serialize, Default)]
|
#[derive(Debug, Deserialize, Serialize, Default, Clone)]
|
||||||
pub struct SupplementalGuild {
|
pub struct SupplementalGuild {
|
||||||
pub voice_states: Option<Vec<VoiceState>>,
|
pub voice_states: Option<Vec<VoiceState>>,
|
||||||
pub id: String,
|
pub id: String,
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
use crate::types::{events::WebSocketEvent, Relationship, RelationshipType, Snowflake};
|
use crate::types::{events::WebSocketEvent, Relationship, RelationshipType, Snowflake};
|
||||||
use serde::{Deserialize, Serialize};
|
use serde::{Deserialize, Serialize};
|
||||||
|
|
||||||
#[derive(Debug, Deserialize, Serialize, Default)]
|
#[derive(Debug, Deserialize, Serialize, Default, Clone)]
|
||||||
/// See https://github.com/spacebarchat/server/issues/204
|
/// See https://github.com/spacebarchat/server/issues/204
|
||||||
pub struct RelationshipAdd {
|
pub struct RelationshipAdd {
|
||||||
#[serde(flatten)]
|
#[serde(flatten)]
|
||||||
|
@ -11,7 +11,7 @@ pub struct RelationshipAdd {
|
||||||
|
|
||||||
impl WebSocketEvent for RelationshipAdd {}
|
impl WebSocketEvent for RelationshipAdd {}
|
||||||
|
|
||||||
#[derive(Debug, Deserialize, Serialize, Default)]
|
#[derive(Debug, Deserialize, Serialize, Default, Clone)]
|
||||||
/// See https://github.com/spacebarchat/server/issues/203
|
/// See https://github.com/spacebarchat/server/issues/203
|
||||||
pub struct RelationshipRemove {
|
pub struct RelationshipRemove {
|
||||||
pub id: Snowflake,
|
pub id: Snowflake,
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
use crate::types::events::WebSocketEvent;
|
use crate::types::events::WebSocketEvent;
|
||||||
use serde::{Deserialize, Serialize};
|
use serde::{Deserialize, Serialize};
|
||||||
|
|
||||||
#[derive(Debug, Deserialize, Serialize, Default)]
|
#[derive(Debug, Deserialize, Serialize, Default, Clone)]
|
||||||
/// See https://discord.com/developers/docs/topics/gateway-events#request-guild-members-request-guild-members-structure
|
/// See https://discord.com/developers/docs/topics/gateway-events#request-guild-members-request-guild-members-structure
|
||||||
pub struct GatewayRequestGuildMembers {
|
pub struct GatewayRequestGuildMembers {
|
||||||
pub guild_id: String,
|
pub guild_id: String,
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
use crate::types::events::WebSocketEvent;
|
use crate::types::events::WebSocketEvent;
|
||||||
use serde::{Deserialize, Serialize};
|
use serde::{Deserialize, Serialize};
|
||||||
|
|
||||||
#[derive(Debug, Deserialize, Serialize, Default)]
|
#[derive(Debug, Deserialize, Serialize, Default, Clone)]
|
||||||
pub struct GatewayResume {
|
pub struct GatewayResume {
|
||||||
pub token: String,
|
pub token: String,
|
||||||
pub session_id: String,
|
pub session_id: String,
|
||||||
|
|
|
@ -2,7 +2,7 @@ use serde::{Deserialize, Serialize};
|
||||||
|
|
||||||
use crate::types::{Activity, WebSocketEvent};
|
use crate::types::{Activity, WebSocketEvent};
|
||||||
|
|
||||||
#[derive(Debug, Deserialize, Serialize, Default)]
|
#[derive(Debug, Deserialize, Serialize, Default, Clone)]
|
||||||
/// Officially Undocumented
|
/// Officially Undocumented
|
||||||
/// Seems like it sends active session info to users on connect
|
/// Seems like it sends active session info to users on connect
|
||||||
/// [{"activities":[],"client_info":{"client":"web","os":"other","version":0},"session_id":"ab5941b50d818b1f8d93b4b1b581b192","status":"online"}]
|
/// [{"activities":[],"client_info":{"client":"web","os":"other","version":0},"session_id":"ab5941b50d818b1f8d93b4b1b581b192","status":"online"}]
|
||||||
|
@ -10,7 +10,7 @@ pub struct SessionsReplace {
|
||||||
pub sessions: Vec<Session>,
|
pub sessions: Vec<Session>,
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Debug, Deserialize, Serialize, Default)]
|
#[derive(Debug, Deserialize, Serialize, Default, Clone)]
|
||||||
/// Session info for the current user
|
/// Session info for the current user
|
||||||
pub struct Session {
|
pub struct Session {
|
||||||
pub activities: Vec<Activity>,
|
pub activities: Vec<Activity>,
|
||||||
|
@ -19,7 +19,7 @@ pub struct Session {
|
||||||
pub status: String,
|
pub status: String,
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Debug, Deserialize, Serialize, Default)]
|
#[derive(Debug, Deserialize, Serialize, Default, Clone)]
|
||||||
/// Another Client info object
|
/// Another Client info object
|
||||||
/// {"client":"web","os":"other","version":0}
|
/// {"client":"web","os":"other","version":0}
|
||||||
// Note: I don't think this one exists yet? Though I might've made a mistake and this might be a duplicate
|
// Note: I don't think this one exists yet? Though I might've made a mistake and this might be a duplicate
|
||||||
|
|
|
@ -2,7 +2,7 @@ use serde::{Deserialize, Serialize};
|
||||||
|
|
||||||
use crate::types::{StageInstance, WebSocketEvent};
|
use crate::types::{StageInstance, WebSocketEvent};
|
||||||
|
|
||||||
#[derive(Debug, Deserialize, Serialize, Default)]
|
#[derive(Debug, Deserialize, Serialize, Default, Clone)]
|
||||||
/// See https://discord.com/developers/docs/topics/gateway-events#stage-instance-create
|
/// See https://discord.com/developers/docs/topics/gateway-events#stage-instance-create
|
||||||
pub struct StageInstanceCreate {
|
pub struct StageInstanceCreate {
|
||||||
#[serde(flatten)]
|
#[serde(flatten)]
|
||||||
|
@ -11,7 +11,7 @@ pub struct StageInstanceCreate {
|
||||||
|
|
||||||
impl WebSocketEvent for StageInstanceCreate {}
|
impl WebSocketEvent for StageInstanceCreate {}
|
||||||
|
|
||||||
#[derive(Debug, Deserialize, Serialize, Default)]
|
#[derive(Debug, Deserialize, Serialize, Default, Clone)]
|
||||||
/// See https://discord.com/developers/docs/topics/gateway-events#stage-instance-update
|
/// See https://discord.com/developers/docs/topics/gateway-events#stage-instance-update
|
||||||
pub struct StageInstanceUpdate {
|
pub struct StageInstanceUpdate {
|
||||||
#[serde(flatten)]
|
#[serde(flatten)]
|
||||||
|
@ -20,7 +20,7 @@ pub struct StageInstanceUpdate {
|
||||||
|
|
||||||
impl WebSocketEvent for StageInstanceUpdate {}
|
impl WebSocketEvent for StageInstanceUpdate {}
|
||||||
|
|
||||||
#[derive(Debug, Deserialize, Serialize, Default)]
|
#[derive(Debug, Deserialize, Serialize, Default, Clone)]
|
||||||
/// See https://discord.com/developers/docs/topics/gateway-events#stage-instance-delete
|
/// See https://discord.com/developers/docs/topics/gateway-events#stage-instance-delete
|
||||||
pub struct StageInstanceDelete {
|
pub struct StageInstanceDelete {
|
||||||
#[serde(flatten)]
|
#[serde(flatten)]
|
||||||
|
|
|
@ -2,7 +2,7 @@ use crate::types::entities::{Channel, ThreadMember};
|
||||||
use crate::types::events::WebSocketEvent;
|
use crate::types::events::WebSocketEvent;
|
||||||
use serde::{Deserialize, Serialize};
|
use serde::{Deserialize, Serialize};
|
||||||
|
|
||||||
#[derive(Debug, Default, Deserialize, Serialize)]
|
#[derive(Debug, Default, Deserialize, Serialize, Clone)]
|
||||||
/// See https://discord.com/developers/docs/topics/gateway-events#thread-create
|
/// See https://discord.com/developers/docs/topics/gateway-events#thread-create
|
||||||
pub struct ThreadCreate {
|
pub struct ThreadCreate {
|
||||||
#[serde(flatten)]
|
#[serde(flatten)]
|
||||||
|
@ -11,7 +11,7 @@ pub struct ThreadCreate {
|
||||||
|
|
||||||
impl WebSocketEvent for ThreadCreate {}
|
impl WebSocketEvent for ThreadCreate {}
|
||||||
|
|
||||||
#[derive(Debug, Default, Deserialize, Serialize)]
|
#[derive(Debug, Default, Deserialize, Serialize, Clone)]
|
||||||
/// See https://discord.com/developers/docs/topics/gateway-events#thread-update
|
/// See https://discord.com/developers/docs/topics/gateway-events#thread-update
|
||||||
pub struct ThreadUpdate {
|
pub struct ThreadUpdate {
|
||||||
#[serde(flatten)]
|
#[serde(flatten)]
|
||||||
|
@ -20,7 +20,7 @@ pub struct ThreadUpdate {
|
||||||
|
|
||||||
impl WebSocketEvent for ThreadUpdate {}
|
impl WebSocketEvent for ThreadUpdate {}
|
||||||
|
|
||||||
#[derive(Debug, Default, Deserialize, Serialize)]
|
#[derive(Debug, Default, Deserialize, Serialize, Clone)]
|
||||||
/// See https://discord.com/developers/docs/topics/gateway-events#thread-delete
|
/// See https://discord.com/developers/docs/topics/gateway-events#thread-delete
|
||||||
pub struct ThreadDelete {
|
pub struct ThreadDelete {
|
||||||
#[serde(flatten)]
|
#[serde(flatten)]
|
||||||
|
@ -29,7 +29,7 @@ pub struct ThreadDelete {
|
||||||
|
|
||||||
impl WebSocketEvent for ThreadDelete {}
|
impl WebSocketEvent for ThreadDelete {}
|
||||||
|
|
||||||
#[derive(Debug, Default, Deserialize, Serialize)]
|
#[derive(Debug, Default, Deserialize, Serialize, Clone)]
|
||||||
/// See https://discord.com/developers/docs/topics/gateway-events#thread-list-sync
|
/// See https://discord.com/developers/docs/topics/gateway-events#thread-list-sync
|
||||||
pub struct ThreadListSync {
|
pub struct ThreadListSync {
|
||||||
pub guild_id: String,
|
pub guild_id: String,
|
||||||
|
@ -40,7 +40,7 @@ pub struct ThreadListSync {
|
||||||
|
|
||||||
impl WebSocketEvent for ThreadListSync {}
|
impl WebSocketEvent for ThreadListSync {}
|
||||||
|
|
||||||
#[derive(Debug, Default, Deserialize, Serialize)]
|
#[derive(Debug, Default, Deserialize, Serialize, Clone)]
|
||||||
/// See https://discord.com/developers/docs/topics/gateway-events#thread-member-update
|
/// See https://discord.com/developers/docs/topics/gateway-events#thread-member-update
|
||||||
/// The inner payload is a thread member object with an extra field.
|
/// The inner payload is a thread member object with an extra field.
|
||||||
pub struct ThreadMemberUpdate {
|
pub struct ThreadMemberUpdate {
|
||||||
|
@ -51,7 +51,7 @@ pub struct ThreadMemberUpdate {
|
||||||
|
|
||||||
impl WebSocketEvent for ThreadMemberUpdate {}
|
impl WebSocketEvent for ThreadMemberUpdate {}
|
||||||
|
|
||||||
#[derive(Debug, Default, Deserialize, Serialize)]
|
#[derive(Debug, Default, Deserialize, Serialize, Clone)]
|
||||||
/// See https://discord.com/developers/docs/topics/gateway-events#thread-members-update
|
/// See https://discord.com/developers/docs/topics/gateway-events#thread-members-update
|
||||||
pub struct ThreadMembersUpdate {
|
pub struct ThreadMembersUpdate {
|
||||||
pub id: String,
|
pub id: String,
|
||||||
|
|
|
@ -3,7 +3,7 @@ use crate::types::events::WebSocketEvent;
|
||||||
use crate::types::utils::Snowflake;
|
use crate::types::utils::Snowflake;
|
||||||
use serde::{Deserialize, Serialize};
|
use serde::{Deserialize, Serialize};
|
||||||
|
|
||||||
#[derive(Debug, Default, Deserialize, Serialize)]
|
#[derive(Debug, Default, Deserialize, Serialize, Clone)]
|
||||||
/// See https://discord.com/developers/docs/topics/gateway-events#user-update
|
/// See https://discord.com/developers/docs/topics/gateway-events#user-update
|
||||||
pub struct UserUpdate {
|
pub struct UserUpdate {
|
||||||
#[serde(flatten)]
|
#[serde(flatten)]
|
||||||
|
@ -12,7 +12,7 @@ pub struct UserUpdate {
|
||||||
|
|
||||||
impl WebSocketEvent for UserUpdate {}
|
impl WebSocketEvent for UserUpdate {}
|
||||||
|
|
||||||
#[derive(Debug, Default, Deserialize, Serialize)]
|
#[derive(Debug, Default, Deserialize, Serialize, Clone)]
|
||||||
/// Undocumented
|
/// Undocumented
|
||||||
///
|
///
|
||||||
/// Possibly an update for muted guild / channel settings for the current user
|
/// Possibly an update for muted guild / channel settings for the current user
|
||||||
|
@ -37,7 +37,7 @@ pub struct UserGuildSettingsUpdate {
|
||||||
|
|
||||||
impl WebSocketEvent for UserGuildSettingsUpdate {}
|
impl WebSocketEvent for UserGuildSettingsUpdate {}
|
||||||
|
|
||||||
#[derive(Debug, Default, Deserialize, Serialize)]
|
#[derive(Debug, Default, Deserialize, Serialize, Clone)]
|
||||||
/// Undocumented
|
/// Undocumented
|
||||||
///
|
///
|
||||||
/// Received in [UserGuildSettingsUpdate]
|
/// Received in [UserGuildSettingsUpdate]
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
use crate::types::{events::WebSocketEvent, VoiceState};
|
use crate::types::{events::WebSocketEvent, VoiceState};
|
||||||
use serde::{Deserialize, Serialize};
|
use serde::{Deserialize, Serialize};
|
||||||
|
|
||||||
#[derive(Debug, Deserialize, Serialize, Default)]
|
#[derive(Debug, Deserialize, Serialize, Default, Clone)]
|
||||||
/// See https://discord.com/developers/docs/topics/gateway-events#update-voice-state
|
/// See https://discord.com/developers/docs/topics/gateway-events#update-voice-state
|
||||||
///
|
///
|
||||||
/// Sent to the server
|
/// Sent to the server
|
||||||
|
@ -16,7 +16,7 @@ pub struct UpdateVoiceState {
|
||||||
|
|
||||||
impl WebSocketEvent for UpdateVoiceState {}
|
impl WebSocketEvent for UpdateVoiceState {}
|
||||||
|
|
||||||
#[derive(Debug, Deserialize, Serialize, Default)]
|
#[derive(Debug, Deserialize, Serialize, Default, Clone)]
|
||||||
/// See https://discord.com/developers/docs/topics/gateway-events#voice-state-update
|
/// See https://discord.com/developers/docs/topics/gateway-events#voice-state-update
|
||||||
///
|
///
|
||||||
/// Received from the server
|
/// Received from the server
|
||||||
|
@ -29,7 +29,7 @@ pub struct VoiceStateUpdate {
|
||||||
|
|
||||||
impl WebSocketEvent for VoiceStateUpdate {}
|
impl WebSocketEvent for VoiceStateUpdate {}
|
||||||
|
|
||||||
#[derive(Debug, Deserialize, Serialize, Default)]
|
#[derive(Debug, Deserialize, Serialize, Default, Clone)]
|
||||||
/// See https://discord.com/developers/docs/topics/gateway-events#voice-server-update
|
/// See https://discord.com/developers/docs/topics/gateway-events#voice-server-update
|
||||||
pub struct VoiceServerUpdate {
|
pub struct VoiceServerUpdate {
|
||||||
pub token: String,
|
pub token: String,
|
||||||
|
|
|
@ -2,7 +2,7 @@ use serde::{Deserialize, Serialize};
|
||||||
|
|
||||||
use super::WebSocketEvent;
|
use super::WebSocketEvent;
|
||||||
|
|
||||||
#[derive(Debug, Deserialize, Serialize, Default)]
|
#[derive(Debug, Deserialize, Serialize, Default, Clone)]
|
||||||
/// See https://discord.com/developers/docs/topics/gateway-events#webhooks-update
|
/// See https://discord.com/developers/docs/topics/gateway-events#webhooks-update
|
||||||
pub struct WebhooksUpdate {
|
pub struct WebhooksUpdate {
|
||||||
pub guild_id: String,
|
pub guild_id: String,
|
||||||
|
|
Loading…
Reference in New Issue