pub struct Message {Show 14 fields
pub platform: Platform,
pub user: String,
pub text: String,
pub color: Option<String>,
pub badges: Vec<Badge>,
pub reply_to: Option<String>,
pub id: Option<String>,
pub gone: Option<String>,
pub note: Option<Note>,
pub uid: Option<String>,
pub extra: Extra,
pub emotes: Option<Arc<EmoteSet>>,
pub tags: Vec<Tag>,
pub heat: f64,
}Expand description
one chat line. heat is the channel’s heat snapshotted at arrival, so a
message sent during a spike stays warm in scrollback. color is the user’s
chat color (hex) if the platform sent one.
Fields§
§platform: Platformwhere this line came from — a merged tab interleaves platforms, and each line keeps its origin for display.
user: String§text: String§color: Option<String>§badges: Vec<Badge>§reply_to: Option<String>username this message replies to, when the platform sent one.
id: Option<String>the platform’s message id, when the relay sent one.
gone: Option<String>set when a mod removed this line: the marker (“deleted”, “timed out 10m”…). the line stays in scrollback, struck through.
note: Option<Note>set when this line is an event (sub, raid, redemption, live…) rather than plain chat — it renders as an inline notice.
uid: Option<String>the sender’s heatsync paint-space id (twitch user id, kick_<id>,
yt_<UC id>), when the relay sent one — keys name paints and colors.
extra: Extra§emotes: Option<Arc<EmoteSet>>this line’s own emote refs (see emote::segments_with), built once
when the line lands; None for lines that carry none (history, system).
leading labels (mention origin, feed [OP], [whisper]…); empty on
ordinary chat.
heat: f64