mirror of
https://github.com/SpiceBot/SpiceBot.git
synced 2026-11-13 06:59:53 -05:00
Remove Loadorder system and update logic for commandsquery
This commit is contained in:
parent
32e216e7a3
commit
999bfca80c
@ -6,7 +6,6 @@ from __future__ import unicode_literals, absolute_import, print_function, divisi
|
|||||||
import sopel.module
|
import sopel.module
|
||||||
from sopel.config.types import StaticSection, ValidatedAttribute, ListAttribute
|
from sopel.config.types import StaticSection, ValidatedAttribute, ListAttribute
|
||||||
|
|
||||||
from sopel_modules.SpiceBot_LoadOrder.LoadOrder import startup_bot_event, set_bot_event
|
|
||||||
from sopel_modules.SpiceBot_Events.System import bot_events_startup_register, bot_events_recieved, bot_events_trigger
|
from sopel_modules.SpiceBot_Events.System import bot_events_startup_register, bot_events_recieved, bot_events_trigger
|
||||||
|
|
||||||
from sopel_modules.SpiceBot_SBTools import (
|
from sopel_modules.SpiceBot_SBTools import (
|
||||||
@ -38,8 +37,6 @@ def setup(bot):
|
|||||||
bot_logging(bot, 'SpiceBot_Channels', "Starting setup procedure")
|
bot_logging(bot, 'SpiceBot_Channels', "Starting setup procedure")
|
||||||
bot_events_startup_register(bot, ['2001'])
|
bot_events_startup_register(bot, ['2001'])
|
||||||
|
|
||||||
startup_bot_event(bot, "SpiceBot_Channels")
|
|
||||||
|
|
||||||
bot.config.define_section("SpiceBot_Channels", SpiceBot_Channels_MainSection, validate=False)
|
bot.config.define_section("SpiceBot_Channels", SpiceBot_Channels_MainSection, validate=False)
|
||||||
|
|
||||||
if "SpiceBot_Channels" not in bot.memory:
|
if "SpiceBot_Channels" not in bot.memory:
|
||||||
@ -76,7 +73,6 @@ def trigger_channel_list_initial(bot, trigger):
|
|||||||
channel_list_current(bot)
|
channel_list_current(bot)
|
||||||
foundchannelcount = len(bot.memory['SpiceBot_Channels']['channels'].keys())
|
foundchannelcount = len(bot.memory['SpiceBot_Channels']['channels'].keys())
|
||||||
bot_logging(bot, 'SpiceBot_Channels', "Channel listing finished! " + str(foundchannelcount) + " channel(s) found.")
|
bot_logging(bot, 'SpiceBot_Channels', "Channel listing finished! " + str(foundchannelcount) + " channel(s) found.")
|
||||||
set_bot_event(bot, "SpiceBot_Channels")
|
|
||||||
bot_events_trigger(bot, 2001, "SpiceBot_Channels")
|
bot_events_trigger(bot, 2001, "SpiceBot_Channels")
|
||||||
|
|
||||||
join_all_channels(bot)
|
join_all_channels(bot)
|
||||||
|
|||||||
@ -7,7 +7,6 @@ import sopel.module
|
|||||||
|
|
||||||
import os
|
import os
|
||||||
|
|
||||||
from sopel_modules.SpiceBot_LoadOrder.LoadOrder import set_bot_event, startup_bot_event
|
|
||||||
from sopel_modules.SpiceBot_Events.System import bot_events_startup_register, bot_events_recieved, bot_events_trigger
|
from sopel_modules.SpiceBot_Events.System import bot_events_startup_register, bot_events_recieved, bot_events_trigger
|
||||||
from sopel_modules.SpiceBot_SBTools import bot_logging
|
from sopel_modules.SpiceBot_SBTools import bot_logging
|
||||||
|
|
||||||
@ -18,8 +17,6 @@ def setup(bot):
|
|||||||
bot_logging(bot, 'SpiceBot_CommandsQuery', "Starting setup procedure")
|
bot_logging(bot, 'SpiceBot_CommandsQuery', "Starting setup procedure")
|
||||||
bot_events_startup_register(bot, ['2002'])
|
bot_events_startup_register(bot, ['2002'])
|
||||||
|
|
||||||
startup_bot_event(bot, "SpiceBot_CommandsQuery")
|
|
||||||
|
|
||||||
if 'SpiceBot_CommandsQuery' not in bot.memory:
|
if 'SpiceBot_CommandsQuery' not in bot.memory:
|
||||||
bot.memory['SpiceBot_CommandsQuery'] = {"counts": {}, "commands": {}}
|
bot.memory['SpiceBot_CommandsQuery'] = {"counts": {}, "commands": {}}
|
||||||
|
|
||||||
@ -115,32 +112,32 @@ def setup(bot):
|
|||||||
validcomdict = {"comtype": comtype, "validcoms": validcoms}
|
validcomdict = {"comtype": comtype, "validcoms": validcoms}
|
||||||
filelinelist.append(validcomdict)
|
filelinelist.append(validcomdict)
|
||||||
|
|
||||||
for atlinefound in filelinelist:
|
if len(filelinelist):
|
||||||
|
|
||||||
comtype = atlinefound["comtype"]
|
|
||||||
validcoms = atlinefound["validcoms"]
|
|
||||||
|
|
||||||
bot.memory['SpiceBot_CommandsQuery']['counts'][comtype] += 1
|
bot.memory['SpiceBot_CommandsQuery']['counts'][comtype] += 1
|
||||||
|
|
||||||
# default command to filename
|
for atlinefound in filelinelist:
|
||||||
if "validcoms" not in dict_from_file.keys():
|
|
||||||
dict_from_file["validcoms"] = validcoms
|
|
||||||
|
|
||||||
maincom = dict_from_file["validcoms"][0]
|
comtype = atlinefound["comtype"]
|
||||||
if len(dict_from_file["validcoms"]) > 1:
|
validcoms = atlinefound["validcoms"]
|
||||||
comaliases = spicemanip.main(dict_from_file["validcoms"], '2+', 'list')
|
|
||||||
else:
|
|
||||||
comaliases = []
|
|
||||||
|
|
||||||
bot.memory['SpiceBot_CommandsQuery']['commands'][comtype][maincom] = dict_from_file
|
# default command to filename
|
||||||
for comalias in comaliases:
|
if "validcoms" not in dict_from_file.keys():
|
||||||
if comalias not in bot.memory['SpiceBot_CommandsQuery']['commands'][comtype].keys():
|
dict_from_file["validcoms"] = validcoms
|
||||||
bot.memory['SpiceBot_CommandsQuery']['commands'][comtype][comalias] = {"aliasfor": maincom}
|
|
||||||
|
maincom = dict_from_file["validcoms"][0]
|
||||||
|
if len(dict_from_file["validcoms"]) > 1:
|
||||||
|
comaliases = spicemanip.main(dict_from_file["validcoms"], '2+', 'list')
|
||||||
|
else:
|
||||||
|
comaliases = []
|
||||||
|
|
||||||
|
bot.memory['SpiceBot_CommandsQuery']['commands'][comtype][maincom] = dict_from_file
|
||||||
|
for comalias in comaliases:
|
||||||
|
if comalias not in bot.memory['SpiceBot_CommandsQuery']['commands'][comtype].keys():
|
||||||
|
bot.memory['SpiceBot_CommandsQuery']['commands'][comtype][comalias] = {"aliasfor": maincom}
|
||||||
|
|
||||||
for comtype in ['module', 'nickname', 'rule']:
|
for comtype in ['module', 'nickname', 'rule']:
|
||||||
bot_logging(bot, 'SpiceBot_CommandsQuery', "Found " + str(len(bot.memory['SpiceBot_CommandsQuery']['commands'][comtype].keys())) + " " + comtype + " commands.")
|
bot_logging(bot, 'SpiceBot_CommandsQuery', "Found " + str(len(bot.memory['SpiceBot_CommandsQuery']['commands'][comtype].keys())) + " " + comtype + " commands.")
|
||||||
|
|
||||||
set_bot_event(bot, "SpiceBot_CommandsQuery")
|
|
||||||
bot_events_trigger(bot, 2002, "SpiceBot_CommandsQuery")
|
bot_events_trigger(bot, 2002, "SpiceBot_CommandsQuery")
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -5,7 +5,6 @@ from __future__ import unicode_literals, absolute_import, division, print_functi
|
|||||||
import sopel.module
|
import sopel.module
|
||||||
from sopel.config.types import StaticSection, ValidatedAttribute
|
from sopel.config.types import StaticSection, ValidatedAttribute
|
||||||
|
|
||||||
from sopel_modules.SpiceBot_LoadOrder.LoadOrder import set_bot_event, startup_bot_event
|
|
||||||
from sopel_modules.SpiceBot_Events.System import bot_events_startup_register, bot_events_recieved, bot_events_trigger
|
from sopel_modules.SpiceBot_Events.System import bot_events_startup_register, bot_events_recieved, bot_events_trigger
|
||||||
|
|
||||||
from sopel_modules.SpiceBot_CommandsQuery.CommandsQuery import commandsquery_register
|
from sopel_modules.SpiceBot_CommandsQuery.CommandsQuery import commandsquery_register
|
||||||
@ -54,8 +53,6 @@ def setup(bot):
|
|||||||
bot_logging(bot, 'SpiceBot_GifSearch', "Starting Setup Procedure")
|
bot_logging(bot, 'SpiceBot_GifSearch', "Starting Setup Procedure")
|
||||||
bot_events_startup_register(bot, ['2003'])
|
bot_events_startup_register(bot, ['2003'])
|
||||||
|
|
||||||
startup_bot_event(bot, "SpiceBot_GifSearch")
|
|
||||||
|
|
||||||
if 'SpiceBot_GifSearch' not in bot.memory:
|
if 'SpiceBot_GifSearch' not in bot.memory:
|
||||||
bot.memory["SpiceBot_GifSearch"] = {"cache": {}, "badgiflinks": [], 'valid_gif_api_dict': {}}
|
bot.memory["SpiceBot_GifSearch"] = {"cache": {}, "badgiflinks": [], 'valid_gif_api_dict': {}}
|
||||||
|
|
||||||
@ -83,7 +80,6 @@ def setup(bot):
|
|||||||
for prefixcommand in bot.memory["SpiceBot_GifSearch"]['valid_gif_api_dict'].keys():
|
for prefixcommand in bot.memory["SpiceBot_GifSearch"]['valid_gif_api_dict'].keys():
|
||||||
commandsquery_register(bot, "prefix", prefixcommand)
|
commandsquery_register(bot, "prefix", prefixcommand)
|
||||||
|
|
||||||
set_bot_event(bot, "SpiceBot_GifSearch")
|
|
||||||
bot_events_trigger(bot, 2003, "SpiceBot_GifSearch")
|
bot_events_trigger(bot, 2003, "SpiceBot_GifSearch")
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -1,25 +0,0 @@
|
|||||||
# coding=utf-8
|
|
||||||
|
|
||||||
from __future__ import unicode_literals, absolute_import, division, print_function
|
|
||||||
|
|
||||||
import sopel.module
|
|
||||||
from .LoadOrder import check_bot_events, startup_bot_event, set_bot_event
|
|
||||||
from sopel_modules.SpiceBot_SBTools import bot_logging
|
|
||||||
|
|
||||||
import time
|
|
||||||
|
|
||||||
|
|
||||||
@sopel.module.event('001')
|
|
||||||
@sopel.module.rule('.*')
|
|
||||||
def bot_startup_connection(bot, trigger):
|
|
||||||
|
|
||||||
if check_bot_events(bot, ["startup_complete"]):
|
|
||||||
return
|
|
||||||
startup_bot_event(bot, "connected")
|
|
||||||
|
|
||||||
while not len(bot.channels.keys()) > 0:
|
|
||||||
pass
|
|
||||||
time.sleep(1)
|
|
||||||
|
|
||||||
set_bot_event(bot, "connected")
|
|
||||||
bot_logging(bot, 'Sopel_LoadOrder', "Connected to IRC")
|
|
||||||
@ -1,70 +0,0 @@
|
|||||||
# coding=utf8
|
|
||||||
"""Sopel_LoadOrder
|
|
||||||
|
|
||||||
Sopel LoadOrder is a poor mans way to create module load order dependencies
|
|
||||||
"""
|
|
||||||
from __future__ import unicode_literals, absolute_import, division, print_function
|
|
||||||
|
|
||||||
import sopel.module
|
|
||||||
from sopel_modules.SpiceBot_SBTools import bot_logging
|
|
||||||
import threading
|
|
||||||
|
|
||||||
|
|
||||||
def setup(bot):
|
|
||||||
bot_logging(bot, 'Sopel_LoadOrder', "Starting Module Events Logging")
|
|
||||||
|
|
||||||
threading.Thread(target=setup_thread, args=(bot,)).start()
|
|
||||||
|
|
||||||
|
|
||||||
def shutdown(bot):
|
|
||||||
if "Sopel_LoadOrder" in bot.memory:
|
|
||||||
del bot.memory["Sopel_LoadOrder"]
|
|
||||||
|
|
||||||
|
|
||||||
def setup_thread(bot):
|
|
||||||
if "Sopel_LoadOrder" not in bot.memory:
|
|
||||||
bot.memory["Sopel_LoadOrder"] = {"loaded": [], "startup": []}
|
|
||||||
|
|
||||||
|
|
||||||
def list_bot_events(bot, list_type):
|
|
||||||
if "Sopel_LoadOrder" not in bot.memory:
|
|
||||||
bot.memory["Sopel_LoadOrder"] = {"loaded": [], "startup": []}
|
|
||||||
return bot.memory["Sopel_LoadOrder"][list_type]
|
|
||||||
|
|
||||||
|
|
||||||
def check_bot_events(bot, listreq):
|
|
||||||
if "Sopel_LoadOrder" not in bot.memory:
|
|
||||||
bot.memory["Sopel_LoadOrder"] = {"loaded": [], "startup": []}
|
|
||||||
if not isinstance(listreq, list):
|
|
||||||
listreq = [str(listreq)]
|
|
||||||
for requirement in listreq:
|
|
||||||
if requirement not in bot.memory["Sopel_LoadOrder"]["loaded"]:
|
|
||||||
return False
|
|
||||||
return True
|
|
||||||
|
|
||||||
|
|
||||||
def set_bot_event(bot, addonreq):
|
|
||||||
if "Sopel_LoadOrder" not in bot.memory:
|
|
||||||
bot.memory["Sopel_LoadOrder"] = {"loaded": [], "startup": []}
|
|
||||||
if not isinstance(addonreq, list):
|
|
||||||
addonreq = [str(addonreq)]
|
|
||||||
|
|
||||||
bot.memory["Sopel_LoadOrder"]["loaded"].extend(addonreq)
|
|
||||||
|
|
||||||
|
|
||||||
def startup_bot_event(bot, addonreq):
|
|
||||||
if "Sopel_LoadOrder" not in bot.memory:
|
|
||||||
bot.memory["Sopel_LoadOrder"] = {"loaded": [], "startup": []}
|
|
||||||
if not isinstance(addonreq, list):
|
|
||||||
addonreq = [str(addonreq)]
|
|
||||||
|
|
||||||
bot.memory["Sopel_LoadOrder"]["startup"].extend(addonreq)
|
|
||||||
|
|
||||||
|
|
||||||
def check_bot_startup(bot):
|
|
||||||
if "Sopel_LoadOrder" not in bot.memory:
|
|
||||||
bot.memory["Sopel_LoadOrder"] = {"loaded": [], "startup": []}
|
|
||||||
for startupitem in bot.memory["Sopel_LoadOrder"]["startup"]:
|
|
||||||
if startupitem not in bot.memory["Sopel_LoadOrder"]["loaded"]:
|
|
||||||
return False
|
|
||||||
return True
|
|
||||||
@ -1,19 +0,0 @@
|
|||||||
# coding=utf-8
|
|
||||||
|
|
||||||
from __future__ import unicode_literals, absolute_import, division, print_function
|
|
||||||
|
|
||||||
import sopel.module
|
|
||||||
from sopel_modules.SpiceBot_SBTools import bot_logging
|
|
||||||
|
|
||||||
from .LoadOrder import set_bot_event, check_bot_startup
|
|
||||||
|
|
||||||
|
|
||||||
@sopel.module.event('001')
|
|
||||||
@sopel.module.rule('.*')
|
|
||||||
def bot_startup_complete(bot, trigger):
|
|
||||||
|
|
||||||
while not check_bot_startup(bot):
|
|
||||||
pass
|
|
||||||
|
|
||||||
set_bot_event(bot, "startup_complete")
|
|
||||||
bot_logging(bot, 'Sopel_LoadOrder', "Module Events Logging Complete")
|
|
||||||
@ -1,15 +0,0 @@
|
|||||||
# coding=utf8
|
|
||||||
"""Sopel_LoadOrder
|
|
||||||
|
|
||||||
Sopel LoadOrder is a poor mans way to create module load order dependencies
|
|
||||||
"""
|
|
||||||
from __future__ import unicode_literals, absolute_import, division, print_function
|
|
||||||
|
|
||||||
from .LoadOrder import *
|
|
||||||
from .Connected import *
|
|
||||||
from .Startup_Complete import *
|
|
||||||
|
|
||||||
|
|
||||||
__author__ = 'Sam Zick'
|
|
||||||
__email__ = 'sam@deathbybandaid.net'
|
|
||||||
__version__ = '0.1.1'
|
|
||||||
@ -7,7 +7,6 @@ from sopel.config.types import StaticSection, ValidatedAttribute
|
|||||||
|
|
||||||
from sopel_modules.SpiceBot_SBTools import bot_logging
|
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
|
from sopel_modules.SpiceBot_Events.System import bot_events_startup_register, bot_events_recieved, bot_events_trigger
|
||||||
from sopel_modules.SpiceBot_LoadOrder.LoadOrder import set_bot_event, startup_bot_event
|
|
||||||
|
|
||||||
|
|
||||||
def configure(config):
|
def configure(config):
|
||||||
@ -25,25 +24,16 @@ def setup(bot):
|
|||||||
|
|
||||||
bot_events_startup_register(bot, ['2004'])
|
bot_events_startup_register(bot, ['2004'])
|
||||||
|
|
||||||
startup_bot_event(bot, "SpiceBot_CommandsQuery")
|
|
||||||
|
|
||||||
bot_logs_setup_check(bot)
|
bot_logs_setup_check(bot)
|
||||||
|
|
||||||
|
bot_events_trigger(bot, 2004, "SpiceBot_Logs")
|
||||||
|
|
||||||
|
|
||||||
def bot_logs_setup_check(bot):
|
def bot_logs_setup_check(bot):
|
||||||
if 'SpiceBot_Logs' not in bot.memory:
|
if 'SpiceBot_Logs' not in bot.memory:
|
||||||
bot.memory['SpiceBot_Logs'] = {"logs": {}, "queue": []}
|
bot.memory['SpiceBot_Logs'] = {"logs": {}, "queue": []}
|
||||||
|
|
||||||
|
|
||||||
@sopel.module.event('1003')
|
|
||||||
@sopel.module.rule('.*')
|
|
||||||
def bot_startup_logs_complete(bot, trigger):
|
|
||||||
bot_events_recieved(bot, trigger.event)
|
|
||||||
|
|
||||||
set_bot_event(bot, "SpiceBot_Logs")
|
|
||||||
bot_events_trigger(bot, 2004, "SpiceBot_Logs")
|
|
||||||
|
|
||||||
|
|
||||||
def shutdown(bot):
|
def shutdown(bot):
|
||||||
if "SpiceBot_Logs" in bot.memory:
|
if "SpiceBot_Logs" in bot.memory:
|
||||||
del bot.memory["SpiceBot_Logs"]
|
del bot.memory["SpiceBot_Logs"]
|
||||||
|
|||||||
@ -5,7 +5,6 @@ from __future__ import unicode_literals, absolute_import, division, print_functi
|
|||||||
import sopel.module
|
import sopel.module
|
||||||
|
|
||||||
from sopel_modules.SpiceBot_Events.System import bot_events_recieved, bot_events_trigger
|
from sopel_modules.SpiceBot_Events.System import bot_events_recieved, bot_events_trigger
|
||||||
from sopel_modules.SpiceBot_LoadOrder.LoadOrder import set_bot_event
|
|
||||||
from sopel_modules.SpiceBot_SBTools import humanized_time, bot_logging
|
from sopel_modules.SpiceBot_SBTools import humanized_time, bot_logging
|
||||||
import time
|
import time
|
||||||
|
|
||||||
@ -63,5 +62,4 @@ def bot_startup_monologue_display(bot, trigger):
|
|||||||
bot_logging(bot, 'SpiceBot_StartupMonologue', bot.nick + " startup complete")
|
bot_logging(bot, 'SpiceBot_StartupMonologue', bot.nick + " startup complete")
|
||||||
bot.osd(bot.memory['SpiceBot_StartupMonologue'], bot.channels.keys())
|
bot.osd(bot.memory['SpiceBot_StartupMonologue'], bot.channels.keys())
|
||||||
|
|
||||||
set_bot_event(bot, "SpiceBot_StartupMonologue")
|
|
||||||
bot_events_trigger(bot, 2005, "SpiceBot_StartupMonologue")
|
bot_events_trigger(bot, 2005, "SpiceBot_StartupMonologue")
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user