]> gitweb.pimeys.fr Git - bots/deconnaisseur.git/blobdiff - deconnaisseur.py
le "tu fais de la merde avec ton encodoage" est subordonné aux quiet_channels
[bots/deconnaisseur.git] / deconnaisseur.py
index 4149d65427ac0fe171e05b9b74ab08fe561b1ddf..047ea8108385a8b8278d04c3a4b9e58cf99818b0 100755 (executable)
@@ -162,7 +162,7 @@ class Deconnaisseur(ircbot.SingleServerIRCBot):
     def pourmoi(self, serv, message):
         pseudo=serv.get_nickname()
         size=len(pseudo)
-        if message[:size]==pseudo and message[size]==":":
+        if message[:size]==pseudo and len(message)>size and message[size]==":":
             return (True,message[size+1:].strip(" "))
         else:
             return (False,message)
@@ -308,9 +308,10 @@ class Deconnaisseur(ircbot.SingleServerIRCBot):
         try:
             test=bot_unicode(message)
         except UnicodeBotError:
-            serv.privmsg(canal,
-              "%s: Euh, tu fais de la merde avec ton encodage là, j'ai failli crasher…"%(auteur))
-            return
+            if not canal in self.quiet_channels:
+                serv.privmsg(canal,
+                   "%s: Euh, tu fais de la merde avec ton encodage là, j'ai failli crasher…"%(auteur))
+                return
         tryother=False
         pour_moi,message=self.pourmoi(serv,message)
         if pour_moi and message.split()!=[]:
@@ -365,8 +366,9 @@ class Deconnaisseur(ircbot.SingleServerIRCBot):
             tryother=True
         if tryother:
             if self.play_status.get(canal,[-1])[0] in [1,2]:
-                answer=self.play_status[canal][3]
-                if re.match(tolere(answer),unicode(message,"utf8").lower()):
+                answer_regexp=self.play_status[canal][3]
+                if re.match(tolere(answer_regexp),unicode(message,"utf8").lower()):
+                    answer=self.play_status[canal][4]
                     serv.privmsg(canal,"%s: bravo ! (C'était %s)"%(auteur,answer))
                     token=time.time()
                     self.play_status[canal]=[0,token]