print chain
f.close()
+def ignore_event(serv, ev):
+ """Retourne ``True`` si il faut ignorer cet évènement."""
+ for (blackmask, exceptmask) in config.blacklisted_masks:
+ usermask = ev.source()
+ if exceptmask is None:
+ exceptit = False
+ else:
+ exceptit = bool(irclib.mask_matches(usermask, exceptmask))
+ blackit = bool(irclib.mask_matches(usermask, blackmask))
+ if blackit and not exceptit:
+ return True
+
reg_is_smiley = re.compile(u".*("+u"|".join(config.smileys)+u")")
def is_smiley(chain):
chain=unicode(chain,"utf8")
return (False,message)
def on_privmsg(self, serv, ev):
+ if ignore_event(serv, ev):
+ return
message=ev.arguments()[0]
auteur = irclib.nm_to_n(ev.source())
try:
test=bot_unicode(message)
except UnicodeBotError:
if config.utf8_trigger:
- serv.privmsg(auteur, config.utf8_fail)
+ serv.privmsg(auteur, random.choice(config.utf8_fail_answers).encode("utf8"))
return
message=message.split()
cmd=message[0].lower()
serv.privmsg(auteur,"Je n'ai pas compris. Essayez HELP…")
def on_pubmsg(self, serv, ev):
+ if ignore_event(serv, ev):
+ return
auteur = irclib.nm_to_n(ev.source())
canal = ev.target()
message = ev.arguments()[0]
try:
test=bot_unicode(message)
except UnicodeBotError:
- if not canal in self.quiet_channels and config.utf8_trigger:
- serv.privmsg(canal, "%s: %s"%(auteur,config.utf8_fail))
+ if config.utf8_trigger and not canal in self.quiet_channels:
+ serv.privmsg(canal, (u"%s: %s"%(auteur,random.choice(config.utf8_fail_answers))).encode("utf8"))
return
pour_moi,message=self.pourmoi(serv,message)
for (detect, reason) in config.kicking_list:
serv.privmsg(canal,answer.format(auteur).encode("utf8"))
def on_action(self, serv, ev):
+ if ignore_event(serv, ev):
+ return
action = ev.arguments()[0]
auteur = irclib.nm_to_n(ev.source())
channel = ev.target()
try:
test=bot_unicode(action)
except UnicodeBotError:
- if not channel in self.quiet_channels and config.utf8_trigger:
- serv.privmsg(channel, "%s: %s"%(auteur,config.utf8_fail))
+ if config.utf8_trigger and not canal in self.quiet_channels:
+ serv.privmsg(canal, (u"%s: %s"%(auteur,random.choice(config.utf8_fail_answers))).encode("utf8"))
return
mypseudo=self.nick
print ev.source()
print channel, username
if channel == "#déprime" and "peb" in username or "becue" in username:
- time.sleep(5)
- serv.kick(auteur, "Va abuser de tes droits ailleurs !")
+ print "Kicking peb"
+ serv.execute_delayed(5, serv.kick, (auteur, "Va abuser de tes droits ailleurs !"))
def kicker(self, chan, pseudo, raison=None):
if raison==None: