import main from core.bot import deliverRelayCommands class DisableCommand: def __init__(self, *args): self.disable(*args) def disable(self, addr, authed, data, obj, spl, success, failure, info, incUsage, length): if authed: if length == 2: if not spl[1] in main.pool.keys(): failure("Name does not exist: %s" % spl[1]) return main.pool[spl[1]]["enabled"] = False user = main.pool[spl[1]]["alias"] network = main.pool[spl[1]]["network"] relay = main.pool[spl[1]]["relay"] commands = {"status": ["Disconnect"]} deliverRelayCommands(relay, commands, user=user+"/"+network) main.saveConf("pool") if spl[1] in main.ReactorPool.keys(): if spl[1] in main.FactoryPool.keys(): main.FactoryPool[spl[1]].stopTrying() main.ReactorPool[spl[1]].disconnect() if spl[1] in main.IRCPool.keys(): del main.IRCPool[spl[1]] del main.ReactorPool[spl[1]] del main.FactoryPool[spl[1]] success("Successfully disabled bot %s" % spl[1]) return else: incUsage("disable") return else: incUsage(None)