consolidate user ID system

This commit is contained in:
deathbybandaid 2019-10-02 11:58:49 -04:00
parent 2762462162
commit 31afc3fc48
3 changed files with 17 additions and 6 deletions

View File

@ -14,6 +14,7 @@ import aiml
from .Database import db as botdb from .Database import db as botdb
from .Config import config as botconfig from .Config import config as botconfig
from .Read import read as botread from .Read import read as botread
from .Users import users as botusers
from sopel_modules.spicemanip import spicemanip from sopel_modules.spicemanip import spicemanip
@ -116,7 +117,7 @@ class SpiceBot_AI():
def on_message(self, bot, trigger, message): def on_message(self, bot, trigger, message):
nick = Identifier(trigger.nick) nick = Identifier(trigger.nick)
nick_id = botdb.get_nick_id(nick, create=True) nick_id = botusers.get_nick_id(nick, create=True)
self.check_user_import(nick, nick_id) self.check_user_import(nick, nick_id)
message = self.bot_message_precipher(bot, trigger, message) message = self.bot_message_precipher(bot, trigger, message)
@ -207,13 +208,13 @@ class SpiceBot_AI():
def getPredicate(self, predicate, nick, nick_id=None): def getPredicate(self, predicate, nick, nick_id=None):
if not nick_id: if not nick_id:
nick = Identifier(nick) nick = Identifier(nick)
nick_id = botdb.get_nick_id(nick, create=True) nick_id = botusers.get_nick_id(nick, create=True)
self.aiml_kernel.getPredicate(predicate, nick_id) self.aiml_kernel.getPredicate(predicate, nick_id)
def check_user_import(self, nick, nick_id=None): def check_user_import(self, nick, nick_id=None):
if not nick_id: if not nick_id:
nick = Identifier(nick) nick = Identifier(nick)
nick_id = botdb.get_nick_id(nick, create=True) nick_id = botusers.get_nick_id(nick, create=True)
if nick_id not in list(self.dict["sessioncache"].keys()): if nick_id not in list(self.dict["sessioncache"].keys()):
self.dict["sessioncache"][nick_id] = botdb.get_nick_value(nick, 'botai') or {} self.dict["sessioncache"][nick_id] = botdb.get_nick_value(nick, 'botai') or {}
for predicate in list(self.dict["sessioncache"][nick_id].keys()): for predicate in list(self.dict["sessioncache"][nick_id].keys()):
@ -228,7 +229,7 @@ class SpiceBot_AI():
def save_nick_session(self, nick, nick_id=None): def save_nick_session(self, nick, nick_id=None):
if not nick_id: if not nick_id:
nick = Identifier(nick) nick = Identifier(nick)
nick_id = botdb.get_nick_id(nick, create=True) nick_id = botusers.get_nick_id(nick, create=True)
sessionData = self.aiml_kernel.getSessionData(nick_id) sessionData = self.aiml_kernel.getSessionData(nick_id)
botdb.set_nick_value(nick, 'botai', sessionData) botdb.set_nick_value(nick, 'botai', sessionData)

View File

@ -12,6 +12,7 @@ import threading
from .Config import config as botconfig from .Config import config as botconfig
from .Database import db as botdb from .Database import db as botdb
from .Users import users as botusers
class SpiceBot_Channels_MainSection(StaticSection): class SpiceBot_Channels_MainSection(StaticSection):
@ -218,7 +219,7 @@ class BotChannels():
def whois_ident(self, nick): def whois_ident(self, nick):
nick = Identifier(nick) nick = Identifier(nick)
nick_id = botdb.db.get_nick_id(nick, create=True) nick_id = botusers.get_nick_id(nick, create=True)
return nick_id return nick_id
def add_to_channel(self, channel, nick, nick_id=None): def add_to_channel(self, channel, nick, nick_id=None):

View File

@ -65,10 +65,19 @@ class BotUsers():
nick_id = self.whois_ident(nickinput) nick_id = self.whois_ident(nickinput)
return int(nick_id) return int(nick_id)
def get_nick_id(self, nick, usercreate=True):
try:
nick_id = botdb.db.get_nick_id(nick, create=usercreate)
except Exception as e:
nick_id = e
nick_id = None
return None
return nick_id
def whois_ident(self, nick, usercreate=True): def whois_ident(self, nick, usercreate=True):
nick = Identifier(nick) nick = Identifier(nick)
try: try:
nick_id = botdb.db.get_nick_id(nick, create=usercreate) nick_id = self.get_nick_id(nick, create=usercreate)
except Exception as e: except Exception as e:
nick_id = e nick_id = e
nick_id = None nick_id = None