Mise en forme de code: pensez à utiliser les balises [ tcl ] et [ /tcl ] (sans les espaces bien sûr) autour de vos codes tcl afin d'avoir un meilleur rendu et une coloration syntaxique. x


[Astuce] Une notify-list sur eggdrop (IRCv3)
#1
Hello,
Sur un canal eggdrop, quelqu'un a demandé ce matin s'il était possible d'avoir l'équivalent d'une notify-list comme le font la plupart des clients IRC.
De prime abord, ma réponse a été qu'i faudrait faire des /who(is) réguliers, ce qui consommerait beaucoup de ressources inutiles.

Et je me suis souvenu des CAP (vive IRCv3) et j'ai cherché un peu dans les docs. Il y a bien monitor et un bind associé.

Tout d'abord, vérifiez que votre eggdrop et le réseau supportent cette fonctionnalité. La manière la plus simple étant de faire:

tcl
.tcl monitor add <nick>
# <nick> is now online

Bien entendu, <nick> doit être connecté au réseau, pas forcément sur un canal commun, pour que vous ayez cette réponse et que le test soit valide.

Ensuite, le script est très simple:

tcl
proc mon {nick online} {
   set msg "hors"
   if {$online == 1} { set msg "en" }
   putserv "PRIVMSG vous :$nick est $msg ligne"
}
bind monitor - <nick> mon

Chaque fois que <nick> passera en/hors ligne, vous aurez le message.

Notes
  1. Le bind est censé pouvoir gérer les wildcards, mais mes tests n'ont pas été concluants à ce sujet (voir https://github.com/eggheads/eggdrop/issues/1404)
  2. Le monitor réagit aussi avec les changements de nick, un script optimal devrait jouer aussi avec account
  3. Vous devez penser à ajouter chaque personne dans la liste de monitor
zeolia: tchat gratuit, sans inscription ni publicité
Merci de ne pas demander d'aide en MP
Away
  Reply
#2
on peut définir qu'un seul nick dans le bind monitor?
  Reply
#3
(07/02/2023, 12:37)Amand Wrote: on peut définir qu'un seul nick dans le bind monitor?

(mal lu la question, réponse inappropriée)
Non. On en définit un à la fois avec la commande monitor add <nick> mais ça remplit une liste (monitor list donne la liste des monitoring en cours)

Les différentes commandes de monitor sont: add, delete, list, clear, online, offline, status

(bonne réponse)
Oui, mais on peut mettre autant de bind que l'on veut. Mais le souci sur les wildcard est gênant car on ne peut actuellement pas faire de bind sur un nick et ses variations.
zeolia: tchat gratuit, sans inscription ni publicité
Merci de ne pas demander d'aide en MP
Away
  Reply
#4
Ok, je vais faire des tests sur le script que tu as fait sur l'autre thread , ça a l'air intéressant , merci.
  Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)