use crate::gateway::events::MessageEvent;
#[derive(Debug, Clone)]
pub struct User {
pub id: String,
pub name: Option<String>,
}
#[derive(Debug, Clone)]
pub struct Message {
pub message_id: Option<String>,
pub thread_id: String,
pub sender_id: String,
pub text: Option<String>,
pub timestamp_ms: Option<i64>,
}
#[derive(Debug, Clone)]
pub struct Typing {
pub user_id: String,
pub thread_id: Option<String>,
pub is_typing: bool,
}
#[derive(Debug, Clone)]
pub struct Presence {
pub user_id: String,
pub is_active: bool,
pub last_active_ms: Option<i64>,
}
impl From<&MessageEvent> for Message {
fn from(message: &MessageEvent) -> Self {
Message {
message_id: message.message_id.clone(),
thread_id: message.thread_id.clone(),
sender_id: message.sender_id.clone(),
text: message.text.clone(),
timestamp_ms: message.timestamp_ms,
}
}
}