[−][src]Struct twitch_irc::message::UserNoticeMessage
A Twitch USERNOTICE
message.
The USERNOTICE
message represents a wide variety of "rich events" in chat,
e.g. sub events, resubs, gifted subscriptions, incoming raids, etc.
See UserNoticeEvent
for more details on all the different events.
Fields
channel_login: String
Login name of the channel that this message was sent to.
channel_id: String
ID of the channel that this message was sent to.
sender: TwitchUserBasics
The user that sent/triggered this message. Depending on the event
(see below),
this user may or may not have any actual meaning (for some type of events, this
user is a dummy user).
Even if this user is not a dummy user, the meaning of what this user did depends on the
event
that this USERNOTICE
message represents. For example, in case of a raid,
this user is the user raiding the channel, in case of a sub
, it's the user
subscribing, etc...)
message_text: Option<String>
If present, an optional message the user sent alongside the notification. Not all types of events can have message text.
Currently the only event that can a message is a resub
, where this message text is the
message the user shared with the streamer alongside the resub message.
system_message: String
A system message that is always present and represents a user-presentable message of what this event is, for example "FuchsGewand subscribed with Twitch Prime. They've subscribed for 12 months, currently on a 9 month streak!".
This message is always present and always fully pre-formatted by Twitch with this event's parameters.
event: UserNoticeEvent
this holds the event-specific data, e.g. for sub, resub, subgift, etc...
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.
badges: Vec<Badge>
List of badges that should be displayed alongside the message.
emotes: Vec<Emote>
A list of emotes in this message. Each emote replaces a part of the message_text
.
These emotes are sorted in the order that they appear in the message.
If message_text
is None
, this is an empty list and carries no information (since
there is no message, and therefore no emotes to display)
name_color: Option<RGBColor>
If present, specifies the color that the user's name should be displayed in. A value
of None
here signifies that the user has not picked any particular color.
Implementations differ on how they handle this, on the Twitch website users are assigned
a pseudorandom but consistent-per-user color if they have no color specified.
message_id: String
Timestamp of when this message was sent.
server_timestamp: DateTime<Utc>
A string uniquely identifying this message. Can be used with /delete <message_id>
to
delete single messages (see also the CLEARMSG
message type)
source: IRCMessage
The message that this UserNoticeMessage
was parsed from.
Trait Implementations
impl Clone for UserNoticeMessage
[src]
fn clone(&self) -> UserNoticeMessage
[src]
fn clone_from(&mut self, source: &Self)
1.0.0[src]
impl Debug for UserNoticeMessage
[src]
impl From<UserNoticeMessage> for IRCMessage
[src]
fn from(msg: UserNoticeMessage) -> IRCMessage
[src]
impl PartialEq<UserNoticeMessage> for UserNoticeMessage
[src]
fn eq(&self, other: &UserNoticeMessage) -> bool
[src]
fn ne(&self, other: &UserNoticeMessage) -> bool
[src]
impl StructuralPartialEq for UserNoticeMessage
[src]
impl TryFrom<IRCMessage> for UserNoticeMessage
[src]
type Error = ServerMessageParseError
The type returned in the event of a conversion error.
fn try_from(
source: IRCMessage
) -> Result<UserNoticeMessage, ServerMessageParseError>
[src]
source: IRCMessage
) -> Result<UserNoticeMessage, ServerMessageParseError>
Auto Trait Implementations
impl RefUnwindSafe for UserNoticeMessage
impl Send for UserNoticeMessage
impl Sync for UserNoticeMessage
impl Unpin for UserNoticeMessage
impl UnwindSafe for UserNoticeMessage
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> Same<T> for T
type Output = T
Should always be Self
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
fn to_owned(&self) -> T
[src]
fn clone_into(&self, target: &mut T)
[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
V: MultiLane<T>,