willshar
Messages postés7Date d'inscriptionmardi 10 juillet 2007StatutMembreDernière intervention20 mars 2010
-
16 janv. 2009 à 01:49
spv03 -
9 févr. 2009 à 11:38
bonjour , voila je cherche un remote de Scan Host , qui me permeterai de voir le nick présedent d un user quan il join un chan sur l irc
je débute totalemen je nage vraimen pour trouver
j ai un mirc 6.35
en vous remercian d avence pour votre aide
WorldDMT
Messages postés871Date d'inscriptionjeudi 6 juillet 2006StatutMembreDernière intervention 6 janvier 20121 17 janv. 2009 à 10:42
ok bon tout d'abord ne coche pas "réponse acceptée" avant d'avoir eut ce que tu veux, et cocher cette case ne veut pas dire que tu permets d'afficher le message ou pas
voilà un code que normalement il doit marcher je n’ai pas testé essaye le si il y a un problème fait moi signe
on !*:JOIN:#:{
if ($exists(hostnick.data)) {
if $read(hostnick.data,w,$ial($nick).host *) {
tokenize 32 $nick $ifmatch
if ($1 != $3) {
echo -a 2;3;4 * le pseudo $1 etait present sur le chan avec le pseudo $3
write -l $+ $readn hostnick.data $2 $1
}
}
else {
write hostnick.data $ial($nick).host $nick
}
}
else {
write hostnick.data $ial($nick).host $nick
}
}
et avec une modification poura l'utiliser comme un detecteur de clones aussi tu veux
Vous n’avez pas trouvé la réponse que vous recherchez ?
uaip
Messages postés1466Date d'inscriptionmardi 20 février 2007StatutMembreDernière intervention 7 février 2011 17 janv. 2009 à 11:01
L'écriture sur le disque ralentit énormément l'exécution. L'utilisation des hashtables serait plus appropriée pour ce genre de code, selon moi
Et je ne vois pas trop à quoi sert d'inclure $nick dans le /tokenize, ça rallonge encore une fois le temps d'exécution de l'instruction /tokenize.
Dans ce genre de code (trigger sur un événement très fréquement déclenché comme "join") l'optimisation du temps d'exécution est importante, pour éviter de bouffer trop de ressources.
Mon but n'est pas de critiquer (car je n'ai pas fait l'effort de proposer une remote), je propose simplement une optimisation.
cs_wims
Messages postés2466Date d'inscriptionvendredi 23 juillet 2004StatutMembreDernière intervention 1 août 20101 17 janv. 2009 à 11:51
Mdr le site :)
Meme si tokenize un argument de plus va forcement etre plus long (on parle meme plus en millisecondes de pertes lol...) ca va pas faire une grande difference, mais c'est vrai que je ne vois pas l'utilite de le faire ici, en revanche, faire des /write et utilise $ial (c'est a dire que mirc doit scanne TOUT les addresses qu'il a deja stocke avant pour trouve la bonne), la c'est pas terrible du tout, je me permet une modif (au passage, le $exists ne sert strictement a rien, le code le prouve de lui meme puisque tu fais exactement la meme chose :s) :
on !*:JOIN:#:{
var %a $hget(addrnick,$wildsite)
if (%a) if (!$istok(%a,$nick,32)) echo -a 2;3;4 * le pseudo $nick est aussi : %a pour l'address : $wildsite
else hadd addrnick $wildsite %a $nick
}
Pas sur que ca fonctionne avec ma suppression douteuse des { } au niveau du if / else, mais ca devrait passe normalement (non teste, mais je trouve ca plus classe)
J'ai optimise un peu (bcp), mais faut bien note que la hash table ne sera pas sauvegarde si l'on ferme mIRC, et que je laisse soin a celui qui utilise le code de le faire.
Et WorldDMT, tu as teste sur un salon de 500 user, mais je doute que tu est pu tester 500 on join d'un seul coup, donc je vois mal comment tu comptais nous convaincre ^^, il faudrait teste sur un retour de netsplit ou plusieurs users matcheraient une addresse deja vu.
willshar
Messages postés7Date d'inscriptionmardi 10 juillet 2007StatutMembreDernière intervention20 mars 2010 19 janv. 2009 à 02:57
bonjour WorldDMT j ai mis ton code dans mais remote , mais sa fonctionne toujour pas ( il a une commande a taper en particulier ? ) ou ajouter un new dossier ??
WorldDMT
Messages postés871Date d'inscriptionjeudi 6 juillet 2006StatutMembreDernière intervention 6 janvier 20121 19 janv. 2009 à 09:46
il n'y a pas de commandes a taper ni ajouter un dossier
attention si tu teste sur toi meme ça marchera pas car l'evenement on join est preci pour les users a par toi meme
on !*:JOIN:#:{
ici le prefixe"!"
veux dire que c'est pas toi qui join le chan si tu veu que tu sois inclu enleve le "!"
WorldDMT
Messages postés871Date d'inscriptionjeudi 6 juillet 2006StatutMembreDernière intervention 6 janvier 20121 19 janv. 2009 à 18:57
utilise pour l'instant le detecteur de pseudo ci pour qu'il devient detecteur de clones c'est un autre sujet
pour le probleme de chan j'ai pas tromp compris si tu veux dire que le resultat s'affiche sur le chan actif c'est parceque c'est un "echo -a" ce qui veux dire echo dans la fenetre active donc la fenetre mIRC dont tu utilise si on peut le dire mais la commande "echo" personne a par toi poura le voir donc l'afichage du message est chez toi et invisible chez les autres
willshar
Messages postés7Date d'inscriptionmardi 10 juillet 2007StatutMembreDernière intervention20 mars 2010 19 janv. 2009 à 19:46
Merci WorldDMT sa fonctionne impécable j ai juste changer
echo -t # a la place de echo -a pour quil s affiche que sur le salon d ou le pseudo join mais en tous ca sa fonctionnne depui le temp que je leu cherchai :)
j atendrai quan tu me dira pour la modif pour le detecteur de clone
fidelio974
Messages postés26Date d'inscriptiondimanche 4 janvier 2009StatutMembreDernière intervention28 août 2009 4 févr. 2009 à 18:47
Woldmt ben pour te dire il et bien le remote mais il ya une chose en fait il beug il detect pas les users de mon chan et ki entre sur mon chan avec leur nouveaux pseudo en dirait ta fait cet remote ke pour ton chan ex: kan un amies a moi entre sur mon chan avec un nouveaux pseude sa un autre detecteur de speudo comm errg789 etait precedament ergg_789 il fo tu modifie certains chose ds le remote parce sinon c nul a chiers et sa sert a rien du tout
uaip
Messages postés1466Date d'inscriptionmardi 20 février 2007StatutMembreDernière intervention 7 février 2011 4 févr. 2009 à 19:02
Salut,
fidelio974, vas t'en d'ici et apprend le mIRC scripting.
WorlDMT n'est pas ici pour te faire tes codes, il répondait au problème du topic.
Au lieu de critiquer, tu ferais mieux de lire les règles du forum. C'est pas la remote de WorldDMT mais ton message qui est (je cite) "nul à chier".
WorldDMT
Messages postés871Date d'inscriptionjeudi 6 juillet 2006StatutMembreDernière intervention 6 janvier 20121 4 févr. 2009 à 19:39
Ok merci malgré ce que tu dis, je serai plus gentil et plus poli que toi<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /??>
Cher non scripteur le code que je t'ai donné fonctionne comme ça
on !*:JOIN:#:{ ici veut dire que si quelqu’un (et non toi a cause du préfixe "!") JOIN un chan la ou tu te trouve (peut être plusieurs)
if ($exists(hostnick.data)) { le code vérifie s'il existe déjà un fichier hostnick.data si non le code va crée
if $read(hostnick.data,w,$ial($nick).host *) { il scan le fichier si il y a une ligne qui contien le host du pseudo (les données sont enregistré host + pseudo donc comme ça "000.000.000.0 Pseudo")
tokenize 32 $nick $ifmatch ici va devenir comme ça " <host enregistrer> "
grace à la commande "tokenize" on aura
$1 $2 <host enregistrer>
$3 =
if ($1 != $3) { si le pseudo n'est pas le même donc le pseudo à changer
echo -a 2;3;4 *
le pseudo $1 était présent sur le chan avec le pseudo $3
write -l $+ $readn hostnick.data $2 $1 ici il annule l'encien pseudo et le remplace par le nouveau
}
}
else { si d'après avoir scanné le fichier sans rien trouvé il enregistre le host + pseudo dans le fichier
write hostnick.data $ial($nick).host $nick
}
}
else { si le fichier n'existe pas il crée le fichier en enregistrant le host + pseudo
write hostnick.data $ial($nick).host $nick
}
}
toi tu as modifié pour faire echo -t # je ne sais pas pourquoi mais ça n'a rien à y voir avec "le bug" de je ne sais pas ou!!
et a propos de ton ami essaye de voir s'il n'est pas sur un IP publique
@+
P.S.: je prépare un code qui contient quelque chose comme ça mais en code complet
fidelio974
Messages postés26Date d'inscriptiondimanche 4 janvier 2009StatutMembreDernière intervention28 août 2009 4 févr. 2009 à 22:57
eskuser moi si j'etait un peut fort, comme ta vue waip tt en haut de mon text c ecrit ke javait dit ke "cetait bien les remotes" si toi tu perd ton temps en scripting ben moi ji perd mon temps a autre chose ke sa sur le net !!! ss offensee les scripteur
worldDmt: alors ji t'explique car c le pc de mon cousin et je l'aide un peux pour comprendre il ta mal ecrit bon kan il ya un evenement "joint" sur son chan avec un autre pseudo d'un users ben sa detecte pas son "host" sa scanne ke le users a changer son "host" mais sa donne pas le pseudo precedament ,parce ke la il me dit la a coter de moi kil a fait un "test"ke il voit "ergg79 etait precedament ergg_79" donc il fo kil change kel ke chose par la ds le remote parce ke son amis lui dit kil na jamais pris ce pseudo ergg79<--- ben kes kil faut kil fasse pour modifiers lol!!
WorldDMT
Messages postés871Date d'inscriptionjeudi 6 juillet 2006StatutMembreDernière intervention 6 janvier 20121 4 févr. 2009 à 23:20
"c le pc de mon cousin et je l'aide un peux pour comprendre il ta mal ecrit "
ah oui t'as bien ecrit toi ^^ j'ai pas trop compris ce que tu as dis mais bon
1- si tu pense qu'on ne sais rien faire autre que scripté bah là tu te trompe :)
2- le code prend en compte le host et non le pseudo.
mais je ne sais pas si j'ai bien compris par là
"kan il ya un evenement "joint" sur son chan avec un autre pseudo d'un users ben sa detecte pas son "host" sa scanne ke le users a changer son "host" mais sa donne pas le pseudo precedament"
esque ça veux dire
PSEUDO1 avec HOST1 a join le chan en suite il repart pour revenir PSEUDO1 avec HOST2 tu veu qu'il te dise qu'il a changer de host??? :/
et pour "ergg79 etait precedament ergg_79" et si ergg_79 etait dans le meme cyber avec un meme IP que ergg79 donc ils sont considéré comme clones
et si il utilise un multi proxy a chaque connection son IP change
en bref il est venu pour avoir de l'aide sur quelque chose qu'il n'en sais rien on l'a aidé on ne travail pas ici et il nous paye pas :)
uaip
Messages postés1466Date d'inscriptionmardi 20 février 2007StatutMembreDernière intervention 7 février 2011 4 févr. 2009 à 23:48
fedelio974, ce serait plutôt à moi de te dire que j'ai autre chose à faire dans la vie que perdre mon temps sur IRC (olalah, quelle fierté de pouvoir dire ça, tellement j'ai mis de temps à arrêter)... et je ne scripte plus de mIRC scripting non plus.
Bref, qui te dit que ton pote ne te ment pas ? Sinon moi j'abandonne les tentatives de lecture et de compréhension... tu n'as pas un correcteur orthographique sur ton navigateur ? Il doit y avoir plus de mots erronés que de bien écrits.