pub enum ServerEvent {
Show 36 variants Bulk { v: Vec<ServerEvent>, }, Error { error: ErrorId, }, Authenticated, Ready { users: Vec<User>, servers: Vec<Server>, channels: Vec<Channel>, members: Vec<Member>, emojis: Option<Vec<Emoji>>, }, Pong { data: u32, }, Message(Message), MessageUpdate { id: String, channel: String, data: PartialMessage, }, MessageAppend { id: String, channel: String, append: AppendMessage, }, MessageDelete { id: String, channel: String, }, MessageReact { id: String, channel_id: String, user_id: String, emoji_id: String, }, MessageUnreact { id: String, channel_id: String, user_id: String, emoji_id: String, }, MessageRemoveReaction { id: String, channel_id: String, emoji_id: String, }, BulkMessageDelete { channel: String, ids: Vec<String>, }, ChannelCreate(Channel), ChannelUpdate { id: String, data: PartialChannel, clear: Vec<FieldsChannel>, }, ChannelDelete { id: String, }, ChannelGroupJoin { id: String, user: String, }, ChannelGroupLeave { id: String, user: String, }, ChannelStartTyping { id: String, user: String, }, ChannelStopTyping { id: String, user: String, }, ChannelAck { id: String, user: String, message_id: String, }, ServerCreate { id: String, server: Server, channels: Vec<Channel>, }, ServerUpdate { id: String, data: PartialServer, clear: Vec<FieldsServer>, }, ServerDelete { id: String, }, ServerMemberUpdate { id: MemberCompositeKey, data: PartialMember, clear: Vec<FieldsMember>, }, ServerMemberJoin { id: String, user: String, }, ServerMemberLeave { id: String, user: String, }, ServerRoleUpdate { id: String, role_id: String, data: PartialRole, clear: Vec<FieldsRole>, }, ServerRoleDelete { id: String, role_id: String, }, UserUpdate { id: String, data: PartialUser, clear: Vec<FieldsUser>, }, UserRelationship { id: String, user: User, status: RelationshipStatus, }, UserSettingsUpdate { id: String, update: UserSettings, }, UserPlatformWipe { user_id: String, flags: i32, }, EmojiCreate(Emoji), EmojiDelete { id: String, }, Unknown,
}
Expand description

Event sent by server

Variants§

§

Bulk

Fields

Multiple events

§

Error

Fields

§error: ErrorId

Error

§

Authenticated

Successfully authenticated

§

Ready

Fields

§users: Vec<User>
§servers: Vec<Server>
§channels: Vec<Channel>
§members: Vec<Member>
§emojis: Option<Vec<Emoji>>

Basic data to cache

§

Pong

Fields

§data: u32

Ping response

§

Message(Message)

New message

§

MessageUpdate

Fields

§channel: String

Update existing message

§

MessageAppend

Fields

§channel: String

Append information to existing message

§

MessageDelete

Fields

§channel: String

Delete message

§

MessageReact

Fields

§channel_id: String
§user_id: String
§emoji_id: String

New reaction to a message

§

MessageUnreact

Fields

§channel_id: String
§user_id: String
§emoji_id: String

Remove user’s reaction from message

§

MessageRemoveReaction

Fields

§channel_id: String
§emoji_id: String

Remove a reaction from message

§

BulkMessageDelete

Fields

§channel: String

Bulk delete messages

§

ChannelCreate(Channel)

New channel

§

ChannelUpdate

Update existing channel

§

ChannelDelete

Fields

Delete channel

§

ChannelGroupJoin

Fields

§user: String

User joins a group

§

ChannelGroupLeave

Fields

§user: String

User leaves a group

§

ChannelStartTyping

Fields

§user: String

User started typing in a channel

§

ChannelStopTyping

Fields

§user: String

User stopped typing in a channel

§

ChannelAck

Fields

§user: String
§message_id: String

User acknowledged message in channel

§

ServerCreate

Fields

§server: Server
§channels: Vec<Channel>

New server

§

ServerUpdate

Update existing server

§

ServerDelete

Fields

Delete server

§

ServerMemberUpdate

Update existing server member

§

ServerMemberJoin

Fields

§user: String

User joins server

§

ServerMemberLeave

Fields

§user: String

User left server

§

ServerRoleUpdate

Fields

§role_id: String

Server role created or updated

§

ServerRoleDelete

Fields

§role_id: String

Server role deleted

§

UserUpdate

Fields

Update existing user

§

UserRelationship

Fields

§user: User

Relationship with another user changed

§

UserSettingsUpdate

Fields

Settings updated remotely

§

UserPlatformWipe

Fields

§user_id: String
§flags: i32

User has been platform banned or deleted their account

Clients should remove the following associated data:

  • Messages
  • DM Channels
  • Relationships
  • Server Memberships

User flags are specified to explain why a wipe is occurring though not all reasons will necessarily ever appear.

§

EmojiCreate(Emoji)

New emoji

§

EmojiDelete

Fields

Delete emoji

§

Unknown

Trait Implementations§

source§

impl Clone for ServerEvent

source§

fn clone(&self) -> ServerEvent

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for ServerEvent

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<'de> Deserialize<'de> for ServerEvent

source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for Twhere T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for Twhere T: ?Sized,

const: unstable · source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for Twhere T: ?Sized,

const: unstable · source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

const: unstable · source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for Twhere U: From<T>,

const: unstable · source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T> Same<T> for T

§

type Output = T

Should always be Self
source§

impl<T> ToOwned for Twhere T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T, U> TryFrom<U> for Twhere U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
const: unstable · source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for Twhere U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
const: unstable · source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
source§

impl<T> DeserializeOwned for Twhere T: for<'de> Deserialize<'de>,