aboutsummaryrefslogtreecommitdiff
path: root/bin
diff options
context:
space:
mode:
authorAdelyn Breelove <[email protected]>2019-01-17 09:47:39 -0700
committerAdelyn Breelove <[email protected]>2019-01-17 09:47:39 -0700
commit8760c74b63eb44acad13829ef41b2e705f031ecb (patch)
tree90240eaaafc8f033c707fa00fdb3837ba485c0b9 /bin
parentMember methods are here (diff)
parentnew event dispatching (diff)
downloaddisml-8760c74b63eb44acad13829ef41b2e705f031ecb.tar.xz
disml-8760c74b63eb44acad13829ef41b2e705f031ecb.zip
Resolve non-ff merge
Diffstat (limited to 'bin')
-rw-r--r--bin/bot.ml18
-rw-r--r--bin/dune2
-rw-r--r--bin/handler.ml63
3 files changed, 7 insertions, 76 deletions
diff --git a/bin/bot.ml b/bin/bot.ml
index 7d7f714..3608f85 100644
--- a/bin/bot.ml
+++ b/bin/bot.ml
@@ -1,21 +1,15 @@
open Async
open Core
+open Disml
-module Client = Disml.Client.Make(struct
+let main () =
let token = match Sys.getenv "DISCORD_TOKEN" with
| Some t -> t
| None -> failwith "No token in env"
-end)(Handler)
-
-let main () =
- Client.start ()
- >>> fun client ->
- Clock.every
- (Time.Span.create ~sec:60 ())
- (fun () ->
- print_endline "Setting status";
- Client.set_status ~status:(`String "Hello!") client
- >>> ignore)
+ in
+ Client.start token
+ >>> ignore
let _ =
+ Client.message_create := (fun msg -> print_endline msg.content);
Scheduler.go_main ~main ()
diff --git a/bin/dune b/bin/dune
index 96be393..65360bc 100644
--- a/bin/dune
+++ b/bin/dune
@@ -1,5 +1,5 @@
(executable
(name bot)
- (modules bot handler)
+ (modules bot)
(libraries core async_ssl disml)
) \ No newline at end of file
diff --git a/bin/handler.ml b/bin/handler.ml
deleted file mode 100644
index 5afbbee..0000000
--- a/bin/handler.ml
+++ /dev/null
@@ -1,63 +0,0 @@
-module Make(Models : Disml.S.Models) = struct
- open Core
- open Async
- open Models
- open Disml.Event
-
- let check_command (msg:Message.t) =
- if String.is_prefix ~prefix:"!ping" msg.content then
- Message.reply msg "Pong!" >>> ignore
- else if String.is_prefix ~prefix:"!spam" msg.content then
- let count = String.chop_prefix_exn ~prefix:"!spam" msg.content |> String.strip |> Int.of_string in
- List.range 0 count
- |> List.iter ~f:(fun i -> Message.reply msg (string_of_int i) >>> ignore)
- else if String.is_prefix ~prefix:"!list" msg.content then
- let count = String.chop_prefix_exn ~prefix:"!list" msg.content |> String.strip |> Int.of_string in
- let list = List.range 0 count
- |> List.sexp_of_t Int.sexp_of_t
- |> Sexp.to_string_hum in
- Message.reply msg list >>> ignore
- else if String.is_prefix ~prefix:"!fold" msg.content then
- let count = String.chop_prefix_exn ~prefix:"!fold" msg.content |> String.strip |> Int.of_string in
- let list = List.range 0 count
- |> List.fold ~init:0 ~f:(+)
- |> Int.to_string in
- Message.reply msg list >>> ignore
-
- let handle_event = function
- | HELLO _ -> print_endline "Received HELLO"
- | READY _ -> print_endline "Received READY"
- | RESUMED _ -> print_endline "Received RESUMED"
- | INVALID_SESSION _ -> print_endline "Received INVALID_SESSION"
- | CHANNEL_CREATE _ -> print_endline "Received CHANNEL_CREATE"
- | CHANNEL_UPDATE _ -> print_endline "Received CHANNEL_UPDATE"
- | CHANNEL_DELETE _ -> print_endline "Received CHANNEL_DELETE"
- | CHANNEL_PINS_UPDATE _ -> print_endline "Received CHANNEL_PINS_UPDATE"
- | GUILD_CREATE _ -> print_endline "Received GUILD_CREATE"
- | GUILD_UPDATE _ -> print_endline "Received GUILD_UPDATE"
- | GUILD_DELETE _ -> print_endline "Received GUILD_DELETE"
- | GUILD_BAN_ADD _ -> print_endline "Received GUILD_BAN_ADD"
- | GUILD_BAN_REMOVE _ -> print_endline "Received GUILD_BAN_REMOVE"
- | GUILD_EMOJIS_UPDATE _ -> print_endline "Received GUILD_EMOJIS_UPDATE"
- | GUILD_INTEGRATIONS_UPDATE _ -> print_endline "Received GUILD_INTEGRATIONS_UPDATE"
- | GUILD_MEMBER_ADD _ -> print_endline "Received GUILD_MEMBER_ADD"
- | GUILD_MEMBER_REMOVE _ -> print_endline "Received GUILD_MEMBER_REMOVE"
- | GUILD_MEMBER_UPDATE _ -> print_endline "Received GUILD_MEMBER_UPDATE"
- | GUILD_MEMBERS_CHUNK _ -> print_endline "Received GUILD_MEMBERS_CHUNK"
- | GUILD_ROLE_CREATE _ -> print_endline "Received GUILD_ROLE_CREATE"
- | GUILD_ROLE_UPDATE _ -> print_endline "Received GUILD_ROLE_UPDATE"
- | GUILD_ROLE_DELETE _ -> print_endline "Received GUILD_ROLE_DELETE"
- | MESSAGE_CREATE msg -> check_command msg; print_endline "Received MESSAGE_CREATE"
- | MESSAGE_UPDATE _ -> print_endline "Received MESSAGE_UPDATE"
- | MESSAGE_DELETE _ -> print_endline "Received MESSAGE_DELETE"
- | MESSAGE_BULK_DELETE _ -> print_endline "Received MESSAGE_BULK_DELETE"
- | MESSAGE_REACTION_ADD _ -> print_endline "Received MESSAGE_REACTION_ADD"
- | MESSAGE_REACTION_REMOVE _ -> print_endline "Received MESSAGE_REACTION_REMOVE"
- | MESSAGE_REACTION_REMOVE_ALL _ -> print_endline "Received MESSAGE_REACTION_REMOVE_ALL"
- | PRESENCE_UPDATE _ -> print_endline "Received PRESENCE_UPDATE"
- | TYPING_START _ -> print_endline "Received TYPING_START"
- | USER_UPDATE _ -> print_endline "Received USER_UPDATE"
- | VOICE_STATE_UPDATE _ -> print_endline "Received VOICE_STATE_UPDATE"
- | VOICE_SERVER_UPDATE _ -> print_endline "Received VOICE_SERVER_UPDATE"
- | WEBHOOKS_UPDATE _ -> print_endline "Received WEBHOOKS_UPDATE"
-end