From 2cf80a320fe21cc4e9a2c847d46ab30ffe0be127 Mon Sep 17 00:00:00 2001 From: deathbybandaid Date: Tue, 14 May 2019 16:10:54 -0400 Subject: [PATCH] botevents instance --- sopel_modules/SpiceBot_AI/AI.py | 3 +- sopel_modules/SpiceBot_Channels/Channels.py | 3 +- .../SpiceBot_Channels/Channels_Command.py | 3 +- .../SpiceBot_CommandsQuery/CommandsQuery.py | 3 +- sopel_modules/SpiceBot_Events/Events.py | 3 +- sopel_modules/SpiceBot_Events/System.py | 55 ++++++++++--------- .../SpiceBot_InvalidCommand/InvalidCommand.py | 3 +- sopel_modules/SpiceBot_Logs/Logs.py | 3 +- .../StartupMonologue_Display.py | 3 +- 9 files changed, 45 insertions(+), 34 deletions(-) diff --git a/sopel_modules/SpiceBot_AI/AI.py b/sopel_modules/SpiceBot_AI/AI.py index 8fd489a..70b1e9a 100644 --- a/sopel_modules/SpiceBot_AI/AI.py +++ b/sopel_modules/SpiceBot_AI/AI.py @@ -7,7 +7,8 @@ import sopel.module import spicemanip from sopel_modules.SpiceBot_SBTools import sopel_triggerargs, googlesearch, bot_privs, inlist, inlist_match, similar_list -from sopel_modules.SpiceBot_Events.System import bot_events_check, botevents +from sopel_modules.SpiceBot_Events.System import bot_events_check, BotEvents +botevents = BotEvents() @sopel.module.nickname_commands('(.*)') diff --git a/sopel_modules/SpiceBot_Channels/Channels.py b/sopel_modules/SpiceBot_Channels/Channels.py index 34db283..d4edebb 100644 --- a/sopel_modules/SpiceBot_Channels/Channels.py +++ b/sopel_modules/SpiceBot_Channels/Channels.py @@ -6,12 +6,13 @@ from __future__ import unicode_literals, absolute_import, print_function, divisi import sopel.module from sopel.config.types import StaticSection, ValidatedAttribute, ListAttribute -from sopel_modules.SpiceBot_Events.System import bot_events_startup_register, bot_events_recieved, bot_events_trigger, botevents +from sopel_modules.SpiceBot_Events.System import bot_events_startup_register, bot_events_recieved, bot_events_trigger, BotEvents from sopel_modules.SpiceBot_SBTools import ( join_all_channels, chanadmin_all_channels, channel_list_current, bot_logging ) +botevents = BotEvents() import spicemanip diff --git a/sopel_modules/SpiceBot_Channels/Channels_Command.py b/sopel_modules/SpiceBot_Channels/Channels_Command.py index c7e69bc..1a48435 100644 --- a/sopel_modules/SpiceBot_Channels/Channels_Command.py +++ b/sopel_modules/SpiceBot_Channels/Channels_Command.py @@ -6,12 +6,13 @@ import sopel.module import spicemanip -from sopel_modules.SpiceBot_Events.System import bot_events_check, botevents +from sopel_modules.SpiceBot_Events.System import bot_events_check, BotEvents from sopel_modules.SpiceBot_SBTools import ( sopel_triggerargs, inlist, channel_privs, join_all_channels, channel_list_current, ) from .Channels import bot_part_empty +botevents = BotEvents() @sopel.module.nickname_commands('channels', 'channel') diff --git a/sopel_modules/SpiceBot_CommandsQuery/CommandsQuery.py b/sopel_modules/SpiceBot_CommandsQuery/CommandsQuery.py index 2d9e2ce..01bf797 100644 --- a/sopel_modules/SpiceBot_CommandsQuery/CommandsQuery.py +++ b/sopel_modules/SpiceBot_CommandsQuery/CommandsQuery.py @@ -7,8 +7,9 @@ import sopel.module import os -from sopel_modules.SpiceBot_Events.System import bot_events_startup_register, bot_events_recieved, bot_events_trigger, botevents +from sopel_modules.SpiceBot_Events.System import bot_events_startup_register, bot_events_recieved, bot_events_trigger, BotEvents from sopel_modules.SpiceBot_SBTools import bot_logging +botevents = BotEvents() import spicemanip diff --git a/sopel_modules/SpiceBot_Events/Events.py b/sopel_modules/SpiceBot_Events/Events.py index 730cb4f..46986c3 100644 --- a/sopel_modules/SpiceBot_Events/Events.py +++ b/sopel_modules/SpiceBot_Events/Events.py @@ -5,8 +5,9 @@ from __future__ import unicode_literals, absolute_import, division, print_functi import sopel.module from sopel.trigger import PreTrigger -from .System import bot_events_trigger, bot_events_recieved, bot_events_startup_check, bot_events_setup_check, botevents +from .System import bot_events_trigger, bot_events_recieved, bot_events_startup_check, bot_events_setup_check, BotEvents from sopel_modules.SpiceBot_SBTools import bot_logging +botevents = BotEvents() import time diff --git a/sopel_modules/SpiceBot_Events/System.py b/sopel_modules/SpiceBot_Events/System.py index 2d3eb28..455b49e 100644 --- a/sopel_modules/SpiceBot_Events/System.py +++ b/sopel_modules/SpiceBot_Events/System.py @@ -11,6 +11,35 @@ from sopel_modules.SpiceBot_SBTools import bot_logging from random import randint +class BotEvents(object): + """An dynamic listing of all the notable Bot numeric events. + + Events contained in this module will utilize the 1000-range + + All Other events will be tagged with a randomly generated + 4-digit number above 2000. + + This allows you to do, for example, ``@module.event(botevents.BOT_WELCOME)`` + rather than ``@module.event('1001')`` + """ + usednumbers = ['0', '1001', '1002', '1003', '1004'] + + BOT_WELCOME = '1001' + BOT_READY = '1002' + BOT_CONNECTED = '1003' + BOT_LOADED = '1004' + + def __getattr__(self, attr): + eventnumber = 0 + while eventnumber not in self.usednumbers: + eventnumber = randint(2000, 9999) + setattr(self, str(attr).upper(), str(eventnumber)) + self.usednumbers.append(str(eventnumber)) + + +botevents = BotEvents() + + def setup(bot): bot_logging(bot, 'SpiceBot_Events', "Starting setup procedure") bot_events_setup_check(bot) @@ -89,29 +118,3 @@ def bot_events_startup_check(bot): return False else: return True - - -class botevents(object): - """An dynamic listing of all the notable Bot numeric events. - - Events contained in this module will utilize the 1000-range - - All Other events will be tagged with a randomly generated - 4-digit number above 2000. - - This allows you to do, for example, ``@module.event(botevents.BOT_WELCOME)`` - rather than ``@module.event('1001')`` - """ - usednumbers = ['0', '1001', '1002', '1003', '1004'] - - BOT_WELCOME = '1001' - BOT_READY = '1002' - BOT_CONNECTED = '1003' - BOT_LOADED = '1004' - - def __getattr__(self, attr): - eventnumber = 0 - while eventnumber not in self.usednumbers: - eventnumber = randint(2000, 9999) - setattr(self, str(attr).upper(), str(eventnumber)) - self.usednumbers.append(str(eventnumber)) diff --git a/sopel_modules/SpiceBot_InvalidCommand/InvalidCommand.py b/sopel_modules/SpiceBot_InvalidCommand/InvalidCommand.py index 41c5f69..71dc9ae 100644 --- a/sopel_modules/SpiceBot_InvalidCommand/InvalidCommand.py +++ b/sopel_modules/SpiceBot_InvalidCommand/InvalidCommand.py @@ -5,7 +5,8 @@ from __future__ import unicode_literals, absolute_import, division, print_functi import sopel.module from sopel_modules.SpiceBot_SBTools import sopel_triggerargs -from sopel_modules.SpiceBot_Events.System import bot_events_check, bot_events_recieved, botevents +from sopel_modules.SpiceBot_Events.System import bot_events_check, bot_events_recieved, BotEvents +botevents = BotEvents() def setup(bot): diff --git a/sopel_modules/SpiceBot_Logs/Logs.py b/sopel_modules/SpiceBot_Logs/Logs.py index 4be59f0..dc4584b 100644 --- a/sopel_modules/SpiceBot_Logs/Logs.py +++ b/sopel_modules/SpiceBot_Logs/Logs.py @@ -6,7 +6,8 @@ import sopel.module from sopel.config.types import StaticSection, ValidatedAttribute from sopel_modules.SpiceBot_SBTools import bot_logging -from sopel_modules.SpiceBot_Events.System import bot_events_startup_register, bot_events_recieved, bot_events_trigger, botevents +from sopel_modules.SpiceBot_Events.System import bot_events_startup_register, bot_events_recieved, bot_events_trigger, BotEvents +botevents = BotEvents() import os diff --git a/sopel_modules/SpiceBot_StartupMonologue/StartupMonologue_Display.py b/sopel_modules/SpiceBot_StartupMonologue/StartupMonologue_Display.py index 810f667..6fad94c 100644 --- a/sopel_modules/SpiceBot_StartupMonologue/StartupMonologue_Display.py +++ b/sopel_modules/SpiceBot_StartupMonologue/StartupMonologue_Display.py @@ -4,8 +4,9 @@ from __future__ import unicode_literals, absolute_import, division, print_functi import sopel.module -from sopel_modules.SpiceBot_Events.System import bot_events_recieved, bot_events_trigger, botevents +from sopel_modules.SpiceBot_Events.System import bot_events_recieved, bot_events_trigger, BotEvents from sopel_modules.SpiceBot_SBTools import humanized_time, bot_logging +botevents = BotEvents() import time