make Message object part of Bot

pull/23/head
Mallory Hancock 2018-02-05 13:38:27 -08:00
parent 8e88b21516
commit 6731e3c4cb
1 changed files with 18 additions and 19 deletions

View File

@ -11,23 +11,6 @@ import irc.bot
irc.client.ServerConnection.buffer_class.errors = 'replace'
class Message:
def __init__(self, channel, nick, botnick, ops, logger, cmd=None, arg=None, text=None, nick_list=None):
self.channel = channel
self.nick = nick
self.nick_list = nick_list
self.botnick = botnick
self.ops = ops
self.logger = logger
if cmd:
self.cmd = cmd
self.arg = arg
if text:
self.text = text
if not (cmd or text):
raise TypeError('missing cmd or text parameter')
class Bot(irc.bot.SingleServerIRCBot):
def __init__(self, channels, nickname, server, **kwargs):
self.set_kwargs(**kwargs)
@ -40,6 +23,22 @@ class Bot(irc.bot.SingleServerIRCBot):
self.bot_nick = nickname
self.start_logging(self.log_level)
self.load_plugins()
class Message:
def __init__(self, channel, nick, botnick, ops, logger, cmd=None, arg=None, text=None, nick_list=None):
self.channel = channel
self.nick = nick
self.nick_list = nick_list
self.botnick = botnick
self.ops = ops
self.logger = logger
if cmd:
self.cmd = cmd
self.arg = arg
if text:
self.text = text
if not (cmd or text):
raise TypeError('missing cmd or text parameter')
def set_kwargs(self, **kwargs):
kwarguments = {
@ -168,7 +167,7 @@ class Bot(irc.bot.SingleServerIRCBot):
c.privmsg(chan, 'Plugins reloaded')
elif cmd in self.cmds:
try:
output = self.cmds[cmd](Message(
output = self.cmds[cmd](self.Message(
channel=chan,
cmd=cmd,
nick_list=list(self.channels[chan].users()),
@ -185,7 +184,7 @@ class Bot(irc.bot.SingleServerIRCBot):
else:
for lstnr in self.lstnrs:
try:
output = self.lstnrs[lstnr](Message(
output = self.lstnrs[lstnr](self.Message(
channel=chan,
text=text,
nick_list=list(self.channels[chan].users()),