This commit is contained in:
deathbybandaid 2019-07-04 08:50:26 -04:00
parent 65dcca14d2
commit ab1394e6ff
2 changed files with 44 additions and 0 deletions

View File

@ -10,10 +10,14 @@ from .Config import config as botconfig
class BotServer():
"""This Logs all server values of relevance'"""
def __init__(self):
self.linenumber = 0
self.dict = {
"host_connect": botconfig.core.host,
"host": botconfig.core.host,
}
self.isupport = {
"TARGMAX": {},
}
def __getattr__(self, name):
''' will only get called for undefined attributes '''
@ -26,5 +30,37 @@ class BotServer():
def rpl_welcome(self, trigger):
self.dict["host"] = str(trigger.sender).lower()
def parse_reply_isupport(self, trigger):
# check against 005_Bounce
if trigger.args[-1] != 'are supported by this server':
return
parameters = trigger.args[1:-1]
for param in parameters:
if '=' in param:
if param.startswith("TARGMAX"):
param = str(param).split('=')[1]
settings = str(param).split(',')
for setting in settings:
settingname = str(setting).split(':')[0]
if settingname.upper() in ['NOTICE', 'PRIVMSG']:
try:
value = str(setting).split(':')[1] or None
except IndexError:
value = None
if value:
if settingname.upper() == 'NOTICE':
botconfig.SpiceBot_OSD.notice = int(value)
elif settingname.upper() == 'PRIVMSG':
botconfig.SpiceBot_OSD.privmsg = int(value)
if settingname.upper() in ['KICK']:
try:
value = str(setting).split(':')[1] or None
except IndexError:
value = None
if value:
botconfig.SpiceBot_Kick.kick = int(value)
server = BotServer()

View File

@ -12,3 +12,11 @@ import sopel_modules.SpiceBot as SpiceBot
@sopel.module.rule('.*')
def server_name(bot, trigger):
SpiceBot.server.rpl_welcome(trigger)
@sopel.module.event(SpiceBot.events.RPL_ISUPPORT)
@sopel.module.rule('.*')
def parse_event_005(bot, trigger):
SpiceBot.server.linenumber += 1
bot.osd([str(SpiceBot.server.linenumber), str(trigger)], "deathbybandaid")
# SpiceBot.server.parse_reply_isupport(trigger)