diff options
| author | Mishio595 <[email protected]> | 2018-11-10 16:34:47 -0700 |
|---|---|---|
| committer | Mishio595 <[email protected]> | 2018-11-10 16:34:47 -0700 |
| commit | 33d03d565acf6dbbf4841e54296ae7189730fbe9 (patch) | |
| tree | e8f53f32380620ae17624d569873a88858145e12 /bin | |
| parent | Add test executable to repo (diff) | |
| download | disml-33d03d565acf6dbbf4841e54296ae7189730fbe9.tar.xz disml-33d03d565acf6dbbf4841e54296ae7189730fbe9.zip | |
Initial multi-shard support
Diffstat (limited to 'bin')
| -rw-r--r-- | bin/bot.ml | 35 |
1 files changed, 11 insertions, 24 deletions
@@ -1,30 +1,17 @@ open Lwt.Infix open Animus -let _ = - let data = Lwt_main.run (Http.get_gateway_bot ()) in - (* Yojson.Basic.pretty_print Format.std_formatter data; - print_newline (); *) - let url, _shards = match data with - | `Assoc [ - ("url", `String url); - ("shards", `Int shards); - _ - ] -> (url, shards) - | _ -> ("wss://gateway.discord.gg/", 1) - in - (Sharder.Shard.create { - url; - shards = [0; 1;]; - token = Sys.getenv "DISCORD_TOKEN"; - } - >|= fun (shard, recv_loop) -> - Lwt_engine.on_timer 60.0 true @@ begin - fun _ev -> Sharder.Shard.set_status shard - ("Current seq: " ^ string_of_int shard.seq) - >|= (fun _ -> print_endline "Status set!") - |> ignore; +let main sharder = + Lwt_engine.on_timer 60.0 true begin + fun _ev -> Sharder.set_status sharder @@ `String "Testing..." + >|= (fun _ -> print_endline "Status set!") + |> ignore; end + +let _ = + Animus.Sharder.start @@ Sys.getenv "DISCORD_TOKEN" + >>= (fun sharder -> + main sharder |> ignore; - Lwt_main.run recv_loop) + Lwt_main.run sharder.promise) |> Lwt_main.run
\ No newline at end of file |