diff --git a/commands/provision.py b/commands/provision.py index a9df1b3..3453171 100644 --- a/commands/provision.py +++ b/commands/provision.py @@ -29,10 +29,11 @@ class Provision: rtrn = provision.provisionRelayForNetwork(spl[1], spl[2], spl[3]) if rtrn == "PROVISIONED": - failure("Relay %s already provisioned for network %s" % (spl[1], spl[3])) + failure("Relay %s already provisioned for alias %s on network %s" % (spl[1], spl[2], spl[3])) return elif rtrn == "DUPLICATE": failure("Instance with relay %s and alias %s already exists for network %s" % (spl[1], spl[2], spl[3])) + return elif rtrn: success("Started provisioning network %s on relay %s for alias %s" % (spl[3], spl[1], spl[2])) info("Instance name is %s" % rtrn) diff --git a/core/bot.py b/core/bot.py index 2d54174..29e4223 100644 --- a/core/bot.py +++ b/core/bot.py @@ -121,7 +121,11 @@ class IRCBot(IRCClient): nick = step[0] if len(step) == 2: step2 = step[1].split("@") - ident, host = step2 + if len(step2) == 2: + ident, host = step2 + else: + ident = nick + host = nick else: ident = nick host = nick diff --git a/core/server.py b/core/server.py index 2f40ccf..30ca24d 100644 --- a/core/server.py +++ b/core/server.py @@ -29,7 +29,7 @@ class Server(Protocol): def connectionMade(self): log("Connection from %s:%s" % (self.addr.host, self.addr.port)) - self.send("Hello.") + self.send("Greetings.") def connectionLost(self, reason): self.authed = False diff --git a/modules/provision.py b/modules/provision.py index 34438c0..63e00a2 100644 --- a/modules/provision.py +++ b/modules/provision.py @@ -54,8 +54,8 @@ def provisionRelayForAlias(relay, alias): return True def provisionRelayForNetwork(relay, alias, network): - if "networks" in main.relay[relay].keys(): - if network in main.relay[relay]["networks"]: + if all([x in ["users", "networks"] for x in main.relay[relay].keys() if x in ["users", "networks"]]): + if network in main.relay[relay]["networks"] and alias in main.relay[relay]["users"]: return "PROVISIONED" else: main.relay[relay]["networks"] = [] @@ -87,5 +87,8 @@ def provisionRelayForNetwork(relay, alias, network): main.saveConf("pool") if main.config["ConnectOnCreate"]: startBot(network+i) + else: + deliverRelayCommands(relay, {"status": ["Disconnect"]}, user=alias+"/"+network) + storedNetwork = True return network+i