Commit graph

1497 commits

Author SHA1 Message Date
jesopo
fa18d5ca4c Get user to do get_id() on in coins.py 2018-09-05 13:32:21 +01:00
jesopo
1cc850350d user.id -> user._id; forgot to do this 2018-09-05 13:00:04 +01:00
jesopo
12143af562 Add another control to prevent coin duplication if someone manages to send coins
to themselves
2018-09-05 12:58:30 +01:00
jesopo
f2aeaf7797 Don't use IRCUser.id ever, use IRCUser.get_id() 2018-09-05 12:58:12 +01:00
jesopo
ec119e3dcf Correctly keep track of IRCUser.identified_account_id 2018-09-05 12:04:34 +01:00
jesopo
6bd6f2492b Support IRCv3's account-notify/extended-join along with WHOX to replace internal
register/identify
2018-09-05 11:58:10 +01:00
jesopo
0d6e888380 ACCOUNT doesn't use message-tags, duh! 2018-09-05 08:30:13 +01:00
dngfx
5961ff1725 Update duck timer 2018-09-04 13:01:54 +01:00
jesopo
55be2a3586 twitter.py -> tweets.py 2018-09-04 11:30:00 +01:00
jesopo
a4237df4e9 Change IRCLineHandler to use delimited events 2018-09-04 10:41:16 +01:00
jesopo
0d863a4239 Track a user's away status in IRCUser 2018-09-04 10:15:20 +01:00
jesopo
be39669580 Fix a huge security issue: sign users out when they change nickname 2018-09-04 10:00:42 +01:00
jesopo
345bc18366 Add IRCUser.identified_account for ACCOUNT/extended-join 2018-09-04 09:18:14 +01:00
jesopo
c5a3ce4987 Don't get_user before we've seperated userhost-in-names hostmasks 2018-09-04 08:12:45 +01:00
jesopo
462b0f5f0e Utils.seperate_hostmask has been broken all this time! usernames were coming out
as nickname!username
2018-09-04 08:12:09 +01:00
jesopo
d72c15c956 Most userhost-in-names check to after mode prefix checking 2018-09-04 08:04:49 +01:00
jesopo
1c3c56e7f4 Use "draft/message-tags-0.2" IRCv3 capability to actually be able to receive
TAGMSG
2018-09-04 07:35:26 +01:00
jesopo
e5e9a6fc65 idle-notify un-away messages don't have *any* args - this caused BitBot to crash
in IRCLineHandler.handle
2018-09-04 07:20:27 +01:00
jesopo
b989b720eb Debug log raw data 2018-09-04 07:20:17 +01:00
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
b64e0078d3 Add !reconnect in admin.py 2018-09-03 18:21:13 +01:00
jesopo
d528656ba5 Add database_backup.py for rotated database backups 2018-09-03 18:20:53 +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
6e257c6e1b Only offer sasl when we have sasl authentication to send 2018-09-03 12:38:51 +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
06a750edbd Remove channel from autojoin when BitBot parts it 2018-09-03 12:22:06 +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
6a627d9f36 Added !resetpassword in permissions.py 2018-09-03 11:30:54 +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
61b2682c93 Add greeting.py 2018-09-03 08:29:58 +01:00
jesopo
ecc93183f5 Print mode changes in print_activity 2018-09-02 22:41:04 +01:00
jesopo
3f79154e2b received.mode -> received.mode.channel (and bugfixes!) 2018-09-02 22:40:41 +01:00
jesopo
72e991f4a5 up min/max duck show time in ducks.py 2018-09-02 20:14:24 +01:00
jesopo
8c6ab17e57 give an Exports object (actually, ExportsContex object) to each module, to
facilitate things like !set and !channelset without using the events system
2018-09-02 19:54:45 +01:00
jesopo
3ecd938de2 IRCLogging -> Logging 2018-09-02 19:52:18 +01:00
jesopo
b21604b71f Add virustotal-api-key to bot.conf.example 2018-09-02 18:39:31 +01:00
jesopo
14a9e4a6a4 Also optionally (attempt to) kick users that send malicious urls in
check_urls.py
2018-09-02 11:50:47 +01:00