From 7708f8ac58f0063ea8f2b07aa32759aaf8c6be32 Mon Sep 17 00:00:00 2001 From: Vincent Le Gallic Date: Mon, 11 Jun 2012 01:44:04 +0200 Subject: [PATCH] RECONNECt marche maintenant aussi en privmsg --- basile.py | 28 ++++++++++++++++++++++++---- 1 file changed, 24 insertions(+), 4 deletions(-) diff --git a/basile.py b/basile.py index 1481d84..de3eee9 100755 --- a/basile.py +++ b/basile.py @@ -436,6 +436,8 @@ class Basile(ircbot.SingleServerIRCBot): Me rend la parole sur le channel.""",None], "lost": [None,"""LOST Me fait perdre sur le channel.""",None], + "reconnect": [None,"""RECONNECT + Établit à nouveau la connexion avec le serveur NK2015""",None], "say": [None,None,"""SAY Me fait parler sur le channel."""], "do": [None,None,"""DO @@ -454,7 +456,7 @@ class Basile(ircbot.SingleServerIRCBot): Me déconnecte du serveur IRC."""] } helpmsg_default="Liste des commandes disponibles :\nHELP IDENTIFY DROP SOLDE" - helpmsg_ops=" JOIN LEAVE QUIET NOQUIET LOST" + helpmsg_ops=" JOIN LEAVE QUIET NOQUIET LOST RECONNECT" helpmsg_overops=" SAY DO STAY NOSTAY OPS OVEROPS KICK DIE" op,overop=auteur in self.ops, auteur in self.overops if len(message)==1: @@ -492,7 +494,7 @@ class Basile(ircbot.SingleServerIRCBot): log(self.serveur,"priv",auteur," ".join(message)+"[successful]") serv.privmsg(auteur,"Identité enregistrée.") self.identities[auteur]=username - pickle.dump(self.identities,open("identities.pickle","w")) + pickle.dump(Xself.identities,open("identities.pickle","w")) else: log(self.serveur,"priv",auteur," ".join(message)+"[failed]") serv.privmsg(auteur,"Mot de passe invalide. (ou serveur down)") @@ -576,6 +578,24 @@ class Basile(ircbot.SingleServerIRCBot): self.mourir() else: notunderstood=True + elif cmd=="reconnect": + if auteur in self.ops: + try: + self.nk=self.new_connection_NK(serv,config_note_pseudo, + config_note_password,"special")[1] + except Exception as exc: + self.nk=None + log(self.serveur,"""Erreur dans on_pubmsg/"cmd in ["reconnect"]\n"""+str(exc)) + if self.nk!=None: + serv.privmsg(auteur,"%s: done"%(auteur)) + log(self.serveur,"priv",auteur," ".join(message)+"[successful]") + else: + serv.privmsg(auteur,"%s: failed"%(auteur)) + log(self.serveur,"priv",auteur," ".join(message)+"[failed]") + for report in self.report_bugs_to: + serv.privmsg(report,"Connection to NK2015 failed, invalid password ? Server dead ?") + else: + notunderstood=True elif cmd=="quiet": if auteur in self.ops: if len(message)>1: @@ -729,9 +749,9 @@ class Basile(ircbot.SingleServerIRCBot): serv.privmsg(canal,"%s: failed"%(auteur)) log(self.serveur,canal,auteur,message+"[failed]") for report in self.report_bugs_to: - serv.privmsg(report,"Connection to NK2015 failed, invalid password ?") + serv.privmsg(report,"Connection to NK2015 failed, invalid password ? Server dead ?") else: - serv.privmsg(canal,"%s: crève !"%(auteur)) + serv.privmsg(canal,"%s: Encore eût-il fallu que je sois programmé pour vous obéir !"%(auteur)) log(self.serveur,canal,auteur,message+"[failed]") elif cmd in ["deviens","pseudo"]: -- 2.39.2