diff options
author | Jesse Luehrs <doy@tozt.net> | 2019-11-22 05:13:02 -0500 |
---|---|---|
committer | Jesse Luehrs <doy@tozt.net> | 2019-11-22 05:14:14 -0500 |
commit | 066aec146a075d0091903b490b6969a172b9d270 (patch) | |
tree | 981b3afd9144058a62395f37b0fc922caeb58f9e /teleterm-web/src/lib.rs | |
parent | 2d9a95dc9be95c8ab842ce58c49ab466752f2829 (diff) | |
download | teleterm-066aec146a075d0091903b490b6969a172b9d270.tar.gz teleterm-066aec146a075d0091903b490b6969a172b9d270.zip |
thread through the id to the actual message events
this is more accurate, since managing the lifetime of the websocket
connection is a bit tricky
Diffstat (limited to 'teleterm-web/src/lib.rs')
-rw-r--r-- | teleterm-web/src/lib.rs | 16 |
1 files changed, 4 insertions, 12 deletions
diff --git a/teleterm-web/src/lib.rs b/teleterm-web/src/lib.rs index 5c7d5c1..9ec713e 100644 --- a/teleterm-web/src/lib.rs +++ b/teleterm-web/src/lib.rs @@ -16,7 +16,7 @@ enum Msg { List(seed::fetch::ResponseDataResult<Vec<crate::model::Session>>), Refresh, StartWatching(String), - Watch(ws::WebSocketEvent), + Watch(String, ws::WebSocketEvent), } fn init(_: Url, orders: &mut impl Orders<Msg>) -> Init<crate::model::Model> { @@ -49,7 +49,7 @@ fn update( log(&format!("watching {}", id)); model.watch(&id, orders); } - Msg::Watch(event) => match event { + Msg::Watch(id, event) => match event { ws::WebSocketEvent::Connected(_) => { log("connected"); } @@ -58,18 +58,10 @@ fn update( model.watch_disconnect(); } ws::WebSocketEvent::Message(msg) => { - log(&format!( - "message from id {}: {:?}", - model.watch_id().unwrap(), - msg - )); + log(&format!("message from id {}: {:?}", id, msg)); } ws::WebSocketEvent::Error(e) => { - log(&format!( - "error from id {}: {:?}", - model.watch_id().unwrap(), - e - )); + log(&format!("error from id {}: {:?}", id, e)); } }, } |