diff --git a/src/requests/message.rs b/src/requests/message.rs index 824afc3..b4a4b41 100644 --- a/src/requests/message.rs +++ b/src/requests/message.rs @@ -7,7 +7,7 @@ crate::logger!(LOGGER "Message Manager"); pub fn send( server: &Arc, client: &Client, - channel_id: &str, + channel_id: u32, contents: &str, ) -> crate::Result<()> { LOGGER.info(format!("SendMessage to {channel_id}: {contents}")); @@ -21,7 +21,7 @@ pub fn send( } let msg = server.db.insert_message( - &channel_id, + channel_id, client.get_uuid()?, &contents, chrono::Utc::now().timestamp(), diff --git a/src/requests/mod.rs b/src/requests/mod.rs index 7f45b5c..2d053cc 100644 --- a/src/requests/mod.rs +++ b/src/requests/mod.rs @@ -21,7 +21,7 @@ impl Server { channel_id, contents, } => { - message::send(self, client, channel_id, contents)?; + message::send(self, client, *channel_id, contents)?; } ClientMessage::EditMessage { diff --git a/src/server.rs b/src/server.rs index 110eeec..93272ad 100644 --- a/src/server.rs +++ b/src/server.rs @@ -15,7 +15,6 @@ pub struct ServerConfig { server_name: String, server_id: String, port: u16, - channels: Vec, } #[allow(dead_code)] @@ -29,10 +28,9 @@ pub struct Server { impl Default for ServerConfig { fn default() -> Self { Self { - port: 7080, + port: 7090, server_name: format!("Server Name"), server_id: format!("offline-server"), - channels: Vec::new(), } } } diff --git a/src/types.rs b/src/types.rs index 90e054a..b291e20 100644 --- a/src/types.rs +++ b/src/types.rs @@ -6,7 +6,7 @@ use serde::{Deserialize, Serialize}; pub enum ClientMessage { /// Send a message to a channel SendMessage { - channel_id: String, + channel_id: u32, contents: String, }, @@ -42,7 +42,7 @@ pub enum ServerMessage { /// A message was deleted MessageDelete { - channel_id: String, + channel_id: u32, message_id: usize, }, @@ -55,7 +55,7 @@ pub enum ServerMessage { /// Typing indicator Typing { user_id: String, - channel_id: String, + channel_id: u32, }, } @@ -84,7 +84,7 @@ pub mod data { #[derive(Debug, Clone, Serialize, Deserialize)] pub struct Message { pub id: i64, - pub channel_id: String, + pub channel_id: u32, pub from: u32, pub contents: String, pub timestamp: i64, diff --git a/src/utils/database.rs b/src/utils/database.rs index 730119c..cb354f8 100644 --- a/src/utils/database.rs +++ b/src/utils/database.rs @@ -11,7 +11,7 @@ impl Database { conn.execute( "CREATE TABLE IF NOT EXISTS chat ( id INTEGER PRIMARY KEY AUTOINCREMENT, - channel_id TEXT NOT NULL, + channel_id INTEGER NOT NULL, user_id INTEGER NOT NULL, contents TEXT NOT NULL, timestamp INTEGER NOT NULL @@ -29,7 +29,7 @@ impl Database { /// Insert a message into the DB pub fn insert_message( &self, - channel_id: &str, + channel_id: u32, user_id: u32, contents: &str, timestamp: i64, @@ -44,7 +44,7 @@ impl Database { Ok(Message { id, - channel_id: channel_id.to_string(), + channel_id, from: user_id, contents: contents.to_string(), timestamp, @@ -83,7 +83,7 @@ impl Database { let mut rows = stmt.query_map(params![message_id], |row| { Ok(( row.get::<_, i64>(0)?, // id - row.get::<_, String>(1)?, // channel_id + row.get::<_, u32>(1)?, // channel_id row.get::<_, u32>(2)?, // user_id row.get::<_, String>(3)?, // contents row.get::<_, i64>(4)?, // timestamp @@ -115,7 +115,7 @@ impl Database { let rows = stmt.query_map(params![message_id], |row| { Ok(Message { id: row.get::<_, i64>(0)?, - channel_id: row.get::<_, String>(1)?, + channel_id: row.get::<_, u32>(1)?, from: row.get::<_, u32>(2)?, contents: row.get::<_, String>(3)?, timestamp: row.get::<_, i64>(4)?,