from commands import getstatusoutput as ex
# on récupère la config
-import config_basile as config
+import config
# la partie qui réfère au fichier lui-même est mieux ici
# sinon on réfère la config et pas le fichier lui-même
def login_NK(username,password,typ="bdd"):
sock=connect_NK()
if typ=="special": # ça c'est pour Basile lui-même
- masque='["note"]'
+ masque='[]'
elif typ=="bdd":
- masque='[["all"],["all"],false]'
+ masque='[[], [], true]'
try:
# Basile a un compte special user
commande='login [%s,%s,"%s",%s]'%(json.dumps(username),json.dumps(password),typ,masque)
class CrashError(Exception):
"""Pour pouvoir faire crasher Basile, parce que ça a l'air drôle"""
- pass
+ def __init__(self, msg=u""):
+ Exception.__init__(self, msg)
def bot_unicode(chain):
try:
log(self.serveur,"Connected")
if self.debug:
self.chanlist=["#bot"]
- else:
- serv.privmsg("ChanServ", "INVITE #note-dev")
for c in self.chanlist:
log(self.serveur,"JOIN %s"%(c))
serv.join(c)
elif cmd=="crash":
if auteur in self.overops:
log(self.serveur,"priv",auteur," ".join(message)+"[successful]")
- self.crash()
+ self.crash("priv", auteur)
else:
notunderstood=True
elif cmd=="reload":
self.reload(canal)
elif cmd == "crash":
if auteur in self.overops:
- self.crash()
+ self.crash(auteur, message)
elif cmd in ["part","leave","dégage","va-t-en","tut'tiresailleurs,c'estmesgalets"]:
if auteur in self.ops and (not (canal in self.stay_channels)
or auteur in self.overops):
else:
self.serv.privmsg(auteur,"Config reloaded")
- def crash(self):
- raise CrashError
+ def crash(self, chan="nowhere", who="nobody"):
+ where = u"en privé" if chan == "priv" else u"sur le chan %s" % chan
+ raise CrashError(u"Crash demandé par %s %s" % (who, where))
def start_as_daemon(self, outfile):
sys.stderr = Logger(outfile)
exit(1)
serveur=sys.argv[1]
if "--daemon" in sys.argv:
- os.chdir("/home/basile/basile")
+ thisfile = os.path.realpath(__file__)
+ thisdirectory = thisfile.rsplit("/", 1)[0]
+ os.chdir(thisdirectory)
daemon = True
else:
daemon = False