diff --git a/IRCBot.py b/IRCBot.py index 7c515371..14a70fcf 100644 --- a/IRCBot.py +++ b/IRCBot.py @@ -21,8 +21,8 @@ class Bot(object): self.log = Logging.Log(self) self.line_handler = IRCLineHandler.LineHandler(self, self._events) self.timers = [] - self._events.on("timer").on("reconnect").hook(self.reconnect) - self._events.on("boot").on("done").hook(self.setup_timers) + self._events.on("timer.reconnect").hook(self.reconnect) + self._events.on("boot.done").hook(self.setup_timers) def add_server(self, id, alias, hostname, port, password, ipv4, tls, nickname, username, realname, connect=False): @@ -31,7 +31,7 @@ class Bot(object): realname) if not new_server.get_setting("connect", True): return - self._events.on("new").on("server").call(server=new_server) + self._events.on("new.server").call(server=new_server) if connect and new_server.get_setting("connect", True): self.connect(new_server) return new_server diff --git a/IRCServer.py b/IRCServer.py index f9067fc5..8c8606ac 100644 --- a/IRCServer.py +++ b/IRCServer.py @@ -70,7 +70,7 @@ class Server(object): if self.tls: self.tls_wrap() self.cached_fileno = self.socket.fileno() - self.events.on("timer").on("rejoin").hook(self.try_rejoin) + self.events.on("timer.rejoin").hook(self.try_rejoin) def __repr__(self): return "IRCServer.Server(%s)" % self.__str__() @@ -164,8 +164,7 @@ class Server(object): if not self.has_user(nickname): user_id = self.get_user_id(nickname) new_user = IRCUser.User(nickname, user_id, self, self.bot) - self.events.on("new").on("user").call( - user=new_user, server=self) + self.events.on("new.user").call(user=new_user, server=self) self.users[new_user.nickname_lower] = new_user self.new_users.add(new_user) return self.users[Utils.irc_lower(self, nickname)] @@ -189,8 +188,8 @@ class Server(object): channel_id = self.get_channel_id(channel_name) new_channel = IRCChannel.Channel(channel_name, channel_id, self, self.bot) - self.events.on("new").on("channel").call( - channel=new_channel, server=self) + self.events.on("new.channel").call(channel=new_channel, + server=self) self.channels[new_channel.name] = new_channel return self.channels[Utils.irc_lower(self, channel_name)] def get_channel_id(self, channel_name): @@ -364,13 +363,13 @@ class Server(object): if self.has_channel(target): channel = self.get_channel(target) channel.buffer.add_line(None, message, action, True) - self.events.on("self").on("message").on("channel").call( + self.events.on("self.message.channel").call( message=full_message, message_split=full_message_split, channel=channel, action=action, server=self) else: user = self.get_user(target) user.buffer.add_line(None, message, action, True) - self.events.on("self").on("message").on("private").call( + self.events.on("self.message.private").call( message=full_message, message_split=full_message_split, user=user, action=action, server=self) diff --git a/modules/accept_invite.py b/modules/accept_invite.py index 6dd476e1..e79cbfe9 100644 --- a/modules/accept_invite.py +++ b/modules/accept_invite.py @@ -2,7 +2,7 @@ import Utils class Module(object): def __init__(self, bot, events, exports): - events.on("received").on("invite").hook(self.on_invite) + events.on("received.invite").hook(self.on_invite) exports.add("serverset", {"setting": "accept-invites", "help": "Set whether I accept invites on this server", "validate": Utils.bool_or_none}) diff --git a/modules/bitcoin.py b/modules/bitcoin.py index ac291aa0..5be8bb96 100644 --- a/modules/bitcoin.py +++ b/modules/bitcoin.py @@ -4,9 +4,8 @@ class Module(object): _name = "BTC" def __init__(self, bot, events, exports): self.bot = bot - events.on("received").on("command").on("btc").hook( - self.btc, help="Get the exchange rate of bitcoins", - usage="[currency]") + events.on("received.command.btc").hook(self.btc, + help="Get the exchange rate of bitcoins", usage="[currency]") def btc(self, event): currency = (event["args"] or "USD").upper() diff --git a/modules/books.py b/modules/books.py index efea1670..409c8613 100644 --- a/modules/books.py +++ b/modules/books.py @@ -9,11 +9,11 @@ class Module(object): _name = "ISBN" def __init__(self, bot, events, exports): self.bot = bot - events.on("received").on("command").on("isbn").hook( - self.isbn, help="Get book information from a provided ISBN", + events.on("received.command.isbn").hook(self.isbn, + help="Get book information from a provided ISBN", min_args=1, usage="") - events.on("received").on("command").on("book").hook( - self.book, help="Get book information from a provided title", + events.on("received.command.book").hook(self.book, + help="Get book information from a provided title", min_args=1, usage="") def get_book(self, query, event): diff --git a/modules/bot_channel.py b/modules/bot_channel.py index fc4fe813..cbe50119 100644 --- a/modules/bot_channel.py +++ b/modules/bot_channel.py @@ -2,7 +2,7 @@ class Module(object): def __init__(self, bot, events, exports): - events.on("received").on("numeric").on("001").hook(self.do_join) + events.on("received.numeric.001").hook(self.do_join) exports.add("serverset", {"setting": "bot-channel", "help": "Set main channel"}) diff --git a/modules/check_mode.py b/modules/check_mode.py index 5819ef51..788f573c 100644 --- a/modules/check_mode.py +++ b/modules/check_mode.py @@ -3,7 +3,7 @@ class Module(object): def __init__(self, bot, events, exports): self.bot = bot - events.on("preprocess").on("command").hook(self.preprocess_command) + events.on("preprocess.command").hook(self.preprocess_command) def preprocess_command(self, event): if event["is_channel"] and event["hook"].kwargs.get( diff --git a/modules/coins.py b/modules/coins.py index 8912821c..ce1bae57 100644 --- a/modules/coins.py +++ b/modules/coins.py @@ -61,7 +61,7 @@ class Module(object): until_next_hour = 60-now.second until_next_hour += ((60-(now.minute+1))*60) - events.on("timer").on("coin-interest").hook(self.interest) + events.on("timer.coin-interest").hook(self.interest) bot.add_timer("coin-interest", INTEREST_INTERVAL, persist=False, next_due=time.time()+until_next_hour) diff --git a/modules/commands.py b/modules/commands.py index 74488ee7..1a8b631a 100644 --- a/modules/commands.py +++ b/modules/commands.py @@ -67,8 +67,8 @@ class Module(object): permission="unignore") events.on("new").on("user", "channel").hook(self.new) - events.on("send").on("stdout").hook(self.send_stdout) - events.on("send").on("stderr").hook(self.send_stderr) + events.on("send.stdout").hook(self.send_stdout) + events.on("send.stderr").hook(self.send_stderr) exports.add("channelset", {"setting": "command-prefix", "help": "Set the command prefix used in this channel"}) @@ -89,7 +89,7 @@ class Module(object): return command.lower() in self.events.on("received").on( "command").get_children() def get_hook(self, command): - return self.events.on("received").on("command").on(command + return self.events.on("received.command").on(command ).get_hooks()[0] def is_highlight(self, server, s): @@ -122,7 +122,7 @@ class Module(object): stdout, stderr = StdOut(module_name, target), StdErr(module_name, target) - returns = self.events.on("preprocess").on("command" + returns = self.events.on("preprocess.command" ).call(hook=hook, user=event["user"], server=event["server"], target=target, is_channel=is_channel, tags=event["tags"]) for returned in returns: @@ -143,7 +143,7 @@ class Module(object): args = " ".join(args_split) server = event["server"] user = event["user"] - self.events.on("received").on("command").on(command + self.events.on("received.command").on(command ).call_limited(1, user=user, server=server, target=target, buffer=buffer, args=args, args_split=args_split, stdout=stdout, stderr=stderr, @@ -179,7 +179,7 @@ class Module(object): command = event["args_split"][0].lower() if command in self.events.on("received").on( "command").get_children(): - hooks = self.events.on("received").on("command").on(command).get_hooks() + hooks = self.events.on("received.command").on(command).get_hooks() if hooks and "help" in hooks[0].kwargs: event["stdout"].write("%s: %s" % (command, hooks[0].kwargs["help"])) else: @@ -188,8 +188,8 @@ class Module(object): event["stderr"].write("Unknown command '%s'" % command) else: help_available = [] - for child in self.events.on("received").on("command").get_children(): - hooks = self.events.on("received").on("command").on(child).get_hooks() + for child in self.events.on("received.command").get_children(): + hooks = self.events.on("received.command").on(child).get_hooks() if hooks and "help" in hooks[0].kwargs: help_available.append(child) help_available = sorted(help_available) @@ -204,7 +204,7 @@ class Module(object): command = event["args_split"][0].lower() if command in self.events.on("received").on( "command").get_children(): - hooks = self.events.on("received").on("command").on(command).get_hooks() + hooks = self.events.on("received.command").on(command).get_hooks() if hooks and "usage" in hooks[0].kwargs: event["stdout"].write("Usage: %s%s %s" % (command_prefix, command, hooks[0].kwargs["usage"])) diff --git a/modules/ctcp.py b/modules/ctcp.py index 1a009d1d..70bb4d25 100644 --- a/modules/ctcp.py +++ b/modules/ctcp.py @@ -4,8 +4,7 @@ import Utils class Module(object): def __init__(self, bot, events, exports): self.bot = bot - events.on("received").on("message").on("private").hook( - self.private_message) + events.on("received.message.private").hook(self.private_message) exports.add("serverset", {"setting": "ctcp-responses", "help": "Set whether I respond to CTCPs on this server", "validate": Utils.bool_or_none}) diff --git a/modules/database_backup.py b/modules/database_backup.py index 32155b93..eeddbdf2 100644 --- a/modules/database_backup.py +++ b/modules/database_backup.py @@ -10,7 +10,7 @@ class Module(object): until_next_hour = 60-now.second until_next_hour += ((60-(now.minute+1))*60) - events.on("timer").on("database-backup").hook(self.backup) + events.on("timer.database-backup").hook(self.backup) bot.add_timer("database-backup", BACKUP_INTERVAL, persist=False, next_due=time.time()+until_next_hour) diff --git a/modules/define.py b/modules/define.py index b29520cd..3451aa5f 100644 --- a/modules/define.py +++ b/modules/define.py @@ -7,9 +7,8 @@ URL_WORDNIK = "http://api.wordnik.com:80/v4/word.json/%s/definitions" class Module(object): def __init__(self, bot, events, exports): self.bot = bot - events.on("received").on("command").on("define").hook( - self.define, help="Define a provided term", - usage="") + events.on("received.command.define").hook(self.define, + help="Define a provided term", usage="") def define(self, event): if event["args"]: diff --git a/modules/dns.py b/modules/dns.py index 112fcf43..e5552aa8 100644 --- a/modules/dns.py +++ b/modules/dns.py @@ -3,8 +3,7 @@ import socket class Module(object): _name = "DNS" def __init__(self, bot, events, exports): - events.on("received").on("command").on("dns").hook( - self.dns, min_args=1, + events.on("received.command.dns").hook(self.dns, min_args=1, help="Get all addresses for a given hostname (IPv4/IPv6)", usage="") diff --git a/modules/geoip.py b/modules/geoip.py index 0228daab..5eb6f017 100644 --- a/modules/geoip.py +++ b/modules/geoip.py @@ -5,10 +5,8 @@ URL_GEOIP = "http://ip-api.com/json/%s" class Module(object): _name = "GeoIP" def __init__(self, bot, events, exports): - events.on("received").on("command").on("geoip").hook( - self.geoip, min_args=1, - help="Get geoip data on a given IPv4/IPv6 address", - usage="") + events.on("received.command.geoip").hook(self.geoip, min_args=1, + help="Get geoip data on a given IPv4/IPv6 address", usage="") def geoip(self, event): page = Utils.get_url(URL_GEOIP % event["args_split"][0], diff --git a/modules/google.py b/modules/google.py index f7ef398f..986a7073 100644 --- a/modules/google.py +++ b/modules/google.py @@ -8,9 +8,8 @@ URL_GOOGLESEARCH = "https://www.googleapis.com/customsearch/v1" class Module(object): def __init__(self, bot, events, exports): self.bot = bot - events.on("received").on("command").on("google", - "g").hook(self.google, help="Google feeling lucky", - usage="[search term]") + events.on("received.command").on("google", "g").hook(self.google, + help="Google feeling lucky", usage="[search term]") def google(self, event): phrase = event["args"] or event["buffer"].get() diff --git a/modules/hash.py b/modules/hash.py index 38115411..e123da9a 100644 --- a/modules/hash.py +++ b/modules/hash.py @@ -3,9 +3,8 @@ import hashlib class Module(object): def __init__(self, bot, events, exports): self.bot = bot - events.on("received").on("command").on("hash" - ).hook(self.hash, min_args=2, help="Hash a string", - usage=" ") + events.on("received.command.hash").hook(self.hash, min_args=2, + help="Hash a string", usage=" ") def hash(self, event): algorithm = event["args_split"][0].lower() diff --git a/modules/haveibeenpwned.py b/modules/haveibeenpwned.py index 0af37b46..ce2b788d 100644 --- a/modules/haveibeenpwned.py +++ b/modules/haveibeenpwned.py @@ -5,10 +5,9 @@ URL_HAVEIBEENPWNED = "https://haveibeenpwned.com/" class Module(object): def __init__(self, bot, events, exports): - events.on("received").on("command").on("beenpwned").hook( - self.beenpwned, min_args=1, + events.on("received.command.beenpwned").hook(self.beenpwned, help="Find out if a username, email or similar has appeared " - "in any hacked databases", usage="") + "in any hacked databases", usage="", min_args=1) def beenpwned(self, event): page = Utils.get_url(URL_HAVEIBEENPWNEDAPI % event["args"], json=True, diff --git a/modules/imdb.py b/modules/imdb.py index b145d5b4..1e668523 100644 --- a/modules/imdb.py +++ b/modules/imdb.py @@ -10,10 +10,8 @@ class Module(object): _name = "IMDb" def __init__(self, bot, events, exports): self.bot = bot - events.on("received").on("command").on("imdb").hook( - self.imdb, min_args=1, - help="Search for a given title on IMDb", - usage="") + events.on("received.command.imdb").hook(self.imdb, min_args=1, + help="Search for a given title on IMDb", usage="") def imdb(self, event): page = Utils.get_url(URL_OMDB, get_params={ diff --git a/modules/in.py b/modules/in.py index 940a2dbb..3a1ddb87 100644 --- a/modules/in.py +++ b/modules/in.py @@ -7,10 +7,9 @@ SECONDS_MAX_DESCRIPTION = "8 weeks" class Module(object): def __init__(self, bot, events, exports): self.bot = bot - events.on("received").on("command").on("in").hook( - self.in_command, min_args=2, + events.on("received.command.in").hook(self.in_command, min_args=2, help="Set a reminder", usage="