Sockets: opérateurs isop, isvoice, ishop, ison...

Signaler
Messages postés
65
Date d'inscription
mardi 9 novembre 2004
Statut
Membre
Dernière intervention
1 décembre 2007
-
Messages postés
1804
Date d'inscription
mardi 15 juillet 2003
Statut
Membre
Dernière intervention
22 septembre 2009
-
Salut à tous,
Voilà, je script un petit bot mirc en socket, mais je me retrouve face à un problème. Effectivement, vous devez savoir que dans les sockets, les opérateurs des comparateurs If-Then-Else isop, isvoice, ishop, ison ne fonctionnent pas. Alors j'ai consulté d'autres bots socket et j'y ai réfléchi et j'ai pensé à des identifieurs par exemple $isop(nick,chan), $isvoice(nick,chan)... et l'on m'a "éclairé", en me disant d'utiliser /sockwrite -n $sockname WHO chan et ensuite le raws 352. Mais cela reste confus quand même, alors si quelqun pourrait m'eclairer en me donnant d'autres indices ou des exemples ça serait sympa ! Merci d'avance ...
A voir également:

2 réponses

Messages postés
2466
Date d'inscription
vendredi 23 juillet 2004
Statut
Membre
Dernière intervention
1 août 2010
1
Ben avec ta socket tu envoie exactement ce qu'on ta dis, cad un who sur le salon
ensuite dans la raw 352, si la socket existe, tu fait tes conparaisons :

raw 352:*:{
if ($socket(tasocket)) {
var %r = $remove($7,H,r,G,*,d)
echo -a > axx : %r
 }
}
apres tu peux faire :
if (~ isin %r) echo -a owner
elseif (& isin %r) echo -a admin
elseif (@ isin %r) echo -a op
etc...
Messages postés
1804
Date d'inscription
mardi 15 juillet 2003
Statut
Membre
Dernière intervention
22 septembre 2009
5
Les clients IRC ne font pas de /who automatique en général. Un "/names" suffit, je ne sais plus le numéro du RAW de réponse. Je me demande même si les "names" sont pas envoyés automatiquement, tout est à vérifier.
De toute facon, tu devras gérer toi même une liste interne d'utilisateurs.

A noter que tu auras un problème (qui existe également sur mIRC, souci dans l'implémentation de la RFC probablement) :
- si User est voicé sur #salon
- puis Opé sur #salon
- le /names renvoie @User, et s'il se déope, les gens qui ont /join après son opage ne le verront pas voicé, alors que les autres si.
Enfin c'est un détail... ;o)

PaDa