Commit graph

64 commits

Author SHA1 Message Date
jesopo
dcba6d2c6e Support IRCv3's userhost-in-names 2018-09-04 07:11:02 +01:00
jesopo
3ca0230733 Fix referencing account tag for ACCOUNT in IRCLineHandler 2018-09-04 07:01:59 +01:00
jesopo
d90a5164da Nope, revert echo-message support. a certain network only offers it in channel,
not private.
2018-09-03 22:32:48 +01:00
jesopo
1c474771c5 Support IRCv3's echo-message 2018-09-03 22:17:34 +01:00
jesopo
759cd64f33 Keep a list of CAP capabilities in IRCServer 2018-09-03 22:17:01 +01:00
jesopo
94945da9be Support IRCv3's away-notify 2018-09-03 21:58:26 +01:00
jesopo
b7637d42bf server -> event["server"] 2018-09-03 21:58:14 +01:00
jesopo
ad775239b2 Send message-tags through PRIVMSG, NOTICE and !commands 2018-09-03 21:49:22 +01:00
jesopo
5963308bdc Support TAGMSG in IRCLineHandler 2018-09-03 21:47:59 +01:00
jesopo
c0130a34eb IRCv3 message tag value should not be an array 2018-09-03 20:04:58 +01:00
jesopo
36904af986 tag_split, not tag 2018-09-03 12:45:27 +01:00
jesopo
4368c69035 Handle empty tag sections, e.g. "@;tag=value" 2018-09-03 12:42:50 +01:00
jesopo
bbcc86dc24 Support ircv3's extended-join 2018-09-03 12:37:07 +01:00
jesopo
dea6fbce0f Support account-tag and account-notify 2018-09-03 12:31:00 +01:00
jesopo
6d8ac4d10a typo! targer -> target 2018-09-03 12:16:27 +01:00
jesopo
9d95581c44 Support IRCv3's chghost and invite-notify 2018-09-03 11:47:11 +01:00
jesopo
0f578b1ec1 Send CAP END when we're not waiting for any capability handshakes 2018-09-03 11:18:20 +01:00
jesopo
29851d4305 Make CAP functionality more part of the framework and support message-tags and
multi-prefix
2018-09-03 11:14:52 +01:00
jesopo
3f79154e2b received.mode -> received.mode.channel (and bugfixes!) 2018-09-02 22:40:41 +01:00
jesopo
da1e87e335 Some networks don't prefix channel names in INVITE messages 2018-08-31 13:20:35 +01:00
jesopo
9874f79b49 Give modules event objects with "context"s, to facilitate purging all the event
hooks for a module
2018-08-31 12:55:52 +01:00
jesopo
a31ee247aa Fix a copy paste fail in IRCLineHandler that caused PARTs to be handled as QUITs 2018-08-31 10:33:53 +01:00
jesopo
b216ed081b Add missing ":" in IRCLineHandler.LineHandler.mode() 2018-08-30 11:15:18 +01:00
jesopo
bfca9bc207 default events on IRCLineHandler should use original_line, not line 2018-08-30 11:13:05 +01:00
jesopo
9b7c7035f9 Refactor handling MODE in IRCLineHandler 2018-08-30 11:12:48 +01:00
jesopo
669aa32c31 Report actual topic setter (use 333, not 332) 2018-08-29 15:17:06 +01:00
jesopo
3ec521538a Print topics in print_activity.py 2018-08-29 14:57:40 +01:00
jesopo
4045c55ba3 Add missing comments in IRCLineHandler.LineHandler 2018-08-29 12:54:47 +01:00
jesopo
bb3eaff14a Fix CAP logic that was broken by recent IRCLineHandler refactor 2018-08-29 12:44:09 +01:00
jesopo
0b95dfb98b Do a default event for received data if there's no hooks for it 2018-08-29 12:43:54 +01:00
jesopo
fead75cd2f Refactor IRCLineHandler in to an object that uses .on("raw") events 2018-08-29 12:20:25 +01:00
jesopo
f2b2ac52e7 Send a PONG event, use the right arg when sending a WHO 2018-08-28 15:14:22 +01:00
jesopo
ef16817ad5 Switch to time.monotonic for comparisons, only send data at most once every .5
seconds and only send max 512 bytes at a time
2018-08-28 14:36:16 +01:00
jesopo
e5a5fa5c4b modules/logging.py -> IRCLogging.py; IRCLog.py -> IRCBuffer.py; change logging
to be an object on the server object instead of an event call
2018-08-28 12:23:57 +01:00
jesopo
92617895e4 "self.nick" event didn't get updated 2018-08-03 16:39:53 +01:00
jesopo
2ea2dd17da implemented handling notices in IRCLineHandler, including server notices 2018-07-22 21:46:22 +01:00
jesopo
f84a05aec5 check if a channel is in attempted_join before attempting rejoin 2018-07-15 23:54:27 +01:00
jesopo
f961c95de9 only pass things needed through events, not **data.map() 2018-07-14 10:18:28 +01:00
jesopo
29c55246b0 Clear default mode prefixes when we get a 005 with mode prefixes in it 2018-07-02 16:25:34 +01:00
jesopo
1148aad8a4 added handle_KICK to IRCLineHandler 2018-07-02 11:08:04 +01:00
jesopo
9f6a3b600a Remove commented example raw IRC line from IRCLineHandler 2018-06-17 12:51:23 +01:00
jesopo
46d8bd879e Fix crash on PRIVMSG with nothing but whitespace 2018-01-13 22:21:53 +00:00
jesopo
0cc72d5d66 Added a "replay" system to EventManager hooks, to replay missed .calls 2017-12-26 10:32:36 +00:00
jesopo
55ff2dd5f7 capibility ➡️ capability 2017-11-01 14:20:15 +00:00
jesopo
e63438e2bb Add OP_NO_TLSv1 and fix a bug created while fixing another bug 2017-11-01 14:16:01 +00:00
jesopo
0df7abb03e Handle empty CAP, additional IRCLog feature, better tls, better channel_save logic, add sed-sender-only setting
Signed-off-by: jesopo <github@lolnerd.net>
2017-10-27 13:15:33 +01:00
Evelyn
34d0bd4dcb Don't break on an empty quit message 2017-09-18 10:35:30 +01:00
Evelyn
ff31dd2bb0 oops, that should be data.args, not args >.> 2017-07-20 21:19:56 +01:00
Evelyn
5466edfafe Don't assume a reason will always be present in a PART 2017-07-20 21:12:42 +01:00
Evelyn
e245b64b58 fix the privmsg 2017-07-18 18:39:23 +01:00