Commit Graph

152 Commits

Author SHA1 Message Date
tali 6824f95a6f move on_msg_{nick,user} around, take set_mode out of welcome 2024-01-22 12:31:32 -05:00
tali 39de7303d2 split Router into Router_types + User + Chan 2024-01-21 15:04:08 -05:00
tali 7372227578 parse and set +k/+l flags 2024-01-20 11:19:29 -05:00
tali 3641f4c773 add basic get/set channel mode 2024-01-18 13:28:48 -05:00
tali f58de239fa add basic parsing of channel mode flags 2024-01-18 13:28:23 -05:00
tali 8db310e2b0 add verification to prevent get/set other users' modes 2024-01-18 13:28:21 -05:00
tali 11640e4aa1 fix logic for setting modes, initial mode, get mode reply 2024-01-18 12:29:36 -05:00
tali 5a355b1e45 add Router.Chan.mode, currently unused 2024-01-18 12:01:52 -05:00
tali 7f941a68a1 refactor Router.relay to allow sending to multiple targets at once 2024-01-14 13:21:16 -05:00
tali d399ea73de add preliminary changing user modes 2024-01-14 12:50:43 -05:00
tali fc54fe8599 implement "MODE <user>" functionality, refactor welcome message 2024-01-14 12:50:43 -05:00
tali 65fdddaac6 add mode field to user 2024-01-14 12:50:43 -05:00
tali de6ff7abf6 add algorithm parsing user mode strings 2024-01-14 12:50:43 -05:00
tali b46d808e1f add Irc.Mode.Set datastructure, backed by simple bit operations 2024-01-14 11:32:20 -05:00
tali 76b31627b2 more logging tweaks 2024-01-11 22:43:17 -05:00
tali b868915d64 correctly handle some BS edge cases for PRIVMSG 2024-01-11 22:14:23 -05:00
tali 8b76a2b6db add logging library 2024-01-11 22:14:11 -05:00
tali 925bf747e7 fixup remove comment 2024-01-11 00:29:38 -05:00
tali 12266e37e7 consider tab to be whitespace 2024-01-11 00:24:06 -05:00
tali 4d95927bfa fix 001 reply formatting 2024-01-11 00:22:23 -05:00
tali f383706931 parse comma separated targets into individual commands 2024-01-11 00:22:21 -05:00
tali 1f81abfad2 use global state for Outbox "Bcc" 2024-01-10 23:41:01 -05:00
tali f47a383fa1 use result monad for Connection 2024-01-10 23:38:25 -05:00
tali 4e3a86d21a remove Lwt syntax global imports 2024-01-10 23:26:42 -05:00
tali 7a101e0620 yet another user register flow refactor 2024-01-10 22:49:07 -05:00
tali ae8b837c56 add TODO comments for various features missing from message handling 2024-01-10 19:43:20 -05:00
tali 15a4475d3c new improved Irc.Mode.t utility 2024-01-10 19:13:15 -05:00
tali fbf9211b5f remove use of Irc.Mode.t 2024-01-10 18:58:22 -05:00
tali d17e573e41 add part; part on quit; broadcast messages 2024-01-09 22:01:21 -05:00
tali 17e3739cfe preliminary channels impl 2024-01-09 21:27:46 -05:00
tali 7fb44540d9 add bcc api to outbox 2024-01-09 21:19:22 -05:00
tali b3ea5e5e10 basic nick/channel name validation 2024-01-09 20:32:36 -05:00
tali 347d19df59 fix edge case with trailing parameter serialization 2024-01-09 20:10:12 -05:00
tali 9b144cb712 rename Irc_server to just Server 2024-01-09 19:38:02 -05:00
tali c4be8f45a8 outbox module + fix quit handling yet again 2024-01-09 19:35:03 -05:00
tali bdf31dac5b support MOTD command 2024-01-08 01:15:41 -05:00
tali d340708d4f fix quit logic; echo QUIT message 2024-01-08 01:13:14 -05:00
tali e7e641f266 echo nick change message 2024-01-08 01:04:53 -05:00
tali a4ab2f3650 add RPL_ISUPPORT to welcome text 2024-01-08 00:56:16 -05:00
tali d310d4ad6e refactor lowercase hash key handling 2024-01-08 00:55:53 -05:00
tali 7b72410498 fix nickname assignment logic for the 1000th time 2024-01-08 00:42:09 -05:00
tali bd5afe7ad1 add fake JOIN command 2024-01-08 00:31:05 -05:00
tali 4dc454e9a2 privmsg between users; better cleanup on quit 2024-01-08 00:05:01 -05:00
tali 5e2384b855 working on routing 2024-01-07 23:14:32 -05:00
tali 4dc0d1b8a0 beefed up Irc.Msg.prefix 2024-01-07 18:51:26 -05:00
tali f46522ba65 create irc user modes module Irc.Mode 2024-01-07 18:51:18 -05:00
tali 3d4f9a987e rename Irc_msg to Irc.Msg 2024-01-07 16:29:12 -05:00
tali 150d25b1e0 user registration logic 2024-01-07 15:54:39 -05:00
tali 883b37afe1 basic tcp server with irc msg send/recv 2024-01-07 13:27:03 -05:00
tali 4e43ecd20b new improved message parsing 2024-01-06 19:30:57 -05:00