Simple working node server
This commit is contained in:
@@ -7,7 +7,7 @@ crate::logger!(LOGGER "Message Manager");
|
||||
pub fn send(
|
||||
server: &Arc<Server>,
|
||||
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(),
|
||||
|
||||
+1
-1
@@ -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 {
|
||||
|
||||
+1
-3
@@ -15,7 +15,6 @@ pub struct ServerConfig {
|
||||
server_name: String,
|
||||
server_id: String,
|
||||
port: u16,
|
||||
channels: Vec<types::data::Channel>,
|
||||
}
|
||||
|
||||
#[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(),
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
+4
-4
@@ -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,
|
||||
|
||||
@@ -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)?,
|
||||
|
||||
Reference in New Issue
Block a user