open Cmdid open Packet open Protocol let on_get_basic_info _pk = empty cmd_get_basic_info_sc_rsp let on_player_heartbeat pk = let dec = Pbrt.Decoder.of_string pk.body in let req = decode_pb_player_heart_beat_cs_req dec in let dec = Pbrt.Decoder.of_string (Base64.decode_exn "CDMQuQoa1gFDUy5Vbml0eUVuZ2luZS5HYW1lT2JqZWN0LkZpbmQoIlVJUm9vdC9BYm92ZURpYWxvZy9CZXRhSGludERpYWxvZyhDbG9uZSkiKTpHZXRDb21wb25lbnRJbkNoaWxkcmVuKHR5cGVvZihDUy5SUEcuQ2xpZW50LkxvY2FsaXplZFRleHQpKS50ZXh0ID0gIkxpbmdzaGFTUiBpcyBhIGZyZWUgYW5kIG9wZW4gc291cmNlIHNvZnR3YXJlLiBkaXNjb3JkLmdnL3JldmVyc2Vkcm9vbXMi") in let download_data = decode_pb_client_download_data dec in let timestamp = Int64.of_float (Unix.gettimeofday() *. 1000.0) in let rsp = { retcode = 0l; client_time_ms = req.client_time_ms; server_time_ms = timestamp; download_data = Some download_data } in pack cmd_player_heart_beat_sc_rsp encode_pb_player_heart_beat_sc_rsp rsp