refactor: ♻️ message send and receive via websocket

This commit is contained in:
Ahmet Kaan Gümüş 2025-05-09 12:07:10 +03:00
parent ff5742562e
commit ab51292439

View file

@ -104,11 +104,6 @@ async fn websocket_handler(websocket: UpgradeFut) {
};
*user.write().await = new_user.user.to_owned();
ONLINE_USERS.write().await.push_back(new_user);
} else {
return;
}
}
}
let user_for_sender = user.clone();
tokio::spawn(async move {
@ -154,15 +149,24 @@ async fn websocket_handler(websocket: UpgradeFut) {
{
if let OpCode::Text = received_frame.opcode {
let signal =
serde_json::from_slice::<Signal>(&received_frame.payload.to_vec()).unwrap();
serde_json::from_slice::<Signal>(&received_frame.payload.to_vec())
.unwrap();
if signal.get_signal_type() != SignalType::Auth {
if let Err(err_val) = message_sender.send(signal) {
eprintln!("Error: WebSocket Channel Send | {}", err_val);
let _ = remove_user_from_online_users(&user.read().await.to_owned()).await;
let _ =
remove_user_from_online_users(&user.read().await.to_owned())
.await;
}
} else {
let _ =
remove_user_from_online_users(&user.read().await.to_owned()).await;
return;
}
}
}
} else {
let _ = remove_user_from_online_users(&user.read().await.to_owned()).await;
return;
}
}