From 03fb82e2b1d3a8b4dd29ebb891c9e7b53f01bf1d Mon Sep 17 00:00:00 2001 From: Jonni Liljamo Date: Tue, 7 Mar 2023 10:13:27 +0200 Subject: [PATCH] feat(server): handle connect, disconnect and error events --- server/src/main.rs | 5 ++++- server/src/systems/event/mod.rs | 25 ++++++++++++++++++++++++- 2 files changed, 28 insertions(+), 2 deletions(-) diff --git a/server/src/main.rs b/server/src/main.rs index 6d51197..2e1bda9 100644 --- a/server/src/main.rs +++ b/server/src/main.rs @@ -42,7 +42,10 @@ fn main() { // init system .add_startup_system(systems::init::init) // events - .add_system(systems::event::auth_events); + .add_system(systems::event::auth_events) + .add_system(systems::event::connect_events) + .add_system(systems::event::disconnect_events) + .add_system(systems::event::error_events); info!("Laurelin server starting"); server.run(); diff --git a/server/src/systems/event/mod.rs b/server/src/systems/event/mod.rs index 399ea39..888d82f 100644 --- a/server/src/systems/event/mod.rs +++ b/server/src/systems/event/mod.rs @@ -7,11 +7,15 @@ */ use bevy_ecs::{event::EventReader, system::Res}; +use bevy_log::info; use laurelin_shared::{ api::user::{login, register, ResponseLogin, ResponseRegister}, server::messages::Auth, }; -use naia_bevy_server::{events::AuthEvents, Server}; +use naia_bevy_server::{ + events::{AuthEvents, ConnectEvent, DisconnectEvent, ErrorEvent}, + Server, +}; use crate::Config; @@ -44,3 +48,22 @@ pub(crate) fn auth_events( } } } + +pub(crate) fn connect_events(mut ev: EventReader, mut server: Server) { + for ConnectEvent(user_key) in ev.iter() { + let address = server.user(user_key).address(); + info!("Naia Server connected to: {:?}", address); + } +} + +pub(crate) fn disconnect_events(mut ev: EventReader) { + for DisconnectEvent(_user_key, user) in ev.iter() { + info!("Naia Server disconnected from: {:?}", user.address); + } +} + +pub(crate) fn error_events(mut ev: EventReader) { + for ErrorEvent(error) in ev.iter() { + info!("Naia Server Error: {:?}", error); + } +} -- 2.44.1