From 8f7a82a5d5066530ca022c306b14205ad5da6a16 Mon Sep 17 00:00:00 2001 From: deathbybandaid Date: Thu, 16 May 2019 15:12:19 -0400 Subject: [PATCH] triggers are self recieved --- sopel_modules/SpiceBot_Channels/Channels.py | 7 ------ .../SpiceBot_CommandsQuery/CommandsQuery.py | 7 ------ sopel_modules/SpiceBot_Events/Events.py | 18 +++++++-------- sopel_modules/SpiceBot_Events/System.py | 23 +++++++------------ sopel_modules/SpiceBot_GifSearch/gifsearch.py | 6 ----- .../SpiceBot_InvalidCommand/InvalidCommand.py | 2 -- sopel_modules/SpiceBot_Logs/ErrorDisplay.py | 1 - sopel_modules/SpiceBot_Logs/Logs.py | 7 ------ .../StartupMonologue.py | 6 ----- .../StartupMonologue_Display.py | 4 ---- 10 files changed, 16 insertions(+), 65 deletions(-) diff --git a/sopel_modules/SpiceBot_Channels/Channels.py b/sopel_modules/SpiceBot_Channels/Channels.py index b10fb57..928850f 100644 --- a/sopel_modules/SpiceBot_Channels/Channels.py +++ b/sopel_modules/SpiceBot_Channels/Channels.py @@ -61,7 +61,6 @@ def shutdown(bot): @sopel.module.event(botevents.BOT_CONNECTED) @sopel.module.rule('.*') def trigger_channel_list_initial(bot, trigger): - botevents.recieved(trigger) # Unkickable bot.write(('SAMODE', bot.nick, '+q')) @@ -132,9 +131,3 @@ def bot_part_empty(bot): bot.part(channel, "Leaving Empty Channel") if channel.lower() in bot.memory['SpiceBot_Channels']['channels']: del bot.memory['SpiceBot_Channels']['channels'][channel.lower()] - - -@sopel.module.event(botevents.BOT_CHANNELS) -@sopel.module.rule('.*') -def bot_events_setup(bot, trigger): - botevents.recieved(trigger) diff --git a/sopel_modules/SpiceBot_CommandsQuery/CommandsQuery.py b/sopel_modules/SpiceBot_CommandsQuery/CommandsQuery.py index dac3030..5de2458 100644 --- a/sopel_modules/SpiceBot_CommandsQuery/CommandsQuery.py +++ b/sopel_modules/SpiceBot_CommandsQuery/CommandsQuery.py @@ -173,7 +173,6 @@ def shutdown(bot): @sopel.module.event(botevents.BOT_LOADED) @sopel.module.rule('.*') def bot_events_complete(bot, trigger): - botevents.recieved(trigger) for comtype in bot.memory['SpiceBot_CommandsQuery']['commands'].keys(): if comtype not in ['module', 'nickname', 'rule']: @@ -212,9 +211,3 @@ def commandsquery_register(bot, command_type, validcoms, aliasfor=None): for comalias in comaliases: if comalias not in bot.memory['SpiceBot_CommandsQuery']['commands'][command_type].keys(): bot.memory['SpiceBot_CommandsQuery']['commands'][command_type][comalias] = {"aliasfor": aliasfor} - - -@sopel.module.event(botevents.BOT_COMMANDSQUERY) -@sopel.module.rule('.*') -def bot_events_setup(bot, trigger): - botevents.recieved(trigger) diff --git a/sopel_modules/SpiceBot_Events/Events.py b/sopel_modules/SpiceBot_Events/Events.py index 2fa3706..a6e161d 100644 --- a/sopel_modules/SpiceBot_Events/Events.py +++ b/sopel_modules/SpiceBot_Events/Events.py @@ -11,7 +11,7 @@ from sopel_modules.SpiceBot_SBTools import bot_logging import time -@botevents.event('001') +@sopel.module.event('001') @sopel.module.rule('.*') def bot_startup_connection(bot, trigger): botevents.trigger(bot, botevents.BOT_WELCOME, "Welcome to the SpiceBot Events System") @@ -21,33 +21,31 @@ def bot_startup_connection(bot, trigger): botevents.trigger(bot, botevents.BOT_CONNECTED, "Bot Connected to IRC") -@botevents.event(botevents.BOT_WELCOME) +@sopel.module.event(botevents.BOT_WELCOME) @sopel.module.rule('.*') def bot_events_start(bot, trigger): bot_logging(bot, 'SpiceBot_Events', trigger.args[1], True) - botevents.recieved(trigger) botevents.trigger(bot, botevents.BOT_READY, "Ready To Process module setup procedures") @botevents.startup_check_ready() -@botevents.event(botevents.BOT_READY) +@sopel.module.event(botevents.BOT_READY) @sopel.module.rule('.*') def bot_events_startup_complete(bot, trigger): botevents.trigger(bot, botevents.BOT_LOADED, "All registered modules setup procedures have completed") -@botevents.event(botevents.BOT_READY) +@sopel.module.event(botevents.BOT_READY) @sopel.module.rule('.*') def bot_events_ready(bot, trigger): bot_logging(bot, 'SpiceBot_Events', trigger.args[1], True) - botevents.recieved(trigger) -@botevents.event(botevents.BOT_CONNECTED) +@sopel.module.event(botevents.BOT_CONNECTED) @sopel.module.rule('.*') def bot_events_connected(bot, trigger): bot_logging(bot, 'SpiceBot_Events', trigger.args[1], True) - botevents.recieved(trigger) + while True: if len(botevents.SpiceBot_Events["trigger_queue"]): number = botevents.SpiceBot_Events["trigger_queue"][0]["number"] @@ -58,10 +56,10 @@ def bot_events_connected(bot, trigger): ) bot.dispatch(pretrigger) del botevents.SpiceBot_Events["trigger_queue"][0] + botevents.recieved({"number": number, "message": message}) -@botevents.event(botevents.BOT_LOADED) +@sopel.module.event(botevents.BOT_LOADED) @sopel.module.rule('.*') def bot_events_complete(bot, trigger): bot_logging(bot, 'SpiceBot_Events', trigger.args[1], True) - botevents.recieved(trigger) diff --git a/sopel_modules/SpiceBot_Events/System.py b/sopel_modules/SpiceBot_Events/System.py index 68a3347..5777e1a 100644 --- a/sopel_modules/SpiceBot_Events/System.py +++ b/sopel_modules/SpiceBot_Events/System.py @@ -46,16 +46,21 @@ class BotEvents(object): ":SpiceBot_Events " + number + " " + str(bot.nick) + " :" + message ) bot.dispatch(pretrigger) + self.recieved({"number": number, "message": message}) else: pretriggerdict = {"number": number, "message": message} self.SpiceBot_Events["trigger_queue"].append(pretriggerdict) def recieved(self, trigger): - eventnumber = str(trigger.event) - message_payload = trigger.args[1] + if isinstance(trigger, dict): + eventnumber = str(trigger["number"]) + message = str(trigger["message"]) + else: + eventnumber = str(trigger.event) + message = trigger.args[1] if eventnumber not in self.SpiceBot_Events["triggers_recieved"]: self.SpiceBot_Events["triggers_recieved"][eventnumber] = [] - self.SpiceBot_Events["triggers_recieved"][eventnumber].append(message_payload) + self.SpiceBot_Events["triggers_recieved"][eventnumber].append(message) def check(self, checklist): if not isinstance(checklist, list): @@ -96,18 +101,6 @@ class BotEvents(object): return _nop return actual_decorator - def event(self, *event_list): - def actual_decorator(function): - @functools.wraps(function) - def add_attribute(function): - if not hasattr(function, "event"): - function.event = [] - function.event.extend(event_list) - self.recieved(function) - return function - return add_attribute - return actual_decorator - botevents = BotEvents() diff --git a/sopel_modules/SpiceBot_GifSearch/gifsearch.py b/sopel_modules/SpiceBot_GifSearch/gifsearch.py index 0ef935e..2984d10 100644 --- a/sopel_modules/SpiceBot_GifSearch/gifsearch.py +++ b/sopel_modules/SpiceBot_GifSearch/gifsearch.py @@ -249,9 +249,3 @@ def getGif(bot, searchdict): # return dict gifdict['error'] = None return gifdict - - -@sopel.module.event(botevents.BOT_GIFSEARCH) -@sopel.module.rule('.*') -def bot_events_setup(bot, trigger): - botevents.recieved(trigger) diff --git a/sopel_modules/SpiceBot_InvalidCommand/InvalidCommand.py b/sopel_modules/SpiceBot_InvalidCommand/InvalidCommand.py index 559058a..17cbe0a 100644 --- a/sopel_modules/SpiceBot_InvalidCommand/InvalidCommand.py +++ b/sopel_modules/SpiceBot_InvalidCommand/InvalidCommand.py @@ -21,8 +21,6 @@ def shutdown(bot): @sopel.module.event(botevents.BOT_LOADED) @sopel.module.rule('.*') def bot_events_complete(bot, trigger): - botevents.recieved(trigger) - for comtype in bot.memory['SpiceBot_CommandsQuery']['commands'].keys(): bot.memory["SpiceBot_InvalidCommand"]["valid"].extend(bot.memory['SpiceBot_CommandsQuery']['commands'][comtype].keys()) diff --git a/sopel_modules/SpiceBot_Logs/ErrorDisplay.py b/sopel_modules/SpiceBot_Logs/ErrorDisplay.py index 1deb454..4b9762e 100644 --- a/sopel_modules/SpiceBot_Logs/ErrorDisplay.py +++ b/sopel_modules/SpiceBot_Logs/ErrorDisplay.py @@ -12,7 +12,6 @@ from .Logs import stdio_logs_fetch @sopel.module.event(botevents.BOT_STARTUPMONOLOGUE) @sopel.module.rule('.*') def bot_startup_monologue_start(bot, trigger): - botevents.recieved(trigger) debuglines = stdio_logs_fetch(bot) diff --git a/sopel_modules/SpiceBot_Logs/Logs.py b/sopel_modules/SpiceBot_Logs/Logs.py index 69cfc15..b3fd17d 100644 --- a/sopel_modules/SpiceBot_Logs/Logs.py +++ b/sopel_modules/SpiceBot_Logs/Logs.py @@ -46,7 +46,6 @@ def shutdown(bot): @sopel.module.event(botevents.BOT_CONNECTED) @sopel.module.rule('.*') def join_log_channel(bot, trigger): - botevents.recieved(trigger) if bot.config.SpiceBot_Logs.logging_channel: channel = bot.config.SpiceBot_Logs.logging_channel @@ -129,9 +128,3 @@ def get_running_pid(bot): pidnum = e pidnum = str(os.popen("systemctl show " + str(bot.nick) + " --property=MainPID").read()).split("=")[-1] return pidnum - - -@sopel.module.event(botevents.BOT_LOGS) -@sopel.module.rule('.*') -def bot_events_setup(bot, trigger): - botevents.recieved(trigger) diff --git a/sopel_modules/SpiceBot_StartupMonologue/StartupMonologue.py b/sopel_modules/SpiceBot_StartupMonologue/StartupMonologue.py index 032162a..4070864 100644 --- a/sopel_modules/SpiceBot_StartupMonologue/StartupMonologue.py +++ b/sopel_modules/SpiceBot_StartupMonologue/StartupMonologue.py @@ -14,9 +14,3 @@ def setup(bot): if 'SpiceBot_StartupMonologue' not in bot.memory: bot.memory['SpiceBot_StartupMonologue'] = [] - - -@sopel.module.event(botevents.BOT_STARTUPMONOLOGUE, botevents.BOT_STARTUPMONOLOGUE_CHANNELS, botevents.BOT_STARTUPMONOLOGUE_COMMANDSQUERY, botevents.BOT_STARTUPMONOLOGUE_CONNECTED) -@sopel.module.rule('.*') -def bot_events_setup(bot, trigger): - botevents.recieved(trigger) diff --git a/sopel_modules/SpiceBot_StartupMonologue/StartupMonologue_Display.py b/sopel_modules/SpiceBot_StartupMonologue/StartupMonologue_Display.py index 43c687e..e626b16 100644 --- a/sopel_modules/SpiceBot_StartupMonologue/StartupMonologue_Display.py +++ b/sopel_modules/SpiceBot_StartupMonologue/StartupMonologue_Display.py @@ -13,7 +13,6 @@ import time @sopel.module.event(botevents.BOT_CONNECTED) @sopel.module.rule('.*') def bot_startup_monologue_start(bot, trigger): - botevents.recieved(trigger) # Startup bot_logging(bot, 'SpiceBot_StartupMonologue', bot.nick + " is now starting. Please wait while I load my configuration") @@ -25,7 +24,6 @@ def bot_startup_monologue_start(bot, trigger): @sopel.module.event(botevents.BOT_COMMANDSQUERY) @sopel.module.rule('.*') def bot_startup_monologue_commands(bot, trigger): - botevents.recieved(trigger) availablecomsnum, availablecomsfiles = 0, 0 for commandstype in bot.memory['SpiceBot_CommandsQuery']['commands'].keys(): @@ -41,7 +39,6 @@ def bot_startup_monologue_commands(bot, trigger): @sopel.module.event(botevents.BOT_CHANNELS) @sopel.module.rule('.*') def bot_startup_monologue_channels(bot, trigger): - botevents.recieved(trigger) botcount = len(bot.channels.keys()) servercount = len(bot.memory['SpiceBot_Channels']['channels'].keys()) @@ -53,7 +50,6 @@ def bot_startup_monologue_channels(bot, trigger): @sopel.module.event(botevents.BOT_LOADED) @sopel.module.rule('.*') def bot_startup_monologue_display(bot, trigger): - botevents.recieved(trigger) timesince = humanized_time(time.time() - bot.memory["SpiceBot_Uptime"]) bot.memory['SpiceBot_StartupMonologue'].append("Startup took " + timesince)