do not send whole state on action

This commit is contained in:
Swrup 2022-12-26 02:06:13 +01:00
parent 1cb4f07c0a
commit cafba23610
6 changed files with 135 additions and 66 deletions

View file

@ -25,17 +25,15 @@ let on_event ws_event log_msg f =
let to_server_msg ev =
Format.printf "to_server_msg@.";
let data = Message.Ev.data (Ev.as_type ev) |> Jstr.to_string in
let state_res : (State.t, string) result = Network.unmarshal data in
let server_msg : Network.server_message = Network.unmarshal data in
Format.printf "un-marshaled message from server yay ~ @\n";
match state_res with
| Error e -> failwith (Format.sprintf "action resulted in error: %s" e)
| Ok state -> state
server_msg
let on_update_state_message f =
on_event Message.Ev.message "Websocket reveived message!" (fun ev ->
f (to_server_msg ev) )
let send msg =
let send (msg : Network.client_message) =
Format.printf "send msg on websocket ~~ @\n";
let s = Jstr.of_string (Network.marshal msg) in
Websocket.send_string ws s;