aboutsummaryrefslogtreecommitdiff
path: root/bin/handler.ml
blob: 74eaefb55cb742f2111aa877699b585d00ed72e6 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
module Make(Models : Disml.S.Models) = struct
    open Core
    open Async
    open Models
    open Disml.Event

    let check_command (msg:Disml.Message_t.t) =
        if String.is_prefix ~prefix:"!ping" msg.content then
        Message.reply msg "Hello!" >>> 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