pub struct GlobalUserStateMessage {
pub user_id: String,
pub user_name: String,
pub badge_info: Vec<Badge>,
pub badges: Vec<Badge>,
pub emote_sets: HashSet<String>,
pub name_color: Option<RGBColor>,
pub source: IRCMessage,
}
Expand description
Sent once directly after successful login, containing properties for the logged in user.
This message is not sent if you log into chat as an anonymous user.
Fields§
§user_id: String
ID of the logged in user
user_name: String
Name (also called display name) of the logged in user
badge_info: Vec<Badge>
Metadata related to the chat badges in the badges
tag.
Currently this is used only for subscriber
, to indicate the exact number of months
the user has been a subscriber. This number is finer grained than the version number in
badges. For example, a user who has been a subscriber for 45 months would have a
badge_info
value of 45 but might have a badges
version
number for only 3 years.
However note that subscriber badges are not sent on GLOBALUSERSTATE
messages,
so you can realistically expect this to be empty unless Twitch adds a new feature.
badges: Vec<Badge>
List of badges the logged in user has in all channels.
emote_sets: HashSet<String>
List of emote set IDs the logged in user has available. This always contains at least one entry (“0”).
name_color: Option<RGBColor>
What name color the logged in user has chosen. The same color is used in all channels.
source: IRCMessage
The message that this GlobalUserStateMessage
was parsed from.
Trait Implementations§
Source§impl Clone for GlobalUserStateMessage
impl Clone for GlobalUserStateMessage
Source§fn clone(&self) -> GlobalUserStateMessage
fn clone(&self) -> GlobalUserStateMessage
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreSource§impl Debug for GlobalUserStateMessage
impl Debug for GlobalUserStateMessage
Source§impl<'de> Deserialize<'de> for GlobalUserStateMessage
impl<'de> Deserialize<'de> for GlobalUserStateMessage
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Source§impl From<GlobalUserStateMessage> for IRCMessage
impl From<GlobalUserStateMessage> for IRCMessage
Source§fn from(msg: GlobalUserStateMessage) -> IRCMessage
fn from(msg: GlobalUserStateMessage) -> IRCMessage
Source§impl PartialEq for GlobalUserStateMessage
impl PartialEq for GlobalUserStateMessage
Source§impl Serialize for GlobalUserStateMessage
impl Serialize for GlobalUserStateMessage
Source§impl TryFrom<IRCMessage> for GlobalUserStateMessage
impl TryFrom<IRCMessage> for GlobalUserStateMessage
Source§type Error = ServerMessageParseError
type Error = ServerMessageParseError
Source§fn try_from(
source: IRCMessage,
) -> Result<GlobalUserStateMessage, ServerMessageParseError>
fn try_from( source: IRCMessage, ) -> Result<GlobalUserStateMessage, ServerMessageParseError>
impl Eq for GlobalUserStateMessage
impl StructuralPartialEq for GlobalUserStateMessage
Auto Trait Implementations§
impl Freeze for GlobalUserStateMessage
impl RefUnwindSafe for GlobalUserStateMessage
impl Send for GlobalUserStateMessage
impl Sync for GlobalUserStateMessage
impl Unpin for GlobalUserStateMessage
impl UnwindSafe for GlobalUserStateMessage
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key
and return true
if they are equal.Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more