use crate::chat::{
events::{EventMeta, SubscribeEvent},
parser::{raw::RawMessage, util::normalize_user_id},
};
pub fn parse_subscribe_event(raw: RawMessage) -> SubscribeEvent {
let body = raw.body;
SubscribeEvent {
meta: EventMeta {
received_time: raw.received_time,
},
user_id: normalize_user_id(&body[2]),
label: body[3].clone(),
tier: body[7].parse::<u32>().unwrap_or(0),
renew: 0,
}
}
pub fn parse_subscribe_renew_event(raw: RawMessage) -> SubscribeEvent {
let body = raw.body;
SubscribeEvent {
meta: EventMeta {
received_time: raw.received_time,
},
user_id: normalize_user_id(&body[1]),
label: body[2].clone(),
tier: body[7].parse::<u32>().unwrap_or(0),
renew: body[3].parse::<u32>().unwrap_or(1),
}
}