better logging for disconnections
This commit is contained in:
parent
32701ed754
commit
3d98f5ed1d
@ -128,6 +128,7 @@ pub enum RpcRequest {
|
||||
pub trait User {
|
||||
fn receive(&mut self, data: Vec<u8>, stripe: &StripeClient) -> Result<RpcMessage, Error>;
|
||||
fn connected(&mut self) -> Result<(), Error>;
|
||||
fn disconnected(&self) -> Result<(), Error>;
|
||||
fn send(&mut self, msg: RpcMessage) -> Result<(), Error>;
|
||||
}
|
||||
|
||||
@ -170,8 +171,8 @@ impl Handler for Connection {
|
||||
}
|
||||
|
||||
fn on_close(&mut self, _: CloseCode, _: &str) {
|
||||
info!("websocket disconnected id={:?}", self.id);
|
||||
self.events.send(Event::Disconnect(self.id)).unwrap();
|
||||
self.user.disconnected().unwrap();
|
||||
}
|
||||
|
||||
fn on_request(&mut self, req: &Request) -> ws::Result<Response> {
|
||||
|
||||
@ -74,6 +74,10 @@ impl User for Anonymous {
|
||||
Ok(())
|
||||
}
|
||||
|
||||
fn disconnected(&self) -> Result<(), Error> {
|
||||
Ok(())
|
||||
}
|
||||
|
||||
fn receive(&mut self, data: Vec<u8>, _stripe: &StripeClient) -> Result<RpcMessage, Error> {
|
||||
match from_slice::<RpcRequest>(&data) {
|
||||
Ok(v) => {
|
||||
|
||||
@ -134,6 +134,11 @@ impl User for Authenticated {
|
||||
Ok(())
|
||||
}
|
||||
|
||||
fn disconnected(&self) -> Result<(), Error> {
|
||||
info!("user disconnected name={:?}", self.account.name);
|
||||
Ok(())
|
||||
}
|
||||
|
||||
fn receive(&mut self, data: Vec<u8>, stripe: &StripeClient) -> Result<RpcMessage, Error> {
|
||||
// cast the msg to this type to receive method name
|
||||
let begin = Instant::now();
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user