diff --git a/src/api.rs b/src/api.rs index c327c56..7c017df 100644 --- a/src/api.rs +++ b/src/api.rs @@ -52,7 +52,7 @@ pub async fn websocket(stream: WebSocket, state: Arc, who: User) { // handle new incoming messages let mut recv_task = tokio::spawn(async move { while let Some(Ok(message)) = receiver.next().await { - message_handler(message, &state, who.addr).await + message_handler(message, &state, &who).await } }); diff --git a/src/api/message_handler.rs b/src/api/message_handler.rs index cde6be1..ebed8e2 100644 --- a/src/api/message_handler.rs +++ b/src/api/message_handler.rs @@ -1,4 +1,4 @@ -use crate::api::{greeting, Message, SocketAddr}; +use crate::api::{greeting, Message, User}; use crate::AppState; use crate::Arc; use crate::CAHGame; @@ -32,7 +32,7 @@ pub struct UserLoginRequest { pub token: String, } -pub async fn message_handler(message: Message, state: &Arc, who: SocketAddr) { +pub async fn message_handler(message: Message, state: &Arc, who: &User) { let tx = &state.tx; match message { @@ -49,7 +49,7 @@ pub async fn message_handler(message: Message, state: &Arc, who: Socke } } else { // just echo - let msg = format! {"{who}: {text}"}; + let msg = format! {"{0}: {1}", who.name, text}; tracing::debug!("{msg}"); let _res = tx.send(msg); } @@ -62,14 +62,15 @@ pub async fn message_handler(message: Message, state: &Arc, who: Socke Message::Close(c) => { if let Some(cf) = c { tracing::debug!( - "Close received from {who} with code: {} and reason: {}", + "Close received from {0} with code: {1} and reason: {2}", + who.addr, cf.code, cf.reason ) } else { tracing::debug!("close received without close frame") } - let msg = format!("{who} left."); + let msg = format!("{0} left.", who.name); tracing::debug!("{msg}"); let _ = tx.send(msg); }