Commit graph

3867 commits

Author SHA1 Message Date
dngfx
1d3f05a8fe Add .reloadallmodules, and fix permissions. 2018-09-23 11:01:24 +01:00
jesopo
9b5c6b030c Ask for alias of first server in start.py 2018-09-23 10:40:19 +01:00
dngfx
8b8c59ee21 Rename the functions to be more generic. 2018-09-23 10:23:12 +01:00
dngfx
a37dfe5301 Remove superfluous function. 2018-09-23 10:20:20 +01:00
dngfx
e8bdcf8f19 Remove intrusive styling. 2018-09-23 10:16:43 +01:00
dngfx
fdcf3e45c7 Add .randomword command, and change the api to use https 2018-09-23 09:52:53 +01:00
dngfx
0cb2c43ee3 Add setcoins command for admins, for people that abuse the coin game, or rewards and such. 2018-09-23 07:04:50 +01:00
dngfx
bb15f8b8e2 make last.fm say "is now playing", if they're currently playing. 2018-09-23 02:21:43 +01:00
dngfx
d335deed40 make last.fm say "is now playing", if they're currently playing. 2018-09-23 01:39:38 +01:00
dngfx
e5283ed2e2 Update last.fm to include a youtube link. Also change the module name to last.fm 2018-09-23 00:55:36 +01:00
dngfx
9220f84c27 clear channel.games properly. 2018-09-22 20:08:07 +01:00
dngfx
56afe77b52 Fix duck timing and stupid indenting. 2018-09-22 19:32:54 +01:00
dngfx
1a54c11df8 Fix ducks.py having a superfluous function 2018-09-22 19:28:57 +01:00
dngfx
febb6d66e3 font reset at the beginning of commands to stop wonkiness with highlighting and fix duck decoys. 2018-09-22 19:10:52 +01:00
dngfx
000ee14711 Make tweets say Twitter instead of tweets, and update ducks to add decoys and make minimum/unique a channel setting rather than hard setting. 2018-09-22 16:02:39 +01:00
jesopo
3c3583e30c Disable sed by default 2018-09-21 11:55:17 +01:00
jesopo
a87196c608 Change Utils.color to take a string to wrap in color 2018-09-21 11:39:09 +01:00
jesopo
62df014b29 Don't pass around full server details more than we have to. 2018-09-21 11:34:38 +01:00
jesopo
cc371e3ae0 Update a user's ircv3 account if a PRIVMSG has an "account" tag 2018-09-21 10:35:18 +01:00
jesopo
02d361c8b6 Show logging timestamp as UTC/GMT 2018-09-21 10:35:05 +01:00
jesopo
7108b05bc0 Only accept PROTOCOL_TLS as SSL handshake version 2018-09-19 14:44:28 +01:00
jesopo
ecb8698fb7 Don't send ducks when they're disabled. 2018-09-19 14:28:59 +01:00
jesopo
a0bb738abc Add eval.py 2018-09-19 14:14:51 +01:00
jesopo
287d031281 Add ModuleManager.BaseModule so modules don't *have* to implement __init__ 2018-09-19 13:28:18 +01:00
jesopo
fcbb7c960c Refactor everything to use delimited events 2018-09-19 13:25:12 +01:00
jesopo
b86ca6088f Fix some styling in ducks.py 2018-09-19 13:23:18 +01:00
jesopo
b8aca72861 Support hooking functions in modules with @Utils.hook 2018-09-19 12:37:41 +01:00
jesopo
f3d8d35083 Send a FONT_RESET (\x0F) after stderr module names because a bug in weechat
pre-2.2 means that because red colors are displayed as red+bold, the second
FONT_COLOR (\x03) only resets the red coloring, not the bold, meaning the rest
of the line is bold.
2018-09-19 02:22:30 +01:00
jesopo
b3609db92c Actually remove channels from channel_save when the bot leaves the channel 2018-09-19 01:41:53 +01:00
jesopo
702b6a4dd3 permissions._identified takes server, user and nickname 2018-09-19 01:19:04 +01:00
jesopo
7331443631 Handle pre-register server NOTICES like :server NOTICE Auth :text 2018-09-19 01:14:13 +01:00
jesopo
b7dda02951 Add optional aliases for IRCServers, mostly to make logging prettier. 2018-09-19 01:13:54 +01:00
jesopo
2abb3c6787 Only allow the register command on networks that support internal identity 2018-09-19 00:45:14 +01:00
jesopo
e6f25e31db User.id doesn't exist anymore; it's User.get_id() 2018-09-19 00:45:01 +01:00
jesopo
11e62bb945 Fix exception in commands.py any time anyone sends an empty or
whitespace-prefixed PRIVMSG
2018-09-19 00:44:04 +01:00
jesopo
af01bccaa5 Change log level to show in logs as "[LEVEL]" instead of " - LEVEL - " 2018-09-19 00:43:44 +01:00
jesopo
0c7d088230 Set IRCServer.channel_types to ["#"] by default 2018-09-17 22:08:54 +01:00
jesopo
fda223ee46 Implement __str__ and __repr__ on Utils.IRCHostmask 2018-09-17 21:49:32 +01:00
jesopo
4a3dbeb7b8 Also catch socket.timeout in IRCServer.read() 2018-09-17 20:59:50 +01:00
jesopo
c3e667e0a1 When we get a command without *any* arguments e.g. ":nick!user@host AWAY" don't
continue to parse that when we've seperated hostmask and command
2018-09-17 20:19:57 +01:00
jesopo
17f318acb6 'USER <username> 0 * :<realname>' is technically more correct, per RFC2812, than
"USER <username> - - :<realname>'
2018-09-17 13:49:48 +01:00
jesopo
f796fddee5 Typo in sasl.py; proceed with sasl regardless of mechanism when using CAP 3.1 2018-09-17 13:25:11 +01:00
jesopo
b07da8c8c0 Fix a copypaste fail that caused sasl.py to have two sasl_success functions 2018-09-17 13:10:22 +01:00
jesopo
840957fda4 Utils.irc_lower was returning an unchanged string because .replace on a string
returns a new string
2018-09-17 13:09:45 +01:00
jesopo
9bb81253cb In handling raw.part, remove_channel after calling self.part instead of before 2018-09-17 13:09:22 +01:00
jesopo
007ffec762 Handle 904 (ERR_SASLFAIL) in sasl.py 2018-09-17 12:57:03 +01:00
jesopo
d522997992 Don't just listen for 'sasl=PLAIN' in IRCv3 CAP 3.2 2018-09-17 11:49:23 +01:00
jesopo
c3482e78ba Add ability to not vertify a server's certificate ('ssl-verify') 2018-09-17 11:38:40 +01:00
jesopo
fad61c2664 Support EXTERNAL sasl authentication 2018-09-17 11:31:40 +01:00
jesopo
bb5ff8ee0d Fix highlight checking in commands.py 2018-09-17 11:31:29 +01:00