From 9855612a4a50d3d4302486d9b18c004c061338b5 Mon Sep 17 00:00:00 2001 From: Vincent Le Gallic Date: Wed, 19 Jun 2013 19:20:15 +0200 Subject: [PATCH] Fonction de blacklist --- basile.py | 11 +++++++++++ config.py | 4 ++++ 2 files changed, 15 insertions(+) diff --git a/basile.py b/basile.py index ecbef4e..1203465 100755 --- a/basile.py +++ b/basile.py @@ -54,6 +54,17 @@ def log(serveur, channel, auteur=None, message=None): if config.debug_stdout: print chain +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)) + return blackit and not exceptit + def regex_join(liste, avant=u".*(?:^| )", apres=u"(?:$|\.| |,|;).*"): """Fabrique une regexp à partir d'une liste d'éléments à matcher.""" return avant + u"(" + u"|".join(liste) + u")" + apres diff --git a/config.py b/config.py index 0c3e418..e01a1d9 100644 --- a/config.py +++ b/config.py @@ -280,3 +280,7 @@ helpmsg_default = u"Liste des commandes disponibles :\nHELP IDENTIFY DROP SOLDE" helpmsg_ops = u" JOIN LEAVE QUIET NOQUIET LOST RECONNECT RELOAD" #: Message d'aide par défaut à ajouter pour les OVEROPs helpmsg_overops = u" SAY DO STAY NOSTAY OPS OVEROPS KICK DIE CRASH" + +#: Liste de paires de masques ``[black, except]`` : on blacklistera ce qui match ``black`` +#: et pas ``except``. ``except`` peut être None. +blacklisted_masks = [] -- 2.39.2