aboutsummaryrefslogtreecommitdiff
path: root/bin/bot.ml
diff options
context:
space:
mode:
authorAdelyn Breelove <[email protected]>2018-12-12 15:23:14 -0700
committerAdelyn Breelove <[email protected]>2018-12-12 15:23:14 -0700
commitc046760eb599e42226c683aecbe33753dfc4d500 (patch)
tree69b2be155e7dfc52710cb5b7700c31fab633896c /bin/bot.ml
parentWork on event dispatch and add model derives (diff)
downloaddisml-c046760eb599e42226c683aecbe33753dfc4d500.tar.xz
disml-c046760eb599e42226c683aecbe33753dfc4d500.zip
Complete event dispatch
Diffstat (limited to 'bin/bot.ml')
-rw-r--r--bin/bot.ml41
1 files changed, 2 insertions, 39 deletions
diff --git a/bin/bot.ml b/bin/bot.ml
index c0a131d..d1a7ca3 100644
--- a/bin/bot.ml
+++ b/bin/bot.ml
@@ -5,47 +5,10 @@ module Client = Disml.Client.Make(struct
let token = match Sys.getenv "DISCORD_TOKEN" with
| Some t -> t
| None -> failwith "No token in env"
-end)
-
-(* let rec ev_loop read =
- Pipe.read read >>= fun frame ->
- match frame with
- | `Eof -> return ()
- | `Ok (t, data) -> begin
- match t with
- | "MESSAGE_CREATE" -> begin
- let msg = Model.to_message data in
- let msg_time = Time.(to_span_since_epoch @@ now ()) in
- let content = msg.content in
- let channel = msg.channel in
- if String.is_prefix ~prefix:"!?ping" content then begin
- Http.create_message channel @@ `Assoc [
- ("content", `String "Pong!");
- ("tts", `Bool false);
- ]
- >>> fun resp ->
- let message_id = Yojson.Basic.Util.(member "id" resp |> to_string) in
- let rtt = Time.(to_span_since_epoch @@ sub (now ()) msg_time) in
- Http.edit_message channel message_id @@ `Assoc [
- ("content", `String ("Pong! `" ^ (Float.to_string @@ Time.Span.to_ms rtt) ^ " ms`"));
- ]
- >>> fun _ -> print_endline "Message Edited!"
- end;
- return ()
- end
- | "GUILD_CREATE" -> begin
- let guild = Model.to_guild data in
- print_endline guild.name;
- return ()
- end
- | _ -> return ()
- end
- >>= fun _ -> ev_loop read *)
+end)(Handler)
let main () =
- let (_r,w) = Pipe.create () in
- let client = Client.init ~handler:w () in
- (* ev_loop r >>> ignore; *)
+ let client = Client.init () in
Client.start client
>>> fun client ->
Clock.every