def __init__(self): self.server = config.server self.nickname = config.name self.realname = b"Botmily https://github.com/kgc/botmily" self.channels = config.channels self.password = config.password self.socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM) self.socket.connect((self.server, 6667)) self.irc = irc.irc_handler(self.socket, self , self.irc_error) print("Initializing plugins...") self.commands = {} self.triggers = [] for importer, modname, ispkg in pkgutil.iter_modules(plugins.__path__): print("Loading plugin " + modname) plugin = __import__("plugins." + modname, fromlist="hook") self.commands.update(plugin.commands) self.triggers.extend(plugin.triggers) asyncore.loop()
print("Bot is ignoring out of date handler. Masti is bad at threading!") def connect(self): # we COULD close our old socket, if we have one, but... it should get closed in garbage collection so who cares? print("Connecting to:",self.server) self.socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM) try: self.socket.connect((self.server, 6667)) except socket.gaierror, err: print("Could not initiate connection!") return True self.irc = irc.irc_handler(self.socket, self , self.irc_error) print("Connection loop starting...") try: asyncore.loop() except select.error, err: pass except KeyboardInterrupt, err: print(" <- Keyboard Interupt detected, cancelling thread timers where possible...") self.irc.stop() return False return True def join(self, nick, user, host, channel):