]> gitweb.pimeys.fr Git - bots/basile.git/commitdiff
Maintenant on peut consommer n'importe quoi
authorVincent Le Gallic <basile@crans.org>
Mon, 17 Jun 2013 11:31:10 +0000 (13:31 +0200)
committerVincent Le Gallic <basile@crans.org>
Mon, 17 Jun 2013 11:31:10 +0000 (13:31 +0200)
basile.py
nk.py

index f3c193c99a4f32fc2feaf90ea94a1346cdf1763b..ecbef4ec39389afed5def41297096a77c7531098 100755 (executable)
--- a/basile.py
+++ b/basile.py
@@ -651,15 +651,15 @@ class Basile(ircbot.SingleServerIRCBot):
             elif cmd in [u"ping"] and not canal in self.quiet_channels:
                 serv.privmsg(canal, "%s: pong" % (auteur))
 
-            elif cmd in [u"solde", u"!solde", u"!coca"]:
+            elif cmd in [u"solde", u"!solde", u"!coca"] or cmd.startswith("!"):
                 if self.identities.has_key(auteur):
                     idbde = self.identities[auteur]["idbde"]
                     if cmd in [u"solde", u"!solde"]:
                         success, solde, pseudo = nk.get_solde(self.nk, self.identities[auteur]["idbde"], serv, canal)
                         if success:
                             serv.privmsg(canal, "%s: %s (%s)" % (auteur, float(solde)/100, pseudo.encode("utf8")))
-                    elif cmd in [u"!coca"]:
-                        success = nk.consomme(self.nk, self.identities[auteur]["idbde"], u"Coca", serv, canal)
+                    elif cmd in [u"!coca"] or cmd.startswith("!"):
+                        success = nk.consomme(self.nk, self.identities[auteur]["idbde"], message[1:], serv, canal)
                     log(self.serveur, canal, auteur, message + ("[successful]" if success else "[failed]"))
                 else:
                     serv.privmsg(canal, "%s: Je ne connais pas votre pseudo note." % (auteur))
diff --git a/nk.py b/nk.py
index f7f4bb30d378766aa541bef42ceee82e5f286ab3..0cbaed023bd3149f95cb1330126db4e48f2e8f01 100644 (file)
--- a/nk.py
+++ b/nk.py
@@ -115,8 +115,11 @@ def consomme(sock, idbde, conso, serv, canal):
         retcode = ret["retcode"]
         if retcode == 0:
             boutons = ret["msg"]
-            ibouton = [b["label"].lower() for b in boutons].index(conso.lower())
-            bouton = boutons[ibouton]
+            boutons = [b for b in boutons if b["label"].lower() == conso.lower()]
+            if len(boutons) == 0:
+                serv.privmsg(canal, (u"Impossible de trouver la conso %s" % (conso)).encode("utf-8"))
+                return False
+            bouton = boutons[0]
             sock.write(json.dumps(["consos", [[bouton["id"], idbde, 1]]]))
             ret = full_read(sock)
             if ret["retcode"] == 0: