OMGYSU!
Description
OMGYSU!, dont le délicieux acronyme signifie "Oh My God You Shut Up!", vous permet d'imposer le silence à un individu ou à tout un chan de façon très efficace.
La commande
!chut pose un ban quiet ainsi qu'un ban nickchange (~q et ~n, si votre serveur les supporte) sur un individu.
Elle s'assure ensuite que ces bans ne seront pas enlevés et empêche la cible d'être voicée/halfopée/opée par quiconque.
Le ban quiet empêche la cible de parler sans l'empêcher de rejoindre le chan, et le ban nickchange l'empêche de changer de nick pour éviter le nick-chatting.
Il est possible de définir une durée au bout de laquelle la restriction sera levée automatiquement. Si aucune durée n'est spécifiée, le script prendra une valeur par défaut de 3mn (paramétrable).
Il est également possible d'imposer le silence sur un chan entier au moyen de la commande
!vg.
Le script modère alors le chan (mode +m), bloque les changements de nick dans le but d'empêcher le nick chatting (mode +N) et s'assure que ces modes seront maintenus, puis il déop/déhalfop/dévoice tout le monde sauf les utilisateurs portant certains flags (que vous pouvez définir).
Tant que cette modération est active, le bot empêche quiconque d'être opé/halfopé/voicé sauf par des utilisateurs portant des flags les exemptant.
Là encore il est possible de définir la durée de la modération et une valeur par défaut est utilisée en l'absence de ce paramètre.
Veuillez noter que OMGYSU! a été conçu pour fonctionner sur des serveurs supportant les bans étendus, et que l'option
single_target_shutup_method n'existe que pour ceux qui voudraient quand même utiliser ce script ailleurs au prix de certaines restrictions.
Si votre serveur ne supporte pas les bans étendus, le script peut adopter un autre comportement pour faire taire un individu en mettant un ban simple sur lui et en l'empêchant d'être opé/halfopé/voicé.
Ce ban sera supprimé immédiatement si l'utilisateur quitte le chan afin de ne pas l'empêcher de revenir, et sera remis aussitôt s'il revient.
Notez que ce fonctionnement ne pourra pas enlever le ban assez rapidement pour permettre à un auto-rejoin de fonctionner si l'utilisateur est kické, et que celui-ci ne pourra pas non plus /cycle le chan.
Activation
Pour activer OMGYSU! sur un chan, vous devez taper ceci en partyline de l'eggdrop :
.chanset #NomDuChan +OMGYSU
et ceci pour le désactiver :
.chanset #NomDuChan -OMGYSU
Syntaxe
!chut <nick> [durée en mn] : Impose le silence à un individu pendant la durée spécifiée (sinon 3mn par défaut).
!chut <nick/host/mask/index> off : Redonne la parole à un individu avant expiration du temps initial. Pour connaître un index, reportez-vous à la commande
!chutlist.
!vg [durée en mn] : Impose le silence sur un chan pendant la durée spécifiée (sinon 3mn par défaut).
!vg off : Lève la restriction de parole sur un chan avant expiration du temps initial.
!chutlist [-all] : Affiche une liste des modérations actives sur le chan en cours, ou sur tous les chans si le paramètre -all est spécifié.
!chutinfo <index> : Affiche des informations détaillées sur une modération dont vous avez spécifié l'index. Ces numéros s'obtiennent au moyen de la commande
!chutlist.
Screenshot
Changelog
1.0
2.0
- Correction : il n'est plus possible d'utiliser la commande !chut contre l'eggdrop.
- Ajout : nouvelle option permettant ou non de retourner la commande !chut contre celui qui l'a tapée si celle-ci visait l'eggdrop.
- Ajout : nouvelle option permettant d'afficher un message de votre choix lorsqu'une commande du script est utilisée.
- Modification : OMGYSU! utilise maintenant le ban étendu ~n (si disponible) afin d'empêcher le nick chatting. En ce qui concerne le !vg, Le mode de chan +N est utilisé en conjonction du mode +m.
- Correction : lorsque l'on spécifie une durée d'1mn, le bot enlève parfois la punition après quelques secondes. C'est dû au fonctionnement interne des timers : l'eggdrop décrémente un timer à chaque passage de minute, ce qui fait que si on lance un {timer 1 blabla} à 14h22mn57s, il expirera à 14h23mn00s, donc 3 secondes après. La marge d'imprécision d'un timer est donc de 59,99 secondes, ce qui le rend inutilisable lorsque la précision compte.
- Correction : une incohérence dans le code posait problème lorsqu'on mettait un !chut sur plusieurs personnes, puis qu'on tentait de "!chut <nick> off" ensuite. En effet, il faut savoir que lorsqu'on modifie un array, cela interromp toutes les recherches en cours sur lui.
- Correction : les nicks contenant des caractères spéciaux ne gênent plus le fonctionnement du script.
- Ajout : nouveau paramètre fast_queue_compatibility afin d'assurer la compatibilité du script avec les versions 1.6.19 et 1.6.20 d'Eggdrop.
- Modification : il est n'est plus autorisé de mettre 0 secondes comme durée.
- Correction : si l'option single_target_shutup_method est réglée sur 2, le chan est maintenant dé-modéré (-m) si le dernier !chut actif est levé, et chaque utilisateur dont la punition se termine est voicé s'il reste encore des !chut actifs sur d'autres utilisateurs.
2.1
- Correction : faire !vg off sur un chan où aucun !vg n'est en cours ne provoque maintenant plus d'erreur.
- Correction : la façon d'envoyer des modes -b au serveur a été modifiée en raison d'un problème lié à l'utilisation de pushmode pour débannir un utilisateur possédant un ident trop long.
- Modification : en raison des problèmes rencontrés par les utilisateurs n'ayant défini aucun chan statique dans leur fichier eggdrop.conf, OMGYSU! n'est désormais plus activé automatiquement sur tous les chans lors du 1er lancement du script. Vous devrez donc l'activer manuellement sur chaque chan au moyen de la commande : .channel set #nomduchan +OMGYSU (à taper en partyline)
- Modification : il est désormais possible de désactiver la modération avec !vg off même si elle n'a pas été activée au moyen de !vg ou si l'eggdrop a été rehash/restart (ou autre) avant la levée de la modération et qu'il a par conséquent oublié le !vg en cours.
- Modification : il est désormais possible d'enlever une modération au moyen de la commande "!chut <index> off", et ce même si la personne a quitté le chan. Vous pouvez afficher les index grâce à la commande !chutlist (voir ci-dessous).
- Ajout de la commande !chutlist permettant d'afficher une liste des !chut et !vg actifs sur le chan en cours, ou sur tous les chans si le paramètre -all est spécifié.
- Pas mal d'optimisations du code.
- Passage sous licence Creative Commons.
2.11
- Correction d'un bug avec la commande !chutlist qui n'affichait pas les bons index.
- Correction de la variable $version du script qui était restée en 2009.
3.0
- Ajout : nouveau paramètre de configuration hostmask_type vous permettant de choisir le type de masque de ban que vous préférez.
- Ajout : la commande !chutlist affiche le temps restant avant expiration.
- Ajout : nouvelle commande !chutinfo pour obtenir des informations détaillées sur une modération active.
- Ajout : l'Eggdrop garde maintenant la trace des modérations actives après un redémarrage ou un rehash. Un paramètre de configuration vous permet de définir l'emplacement et le nom de la base de données.
- Ajout : les couleurs sont automatiquement filtrées dans les messages du script si le mode +c est détecté sur un chan, ou si le mode monochrome est activé; un paramètre de configuration prévu à cet effet.
- Modification : il est maintenant possible de retirer une modération en spécifiant le host ou le masque de host concerné.
- Modification : le comportement du script a été modifié si l'option single_target_shutup_method est réglée à 2 (reportez-vous à la section "Description" pour prendre connaissance des détails).
- Modification : il est possible de réduire ou prolonger la durée d'une modération et un message explicite vous informera du changement.
- Restructuration massive du code, nombreuses optimisations, nombreux bugs corrigés.
3.1
- Ajout : Il est maintenant possible de retirer une ou plusieurs modérations en spécifiant un masque de host. Ainsi, si vous spécifiez *!*@* toutes les modérations seront retirées sur le chan en cours.
Remarque : il était auparavant possible de retirer une modération en spécifiant un masque, mais celui-ci devait correspondre exactement au masque utilisé au moment de poser la modération.
- Modification : le message qui s'affiche optionnellement lorsqu'une modération est mise exprime désormais le nombre de minutes en temps lisible (en jours, heures et minutes).
- Correction : supprimer un chan des chans enregistrés de l'Eggdrop au moyen de la commande de partyline .-chan provoquait une erreur.
Téléchargement
OMGYSU! v3.1
Laissez vos commentaires / questions / suggestions / rapports de bugs
ici.