diff --git a/modules/framalink.py b/modules/framalink.py index 6e65ccd..7acc5a5 100644 --- a/modules/framalink.py +++ b/modules/framalink.py @@ -80,13 +80,13 @@ def gen_response(res, msg, srv): LAST_URLS = dict() -@hook("msg_default") +@hook.message() def parselisten(msg): parseresponse(msg) return None -@hook("all_post") +@hook.post() def parseresponse(msg): global LAST_URLS if hasattr(msg, "text") and msg.text: @@ -99,7 +99,7 @@ def parseresponse(msg): len(o.netloc) + len(o.path) < 17): continue - for recv in msg.receivers: + for recv in msg.to: if recv not in LAST_URLS: LAST_URLS[recv] = list() LAST_URLS[recv].append(url) @@ -108,7 +108,7 @@ def parseresponse(msg): # MODULE INTERFACE #################################################### -@hook("cmd_hook", "framalink", +@hook.command("framalink", help="Reduce any long URL", help_usage={ None: "Reduce the last URL said on the channel", diff --git a/modules/mediawiki.py b/modules/mediawiki.py index d2c4488..afc1ecb 100644 --- a/modules/mediawiki.py +++ b/modules/mediawiki.py @@ -151,7 +151,7 @@ def get_page(site, term, ssl=False, subpart=None): # NEMUBOT ############################################################# -def mediawiki_response(site, term, receivers): +def mediawiki_response(site, term, to): ns = get_namespaces(site) terms = term.split("#", 1) @@ -160,7 +160,7 @@ def mediawiki_response(site, term, receivers): # Print the article if it exists return Response(get_page(site, terms[0], subpart=terms[1] if len(terms) > 1 else None), line_treat=lambda line: irc_format(parse_wikitext(site, line, ns)), - channel=receivers) + channel=to) except: pass @@ -171,11 +171,11 @@ def mediawiki_response(site, term, receivers): if not len(os): os = [x for x, _ in search(site, terms[0]) if x is not None and x != ""] return Response(os, - channel=receivers, + channel=to, title="Article not found, would you mean") -@hook("cmd_hook", "mediawiki") +@hook.command("mediawiki") def cmd_mediawiki(msg): """Read an article on a MediaWiki""" if len(msg.args) < 2: @@ -183,16 +183,16 @@ def cmd_mediawiki(msg): return mediawiki_response(msg.args[0], " ".join(msg.args[1:]), - msg.receivers) + msg.to_response) -@hook("cmd_hook", "search_mediawiki") +@hook.command("search_mediawiki") def cmd_srchmediawiki(msg): """Search an article on a MediaWiki""" if len(msg.args) < 2: raise IMException("indicate a domain and a term to search") - res = Response(channel=msg.receivers, nomore="No more results", count=" (%d more results)") + res = Response(channel=msg.to_response, nomore="No more results", count=" (%d more results)") for r in search(msg.args[0], " ".join(msg.args[1:])): res.append_message("%s: %s" % r) @@ -200,11 +200,11 @@ def cmd_srchmediawiki(msg): return res -@hook("cmd_hook", "wikipedia") +@hook.command("wikipedia") def cmd_wikipedia(msg): if len(msg.args) < 2: raise IMException("indicate a lang and a term to search") return mediawiki_response(msg.args[0] + ".wikipedia.org", " ".join(msg.args[1:]), - msg.receivers) + msg.to_response) diff --git a/modules/more.py b/modules/more.py index 08be14b..c8b80a9 100644 --- a/modules/more.py +++ b/modules/more.py @@ -50,7 +50,7 @@ class Response: @property - def receivers(self): + def to(self): if self.channel is None: if self.nick is not None: return [self.nick] @@ -60,6 +60,7 @@ class Response: else: return [self.channel] + def append_message(self, message, title=None, shown_first_count=-1): if type(message) is str: message = message.split('\n') @@ -140,10 +141,10 @@ class Response: if self.nick: return DirectAsk(self.nick, self.get_message(maxlen - len(self.nick) - 2), - server=None, to=self.receivers) + server=None, to=self.to) else: return Text(self.get_message(maxlen), - server=None, to=self.receivers) + server=None, to=self.to) def __str__(self): @@ -245,7 +246,7 @@ def parseresponse(res): if isinstance(res, Response): if res.server not in SERVERS: SERVERS[res.server] = dict() - for receiver in res.receivers: + for receiver in res.to: if receiver in SERVERS[res.server]: nw, bk = SERVERS[res.server][receiver] else: diff --git a/modules/reddit.py b/modules/reddit.py index 74eae41..d3f03a1 100644 --- a/modules/reddit.py +++ b/modules/reddit.py @@ -19,7 +19,7 @@ def help_full(): LAST_SUBS = dict() -@hook("cmd_hook", "subreddit") +@hook.command("subreddit") def cmd_subreddit(msg): global LAST_SUBS if not len(msg.args): @@ -69,20 +69,20 @@ def cmd_subreddit(msg): return all_res -@hook("msg_default") +@hook.message() def parselisten(msg): parseresponse(msg) return None -@hook("all_post") +@hook.post() def parseresponse(msg): global LAST_SUBS if hasattr(msg, "text") and msg.text: urls = re.findall("www.reddit.com(/\w/\w+/?)", msg.text) for url in urls: - for recv in msg.receivers: + for recv in msg.to: if recv not in LAST_SUBS: LAST_SUBS[recv] = list() LAST_SUBS[recv].append(url) diff --git a/modules/youtube-title.py b/modules/youtube-title.py index e7da2c8..ebae4b6 100644 --- a/modules/youtube-title.py +++ b/modules/youtube-title.py @@ -52,7 +52,7 @@ def _get_ytdl(links): LAST_URLS = dict() -@hook("cmd_hook", "yt") +@hook.command("yt") def get_info_yt(msg): links = list() @@ -73,13 +73,13 @@ def get_info_yt(msg): return res -@hook("msg_default") +@hook.message() def parselisten(msg): parseresponse(msg) return None -@hook("all_post") +@hook.post() def parseresponse(msg): global LAST_URLS if hasattr(msg, "text") and msg.text: @@ -89,7 +89,7 @@ def parseresponse(msg): if o.scheme != "": if o.netloc == "" and len(o.path) < 10: continue - for recv in msg.receivers: + for recv in msg.to: if recv not in LAST_URLS: LAST_URLS[recv] = list() LAST_URLS[recv].append(url) diff --git a/nemubot/message/abstract.py b/nemubot/message/abstract.py index 3c69c8d..5d74549 100644 --- a/nemubot/message/abstract.py +++ b/nemubot/message/abstract.py @@ -51,11 +51,6 @@ class Abstract: return self.to - @property - def receivers(self): - # TODO: this is for legacy modules - return self.to_response - @property def channel(self): # TODO: this is for legacy modules