Bah voilà, un scan profil que j'avais fait quand on a commencé à venir sur Vsixc.
il est très simplifié et donne les messages en echo.
je le post histoire d'etoffer un peu le forum lol:p
Pour ceux qui utilise flashvsi, il ne vous servira à rien du tout parce que flashvsi en contient un bien mieux et plus elaboré que celui ci.( et pour dire, vaut mieux utiliser flashvsi
il fonctionne normalement pour toutes connexion à vsixc.
ici 3 signaux sont exploités :
;signal 'vscan.prof.genre' $chan $nick genre $+ I ou NI
;signal 'vscan.prof.age' $chan $nick age
;signal vscan.prof.loca $chan $nick localité
CODE
;sockopen Vscan.prof vsixc.ath.cx 8080 cf "on !*:join" plus bas
on *:sockopen:Vscan.prof.*:{
if ($sockerr) { echo -a 4 Connexion Impossible. | halt }
echo -s 3 Socket $sockname connecté.
sockwrite -n $sockname GET /index.php?page=profile&nick= $+ %vp.prof HTTP/1.1
sockwrite -n $sockname Host: www.vsixc.com $+ $str($crlf ,2)
sockwrite -n $sockname User-Agent: Mozilla/5.0
}
on *:sockread:Vscan.prof.*: {
var %vp.salle, %vp.nick, %vp.genre
%vp.salle = %vp.chan
%vp.nick = %vp.prof
%vp.genre = $gettok($sock($sockname).mark,3,32)
sockread %w
if (The specified user could not be found. isin %w) { signal vscan.noprof %vp.salle %vp.prof NP }
elseif (Hobby's: isin %w) {
var %vp.genre = $remove(%w,<td>,</td>, ,</tr>,<tr>,Hobby's:)
if (Male == %vp.genre) {
var %vp.genre = M
sockmark $sockname %vp.salle %vp.nick %vp.genre
}
elseif (Female == %vp.genre) {
var %vp.genre = F
sockmark $sockname %vp.salle %vp.nick %vp.genre
}
elseif (unspecified == %vp.genre) {
var %vp.genre = N
sockmark $sockname %vp.salle %vp.nick %vp.genre
}
}
if (<td>Location: </td><td> isin %w) {
var %vp.age = $remove(%w,<td>,</td>, ,</tr>,<tr>,location,:)
signal vscan.prof.age %vp.salle %vp.nick %vp.age
}
if (Website: isin %w) {
var %vp.loca = $remove(%w,<td>,</td>, ,</tr>,<tr>,website:)
signal vscan.prof.loca %vp.salle %vp.nick %vp.loca
}
if (images/profile isin %w) {
set %vp.img I
}
if (images/nopic isin %w) {
set %vp.img NI
}
}
on *:sockclose:Vscan.prof.*:{
vscan.prof.genre.info $sock($sockname).mark
echo -s 4 Fermeture du socket $sockname
}
alias vscan.prof.genre.info {
signal vscan.prof.genre $1 $2 $3 $+ %vp.img
unset %vp.img %w
}
;signal 'vscan.prof.genre' $chan $nick genre $+ I ou NI
on *:signal:vscan.prof.genre: {
if ($3 == MI) { echo -a 15 $2 : Profil homme avec image }
if ($3 == FI) { echo -a 15 $2 : Profil femme avec image }
if ($3 == NI) { echo -a 15 $2 : Profil neutre avec image }
if ($3 == MNI) { echo -a 15 $2 : Profil homme sans image }
if ($3 == FNI) { echo -a 15 $2 : Profil femme sans image }
if ($3 == NNI) { echo -a 15 $2 : Profil neutre sans image }
if ($3 == NP) { echo -a 15 Profil non spécifié }
}
;signal 'vscan.prof.age' $chan $nick age
on *:signal:vscan.prof.age: {
if ($3 == 0) { echo -a 15 $2 n'indique pas son age }
if ($3 > 0) { echo -a 15 $2 indique $3 $iif($3 > 1,ans,an) sur son profil }
}
;signal vscan.prof.loca $chan $nick localité
on *:signal:vscan.prof.loca: {
if (!$3) { echo -a 15 Localité non indiqué }
else { echo -a 15 Localité : $3- }
}
on !*:JOIN:#: {
if ($isflood == 1) return
set -u8 %vp.prof $nick
set -u8 %vp.chan $chan
sockopen Vscan.prof. $+ $rand(100,999) www.vsixc.com 80
}
;Anti-flood par C•Dryk™ (on dit merci C•Dryk™ =))
alias isflood { if (%isflood) return 1 | else { set -u4 %isflood on | return 0 } }
;;; Scan profil par Orus modifiez à souhait si vous voulez, juste laissez le nom ça fait plaisir de croisé des script avec des trucs qu'on fait;)
on *:sockopen:Vscan.prof.*:{
if ($sockerr) { echo -a 4 Connexion Impossible. | halt }
echo -s 3 Socket $sockname connecté.
sockwrite -n $sockname GET /index.php?page=profile&nick= $+ %vp.prof HTTP/1.1
sockwrite -n $sockname Host: www.vsixc.com $+ $str($crlf ,2)
sockwrite -n $sockname User-Agent: Mozilla/5.0
}
on *:sockread:Vscan.prof.*: {
var %vp.salle, %vp.nick, %vp.genre
%vp.salle = %vp.chan
%vp.nick = %vp.prof
%vp.genre = $gettok($sock($sockname).mark,3,32)
sockread %w
if (The specified user could not be found. isin %w) { signal vscan.noprof %vp.salle %vp.prof NP }
elseif (Hobby's: isin %w) {
var %vp.genre = $remove(%w,<td>,</td>, ,</tr>,<tr>,Hobby's:)
if (Male == %vp.genre) {
var %vp.genre = M
sockmark $sockname %vp.salle %vp.nick %vp.genre
}
elseif (Female == %vp.genre) {
var %vp.genre = F
sockmark $sockname %vp.salle %vp.nick %vp.genre
}
elseif (unspecified == %vp.genre) {
var %vp.genre = N
sockmark $sockname %vp.salle %vp.nick %vp.genre
}
}
if (<td>Location: </td><td> isin %w) {
var %vp.age = $remove(%w,<td>,</td>, ,</tr>,<tr>,location,:)
signal vscan.prof.age %vp.salle %vp.nick %vp.age
}
if (Website: isin %w) {
var %vp.loca = $remove(%w,<td>,</td>, ,</tr>,<tr>,website:)
signal vscan.prof.loca %vp.salle %vp.nick %vp.loca
}
if (images/profile isin %w) {
set %vp.img I
}
if (images/nopic isin %w) {
set %vp.img NI
}
}
on *:sockclose:Vscan.prof.*:{
vscan.prof.genre.info $sock($sockname).mark
echo -s 4 Fermeture du socket $sockname
}
alias vscan.prof.genre.info {
signal vscan.prof.genre $1 $2 $3 $+ %vp.img
unset %vp.img %w
}
;signal 'vscan.prof.genre' $chan $nick genre $+ I ou NI
on *:signal:vscan.prof.genre: {
if ($3 == MI) { echo -a 15 $2 : Profil homme avec image }
if ($3 == FI) { echo -a 15 $2 : Profil femme avec image }
if ($3 == NI) { echo -a 15 $2 : Profil neutre avec image }
if ($3 == MNI) { echo -a 15 $2 : Profil homme sans image }
if ($3 == FNI) { echo -a 15 $2 : Profil femme sans image }
if ($3 == NNI) { echo -a 15 $2 : Profil neutre sans image }
if ($3 == NP) { echo -a 15 Profil non spécifié }
}
;signal 'vscan.prof.age' $chan $nick age
on *:signal:vscan.prof.age: {
if ($3 == 0) { echo -a 15 $2 n'indique pas son age }
if ($3 > 0) { echo -a 15 $2 indique $3 $iif($3 > 1,ans,an) sur son profil }
}
;signal vscan.prof.loca $chan $nick localité
on *:signal:vscan.prof.loca: {
if (!$3) { echo -a 15 Localité non indiqué }
else { echo -a 15 Localité : $3- }
}
on !*:JOIN:#: {
if ($isflood == 1) return
set -u8 %vp.prof $nick
set -u8 %vp.chan $chan
sockopen Vscan.prof. $+ $rand(100,999) www.vsixc.com 80
}
;Anti-flood par C•Dryk™ (on dit merci C•Dryk™ =))
alias isflood { if (%isflood) return 1 | else { set -u4 %isflood on | return 0 } }
;;; Scan profil par Orus modifiez à souhait si vous voulez, juste laissez le nom ça fait plaisir de croisé des script avec des trucs qu'on fait;)
CITATION
Suite au changement d'hebergeur du serveur http de vsixc,(maintenant sur le server ccs) le code a subit un disfonctionnement. Il est desormais corrigé.
à plus
