$query($nick)

Camanche Messages postés 149 Date d'inscription jeudi 23 octobre 2003 Statut Membre Dernière intervention 17 novembre 2007 - 20 oct. 2007 à 15:29
RCA ArKanis Messages postés 1287 Date d'inscription mercredi 21 avril 2004 Statut Membre Dernière intervention 21 février 2009 - 2 nov. 2007 à 12:12
Je voudrais que quand un user que j'ai en privé quitte, ça me le marque dans son pv. J'ai fait ça mais ça n'a pas l'air de marcher.
on 1:quit: if ( $nick = $query($nick) ) echo -t $query($nick) $nick a quitté le serveur

Et sinon, je voudrais aussi personnaliser les messages d'ajout/suppression de notify. Pour l'ajout, j'ai fait ça mais ça ne marche pas non plus.
raw 303:*:{ echo -a $timestamp Tu viens d'ajouter $2 à ta liste de notify | halt }

Pour la suppression je n'ai pas trouvé.

19 réponses

cs_wims Messages postés 2466 Date d'inscription vendredi 23 juillet 2004 Statut Membre Dernière intervention 1 août 2010 1
20 oct. 2007 à 15:50
Il n'y a aucun moyen de savoir qu'un pseudo a fermé la fenetre de privée avec toi.
Pour les notify, tu parles de notify de mirc ? ça n'a pas de rapport avec le server donc, c'est mirc qui gère ça.
De plus :
Format : 303 :<nicknames>
Exemple : 303 Clarice lipstick markNY sweetbabe
Réseau : Tous

Paramètres :
<nicknames>    Pseudonymes d'utilisateurs qui sont sur l'IRC.

Info : Ceci est envoyé en réponse à une requête ISON. La réponse fait ressortir tous les pseudonymes qui sont sur l'IRC de la demande originelle. Par exemple, si 'ISON a b c d' a été envoyé, et b et d sont sur l'IRC, alors cette réponse retournera 'b d' dans 'nicknames'.

Notes : Notez que la réponse ISON contiendra la lettre propre à chaque pseudonyme, quel que soit la lettre actuelle utilisée dans la requête originelle. Si aucun pseudonyme n'est en ligne dans la liste demandée, une réponse raw 303 vide est retournée. Cette réponse est utilisée par des listes de notification et fonctionnalités dans la plupart des clients, incluant mIRC, donc faites attention lorsque vous utilisez ceci dans un script.
0
Camanche Messages postés 149 Date d'inscription jeudi 23 octobre 2003 Statut Membre Dernière intervention 17 novembre 2007
20 oct. 2007 à 16:49
Euh... Je ne comprends pas tout.
Pour le message en query, tu n'as pas compris ce que je voulais. Bien sur qu'on ne peut pas savoir si quelqu'un a fermé notre pv, ça parait impossible. Maintenant on peut savoir si il quitte le serveur. Donc je voudrais écrire une phrase dans un pv qu'on a où la personne a été déconnectée ($query($nick) ?).

Et pour ce que tu me dis concernant la notify, ton code me donnera ceux de ma listes de notifiés qui sont présents sur le serveur non? C'est pas ça que je veux...
On a les évènements notify et unotify pour nous prévenir de la connexion ou de la déconnexion d'un usager de notre liste de notify, mais quels sont les évènements/raw pour dire quand on ajoute ou supprime quelqu'un de sa notify?
0
RCA ArKanis Messages postés 1287 Date d'inscription mercredi 21 avril 2004 Statut Membre Dernière intervention 21 février 2009
20 oct. 2007 à 18:44
on *:quit: if ($query($nick)) echo -t $nick $nick a quitté le serveur dans un if, le cas d'égalité s'écrit avec deux donc if (%var %var2) par exemple

pour le notify, désolé mais j'ai pas vraiment le temps et wims semble s'y connaitre beaucoup mieux que moi ^^
0
Camanche Messages postés 149 Date d'inscription jeudi 23 octobre 2003 Statut Membre Dernière intervention 17 novembre 2007
20 oct. 2007 à 20:40
En fait juste ça, c'est bon
on 1:quit: if ( $nick = %nick.query ) echo %nick.query 4 $+ $timestamp 4 $+ $nick 12a quitté le serveur

Et je voudrais le faire aussi en cas de connexion, j'ai essayé ça
on 1:connect: if ( $nick = %nick.query ) echo %nick.query 4 $+ $timestamp 4 $+ $nick 12vient de se connecter au serveur
mais bizarrement ça ne fonctionne pas
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
uaip Messages postés 1466 Date d'inscription mardi 20 février 2007 Statut Membre Dernière intervention 7 février 2011
21 oct. 2007 à 00:45
Arkanis, je suis pas sûr pour les deux "= =".
il me semble que "=" n'est pas pareil que "= =" ainsi que "= = =" (qui lui, prend en compte la case)
sinon je n'ai jamais vu de différence entre "=" et "= ="... sans doute que le "= =" est plus stable...
je ne cherche pas à te contredire, hein, mais à comprendre.

Honorine <3 /°/ www.uaipcreations.ovh.org
0
cs_wims Messages postés 2466 Date d'inscription vendredi 23 juillet 2004 Statut Membre Dernière intervention 1 août 2010 1
21 oct. 2007 à 04:29
A la base, l'aide de mirc dis de mettre deux egal, c'est plutot une erreur qu'autre chose que de pouvoir en mettre qu'un seul, et ça se corrigera pas parce que ça briserai trop de scripts :) (le = est normalement utilisé pour les variable c'est tout, même si depuis la 6.3, il n'est plus nécéssaire du tout)
0
uaip Messages postés 1466 Date d'inscription mardi 20 février 2007 Statut Membre Dernière intervention 7 février 2011
21 oct. 2007 à 10:23
voila une réponse convaincante, merci wims

Honorine <3 /°/ www.uaipcreations.ovh.org
0
RCA ArKanis Messages postés 1287 Date d'inscription mercredi 21 avril 2004 Statut Membre Dernière intervention 21 février 2009
21 oct. 2007 à 11:56
comme wims l'a dit, le = est utilisé pour fixer une variable, et d'en mettre deux c'est utilisé pour la condition d'égalité

Tu as dit :
Arkanis, je suis pas sûr pour les deux "= =".
il me semble que "=" n'est pas pareil que "= ="

ça ne serait pas exactement ce que je disais dans mon message ? oO
0
cs_wims Messages postés 2466 Date d'inscription vendredi 23 juillet 2004 Statut Membre Dernière intervention 1 août 2010 1
21 oct. 2007 à 15:53
Je pense qu'il voulait dire que les deux fonctionne et fonctionneront tjs, ça peut etre utile dans un défis, mais sinon ça n'a aucun interet (j'ai même fait un bench vite fait, sur 20000 itérations, le = commence a gagné 5 ms sur le == donc vraiment très peu d'interet)
0
Camanche Messages postés 149 Date d'inscription jeudi 23 octobre 2003 Statut Membre Dernière intervention 17 novembre 2007
30 oct. 2007 à 09:03
Vous n'avez pas d'idée concernant la reconnexion? J'ai mis ça

on *:join:* if ($query($nick)) echo $nick 4 $+ $timestamp 4 $+ $nick 12est connecgté sur le serveur

Mais sans grand résultat...
0
RCA ArKanis Messages postés 1287 Date d'inscription mercredi 21 avril 2004 Statut Membre Dernière intervention 21 février 2009
30 oct. 2007 à 09:38
tu as oublié le : après l'étoile
on *:join:*:if ($query($nick)) echo 4 -t $nick $nick �3;12est connecté sur le serveur
0
RCA ArKanis Messages postés 1287 Date d'inscription mercredi 21 avril 2004 Statut Membre Dernière intervention 21 février 2009
30 oct. 2007 à 09:40
un petit détail : ça s'activera lorsque la personne rejoint un salon, et non pas quand elle se connecte au serveur
donc tu pourras avoir plusieurs fois le message

tu devrais donc plutôt mettre : $nick �3;12a rejoint le salon $chan
0
Camanche Messages postés 149 Date d'inscription jeudi 23 octobre 2003 Statut Membre Dernière intervention 17 novembre 2007
30 oct. 2007 à 11:40
Ca marche :)
Mais comme tu dis Arkanis, ce n'est pas exactement ça qu'il me faut lol. Peut-on y mettre une condition pour que ça ne le dise qu'une fois?
L'évènement on connect agit sur mirc pas sur le serveur ou je me trompe?
0
RCA ArKanis Messages postés 1287 Date d'inscription mercredi 21 avril 2004 Statut Membre Dernière intervention 21 février 2009
30 oct. 2007 à 13:10
le ON CONNECT ne concerne que toi
tu peux utiliser une variable (ou hash table) pour mémoriser le fait qu'il ait rejoint
tu effaceras cette variable sur un ON QUIT et ça sera donc tout à fait l'équivalent de ce que tu veux
0
Camanche Messages postés 149 Date d'inscription jeudi 23 octobre 2003 Statut Membre Dernière intervention 17 novembre 2007
30 oct. 2007 à 13:16
Je ne maitrise pas trop les variables, peux-tu me faire le code en m'expliquant stp?
0
RCA ArKanis Messages postés 1287 Date d'inscription mercredi 21 avril 2004 Statut Membre Dernière intervention 21 février 2009
30 oct. 2007 à 15:50
on !*:join:*:{
  if (($query($nick)) && (!$hget(Connect,$nick))) echo 4 -t $nick $nick �3;12est connecté sur le serveur
  hadd -m Connect $nick 1
}
on *:quit:if ($hget(Connect,$nick)) hdel Connect $nick
0
Camanche Messages postés 149 Date d'inscription jeudi 23 octobre 2003 Statut Membre Dernière intervention 17 novembre 2007
30 oct. 2007 à 16:02
Nickel merci :)
Je vais essayer de faire ça avec un mask plutôt que le pseudo. C'est pas gagné ça non plus lol.
0
Camanche Messages postés 149 Date d'inscription jeudi 23 octobre 2003 Statut Membre Dernière intervention 17 novembre 2007
2 nov. 2007 à 04:53
Bah c'était prévu, je nage lol
0
RCA ArKanis Messages postés 1287 Date d'inscription mercredi 21 avril 2004 Statut Membre Dernière intervention 21 février 2009
2 nov. 2007 à 12:12
suffit de remplacer les $nick dans les hash tables par $wildsite, càd 4 changements
on !*:join:*:{
  if (($query($nick)) && (!$hget(Connect,$wildsite))) echo 4 -t $nick $nick �3;12est connecté sur le serveur
  hadd -m Connect $wildsite 1
}
on *:quit:if ($hget(Connect,$wildsite)) hdel Connect $wildsite
0
Rejoignez-nous