begin process at 2008 05 17 07:38:32
1 173 922 membres
53 nouveaux aujourd'hui
13 973 membres club

Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum.
Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

MIRSMAIL CLIENT MIRC POUR LE CHAT DE SMAIL (WWW.SMAIL.FR)


Information sur la source

Catégorie :Réseau & Internet Classé sous : smail, client, chat, tchat, mirc Niveau : Débutant Date de création : 22/01/2007 Date de mise à jour : 06/02/2007 18:29:05 Vu : 4 739

Note :
Aucune note

Commentaire sur cette source (7)
Ajouter un commentaire et/ou une note

Description

Ce script sert à se connecter au chat de smail (www.smail.fr)

Source

  • ; ## MIRSmail by pppaaahhh
  • ; ## Merci d'utiliser le script :)))
  • ; ## Ce script est un client pour le chat de www.smail.fr
  • ; ## ouverture du socket html avec smail
  • alias mirsmail {
  • sockopen mirsmail www.smail.fr 80
  • echo -s Etape 1/5 : Connexion à www.smail.fr en cours .....
  • window -c @MIRSmail!
  • sockclose mirsmaila
  • set %nopv 0
  • set %pseudo.ignore
  • set %ffoistid 0
  • set %ffoismirsmail 1
  • set %tofo 0
  • set %nopv.contact2 1
  • set %nopv.contact
  • set %pseudo.crypt
  • if ($hget(MIRSmail) == $null) { hmake MIRSmail 10 }
  • }
  • on *:sockopen:mirsmail:{ if (%ffoismirsmail == 1) { mirsmail81 } | else { mirsmail83 } }
  • ; ## on récupère le cookie de connexion
  • alias mirsmail81 {
  • set %ffoismirsmail 0
  • sockwrite mirsmail GET / HTTP/1.1 $+ $crlf $+ Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/x-shockwave-flash, */* $+ $crlf $+ Referer: http://www.google.fr/search?sourceid=navclient&hl=fr&ie=UTF-8&rls=GGLD,GGLD:2006-23,GGLD:fr&q=smail $+ $crlf $+ Accept-Language: fr $+ $crlf $+ Accept-Encoding: gzip, deflate $+ $crlf $+ User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; .NET CLR 1.1.4322) $+ $crlf $+ Host: www.smail.fr $+ $crlf $+ Connection: Keep-Alive $+ $crlf $+ $crlf
  • echo -s Etape 2/5 : Extraction du cookie ........
  • }
  • ; ## la on s'authentifie avec le login et le mot de passe
  • alias mirsmail82 {
  • var %DATA1 SMAILID= $+ %smailid1 $+ &sid=null&authlogin= $+ %llogin $+ &authpassword= $+ %mmot.de.passe $+ &auth=Se+connecter
  • sockwrite mirsmail POST /index.php HTTP/1.1 $+ $crlf $+ Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/x-shockwave-flash, */* $+ $crlf $+ Referer: http://www.smail.fr/ $+ $crlf $+ Accept-Language: fr $+ $crlf $+ Content-Type: application/x-www-form-urlencoded $+ $crlf $+ Accept-Encoding: gzip, deflate $+ $crlf $+ User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; .NET CLR 1.1.4322) $+ $crlf $+ Host: www.smail.fr $+ $crlf $+ Content-Length: $len(%DATA1) $+ $crlf $+ Connection: Keep-Alive $+ $crlf $+ Cache-Control: no-cache $+ $crlf $+ Cookie: SMAILID= $+ %smailid1 $+ ; __utma=115165701.837772398.1156347535.1156347535.1156347535.1; __utmb=115165701; __utmc=115165701; __utmz=115165701.1156347535.1.1.utmccn=(organic)|utmcsr=google|utmctr=smail|utmcmd=organic $+ $crlf $+ $crlf $+ %DATA1
  • echo -s Etape 3/5 : Authentification ................
  • }
  • ; ## recupération des alias
  • alias mirsmail84 {
  • sockwrite mirsmail GET /rencontres/dial.php HTTP/1.1 $+ $crlf $+ Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/x-shockwave-flash, application/vnd.ms-powerpoint, application/vnd.ms-excel, application/msword, */* $+ $crlf $+ Referer: http://www.smail.fr/rencontres/dial.php $+ $crlf $+ Accept-Language: fr $+ $crlf $+ Accept-Encoding: gzip, deflate $+ $crlf $+ User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; .NET CLR 1.1.4322) $+ $crlf $+ Host: www.smail.fr $+ $crlf $+ Connection: Keep-Alive $+ $crlf $+ Cookie: SMAILID= $+ %smailid1 $+ $crlf $+ $crlf
  • }
  • ; ## récupération du TempID
  • alias mirsmail83 {
  • var %DATAa pseudo= $+ %mirsmailpseudo $+ &age= $+ %agee $+ &sexe= $+ %ssexe $+ &ville= $+ %vville $+ &photos= $+ %fotox $+ &salon=&mychan=&submit=Chatter
  • sockwrite mirsmail POST /rencontres/dial.php HTTP/1.1 $+ $crlf $+ Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/x-shockwave-flash, */* $+ $crlf $+ Referer: http://www.smail.fr/rencontres/dial.php $+ $crlf $+ Accept-Language: fr $+ $crlf $+ Content-Type: application/x-www-form-urlencoded $+ $crlf $+ Accept-Encoding: gzip, deflate $+ $crlf $+ User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; .NET CLR 1.1.4322) $+ $crlf $+ Host: www.smail.fr $+ $crlf $+ Content-Length: $len(%DATAa) $+ $crlf $+ Connection: Keep-Alive $+ $crlf $+ Cache-Control: no-cache $+ $crlf $+ Cookie: SMAILID= $+ %smailid1 $+ $crlf $+ $crlf $+ %DATAa
  • .timer45 1 20 vverif
  • }
  • ; ## connexion au chat, ouverture du deuxième socket ;)
  • alias mirsmaila {
  • echo -s Etape 5/5 : Connexion au chat smail réussie .
  • sockopen mirsmaila 213.251.132.103 9988
  • }
  • ; ## lecture sur le socket mirsmail
  • on *:sockread:mirsmail:{
  • var %smail81
  • sockread %smail81
  • if (Set-Cookie isin %smail81) { set %smailid1 $gettok($gettok(%smail81,2,61),1,59) | mirsmail82 }
  • elseif (tid isin %smail81) && (%ffoistid == 0) { set %ffoistid 1 }
  • elseif (tid isin %smail81) && (%ffoistid == 1) { set %tid1 $gettok($gettok(%smail81,4,61),1,34) | mirsmaila }
  • elseif (SELECT NAME="pseudo" isin %smail81) {
  • echo 4 -s Entrer le pseudo que vous voulez sur le chat, l'age, le sexe, la ville et le salon à rejoindre ^^
  • did -e MIRSmail 3 | did -e MIRSmail 6 | did -e MIRSmail 13 | did -e MIRSmail 16 | did -e mirsmail 21
  • did -e MIRSmail 5 | did -e MIRSmail 4 | did -e MIRSmail 8 | did -e MIRSmail 19
  • did -b MIRSmail 1 | did -b MIRSmail 2 | did -b MIRSmail 17 | did -b MIRSmail 18 | did -b MIRSmail 23
  • if (OPTION value= isin $gettok(%smail81,5,34)) { /did -a MIRSmail 3 $gettok(%smail81,6,34) }
  • if (OPTION value= isin $gettok(%smail81,7,34)) { /did -a MIRSmail 3 $gettok(%smail81,8,34) }
  • if (OPTION value= isin $gettok(%smail81,9,34)) { /did -a MIRSmail 3 $gettok(%smail81,10,34) }
  • if (OPTION value= isin $gettok(%smail81,11,34)) { /did -a MIRSmail 3 $gettok(%smail81,12,34) }
  • if (OPTION value= isin $gettok(%smail81,13,34)) { /did -a MIRSmail 3 $gettok(%smail81,14,34) }
  • if (OPTION value= isin $gettok(%smail81,15,34)) { /did -a MIRSmail 3 $gettok(%smail81,16,34) }
  • }
  • elseif (Mauvais login ou mot de passe isin %smail81) { echo 4 -s Mauvais login ou mot de passe | sockclose mirsmail | hfree MIRSmail | mirsmail.unset }
  • elseif (Votre compte est ferm isin %smail81) { echo 4 -s Votre compte est fermé :( | sockclose mirsmail | hfree MIRSmail | mirsmail.unset }
  • elseif (Editer mes informations isin %smail81) { /mirsmail84 }
  • elseif (select name="photos" isin %smail81) || (%tofo == 1) {
  • set %tofo 1
  • if (option value="-1" isin %smail81) { set %tofo 0 | /did -a MIRSmail 21 Aucune }
  • elseif (option value=" isin %smail81) { /did -a MIRSmail 21 $gettok(%smail81,2,34) }
  • }
  • }
  • ; ## evenement à l'ouverture du deuxième socket mirsmaila, socket pour le chat
  • on *:sockopen:mirsmaila:{
  • sockwrite mirsmaila 1 $+ $chr(09) $+ %tid1
  • /window -ael12S @MIRSmail!
  • /titlebar @MIRSmail! le client smail pour mirc
  • }
  • ; ## lecture sur le socket du chat ;)
  • on *:sockread:mirsmaila:{
  • if ($sockerr > 0) return
  • :nextread
  • sockread 800 &aa
  • if ($sockbr == 0) return
  • hadd -b MIRSmail item &aa
  • set %varrr $hget(MIRSmail,item)
  • ssockread
  • goto nextread
  • }
  • ; ## alias qui traite ce qui vient du serveur
  • alias ssockread {
  • if ($gettok(%varrr,1,09) == 10) {
  • ; ## message sur le salon
  • set %varrr $gettok(%varrr,1,13)
  • tokenize 09 %varrr
  • var %pseudo.sexe $gettok($line(@MIRSmail!,$fline(@MIRSmail!,$2 $+ *,1,1),1),2,44)
  • if ($fline(@MIRSmail!,$2 $+ *,1,1) != $null) && ($findtok(%pseudo.ignore,$2,1,09) == $null) {
  • if (%message.crypt == $null) {
  • if (%mirsmailpseudo !isin $4) {
  • if (%pseudo.sexe != $null) { echo $replace(%pseudo.sexe,H,12,F,13,X,3,B,4,A,1) @MIRSmail! $2 $+ > $4 }
  • else { echo 3 @MIRSmail! $2 $+ > $4 }
  • if (HNZROXIBKG isin $4) && ($findtok(%pseudo.crypt,$2,1,09) == $null) { echo 4 @MIRSmail! $2 est un utilisateur de mirsmail et a activé le cryptage, activé le pour discuter avec cette personne | set %pseudo.crypt $addtok(%pseudo.crypt,$2,09) | echo 4 -s $2 est un utilisateur de mirsmail et a activé le cryptage, activé le pour discuter avec cette personne }
  • }
  • else { echo 7 @MIRSmail! $2 $+ > $4 }
  • }
  • else { echo $replace(%pseudo.sexe,H,12,F,13,X,3,B,4,A,1) @MIRSmail! $2 $+ > $replacecs($4,Z,a,Y,b,X,c,W,d,V,e,U,f,T,g,S,h,R,i,Q,j,P,k,O,l,N,m,M,n,L,o,K,p,J,q,I,r,H,s,G,t,F,u,E,v,D,w,C,x,B,y,A,z,xc|,@,&,$chr(32),>>>,1,|<>,2,>c$,3,^-*,4,^>$,5,^->,6,^c>,7,^<>,8,|>>,9) | if (HNZROXIBKG isin $4) && ($2 != %mirsmailpseudo) && ($findtok(%pseudo.crypt,$2,1,09) == $null) { echo 4 @MIRSmail! $2 est utilisateur de mirsmail et a activé le cryptage, activez le pour discuter avec lui | set %pseudo.crypt $addtok(%pseudo.crypt,$2,09) | echo 4 -s $2 est un utilisateur de mirsmail et a activé le cryptage, activé le pour discuter avec cette personne } }
  • }
  • elseif ($fline(@MIRSmail!,$2 $+ *,1,1) == $null) && ($findtok(%pseudo.ignore,$2,1,09) == $null) { if (%mirsmailpseudo !isin $4) { echo 3 @MIRSmail! $2 $+ > $4 | aline -lc3 @MIRSmail! $2 } | else { echo 7 @MIRSmail! $2 $+ > $4 | aline -lc3 @MIRSmail! $2 } }
  • else { }
  • }
  • elseif ($gettok(%varrr,1,09) == 5) && ($gettok(%varrr,2,09) == 1) {
  • ; ## un utilisateur rejoint le salon
  • tokenize 09 %varrr
  • if (%in.out == $null) { aline $+(-lc,$replace($5,H,12,F,13,X,3,A,1,B,4)) @MIRSmail! $3 $+ ( $+ $4 $+ , $+ $5 $+ , $+ $6 $+ ) }
  • else { aline $+(-lc,$replace($5,H,12,F,13,X,3,A,1,B,4)) @MIRSmail! $3 $+ ( $+ $4 $+ , $+ $5 $+ , $+ $6 $+ ) | echo 14 @MIRSmail! $3 $+ ( $+ $4 $+ , $+ $5 $+ , $+ $6 $+ ) a rejoint le salon }
  • }
  • ; ## un utilisateur a quitté le salon
  • elseif ($gettok(%varrr,1,09) == 6) {
  • set %varrr $gettok(%varrr,1,13 10)
  • tokenize 09 %varrr
  • if (%in.out == $null) {
  • if ($fline(@MIRSmail!,$2 $+ *,1,1) != $null) { dline -l @MIRSmail! $fline(@MIRSmail!,$2 $+ *,1,1) }
  • }
  • else { if ($fline(@MIRSmail!,$2 $+ *,1,1) != $null) { dline -l @MIRSmail! $fline(@MIRSmail!,$2 $+ *,1,1) | echo 14 @MIRSmail! $2 a quitté le salon } | else { echo 14 @MIRSmail! $2 a quitté le salon } }
  • }
  • elseif ($gettok(%varrr,1,09) == 5) && ($gettok(%varrr,2,09) == 0) {
  • ; ## message de bienvenue sur le salon
  • set %varrr $gettok(%varrr,1,13 10)
  • tokenize 09 %varrr
  • if (%force.join2 == 1) {
  • echo 4 @MIRSmail! $str(_,66)
  • echo 4 @MIRSmail! VOUS ÊTES SUR LE SALON $3
  • echo 4 @MIRSmail! $str(_,66)
  • if ($3 != %force.join) { } | else { .timer7845 1 5 timer89741 off | unset %force.join , %force.join2 }
  • }
  • else {
  • echo 4 @MIRSmail! $str(_,66)
  • echo 4 @MIRSmail! VOUS ÊTES SUR LE SALON $3
  • echo 4 @MIRSmail! $str(_,66)
  • }
  • }
  • ; ## messages privés :)
  • elseif ($gettok(%varrr,1,09) == 15) && ($gettok(%varrr,2,09) == 0) { if (%message.crypt == $null) { set %varrr $gettok(%varrr,1,13 10) | tokenize 09 %varrr | echo $replace(%ssexe,H,12,F,13,X,3,B,4,A,1) $active %mirsmailpseudo $+ > $5 } | else { set %varrr $gettok(%varrr,1,13 10) | tokenize 09 %varrr | echo $replace(%ssexe,H,12,F,13,X,3,B,4,A,1) $active %mirsmailpseudo $+ > $replacecs($5,Z,a,Y,b,X,c,W,d,V,e,U,f,T,g,S,h,R,i,Q,j,P,k,O,l,N,m,M,n,L,o,K,p,J,q,I,r,H,s,G,t,F,u,E,v,D,w,C,x,B,y,A,z,xc|,@,&,$chr(32),>>>,1,|<>,2,>c$,3,^-*,4,^>$,5,^->,6,^c>,7,^<>,8,|>>,9) } }
  • elseif ($gettok(%varrr,1,09) == 15) && ($gettok(%varrr,2,09) == 1) && ($findtok(%pseudo.ignore,$gettok(%varrr,3,09),1,09) == $null) && (%nopv == 1) {
  • if (%nopv.contact2 == 1) {
  • if ($findtok(%nopv.contact,$gettok(%varrr,3,09),1,09) == $null) {
  • sockwrite mirsmaila 16 $+ $chr(09) $+ $gettok(%varrr,3,09),1,09)
  • }
  • else {
  • if ($line(@ $+ $gettok(%varrr,3,09) $+ !_!privé,0,0) == $null) { sockwrite mirsmaila 17 $+ $chr(09) $+ $gettok(%varrr,3,09) }
  • set %varrr $gettok(%varrr,1,13 10)
  • tokenize 09 %varrr
  • window -ekf @ $+ $3 $+ !_!privé 10 1 673 400
  • if (%message.crypt == $null) { echo $replace($5,H,12,F,13,X,3,B,4,A,1) @ $+ $3 $+ !_!privé $3 $+ ( $+ $4 $+ , $+ $5 $+ , $+ $6 $+ ) $+ > $8 }
  • else { echo $replace($5,H,12,F,13,X,3,B,4,A,1) @ $+ $3 $+ !_!privé $3 $+ ( $+ $4 $+ , $+ $5 $+ , $+ $6 $+ ) $+ > $replacecs($8,Z,a,Y,b,X,c,W,d,V,e,U,f,T,g,S,h,R,i,Q,j,P,k,O,l,N,m,M,n,L,o,K,p,J,q,I,r,H,s,G,t,F,u,E,v,D,w,C,x,B,y,A,z,xc|,@,&,$chr(32),>>>,1,|<>,2,>c$,3,^-*,4,^>$,5,^->,6,^c>,7,^<>,8,|>>,9) }
  • if (HNZROXIBKG isin $8) && ($findtok(%pseudo.crypt,$3,1,09) == $null) { echo 4 @ $+ $3 $+ !_!privé $3 est utilisateur de mirsmail et a activé le cryptage, activez le pour discuter avec lui | set %pseudo.crypt $addtok(%pseudo.crypt,$3,09) | echo 4 -s $3 est un utilisateur de mirsmail et a activé le cryptage, activé le pour discuter avec cette personne }
  • }
  • }
  • }
  • elseif ($gettok(%varrr,1,09) == 15) && ($gettok(%varrr,2,09) == 1) && ($findtok(%pseudo.ignore,$gettok(%varrr,3,09),1,09) == $null) && (%nopv == 0) {
  • if ($line(@ $+ $gettok(%varrr,3,09) $+ !_!privé,0,0) == $null) { sockwrite mirsmaila 17 $+ $chr(09) $+ $gettok(%varrr,3,09) }
  • set %varrr $gettok(%varrr,1,13 10)
  • tokenize 09 %varrr
  • window -ekf @ $+ $3 $+ !_!privé 10 1 673 400
  • if (%message.crypt == $null) { echo $replace($5,H,12,F,13,X,3,B,4,A,1) @ $+ $3 $+ !_!privé $3 $+ ( $+ $4 $+ , $+ $5 $+ , $+ $6 $+ ) $+ > $8 } | else { echo $replace($5,H,12,F,13,X,3,B,4,A,1) @ $+ $3 $+ !_!privé $3 $+ ( $+ $4 $+ , $+ $5 $+ , $+ $6 $+ ) $+ > $replacecs($8,Z,a,Y,b,X,c,W,d,V,e,U,f,T,g,S,h,R,i,Q,j,P,k,O,l,N,m,M,n,L,o,K,p,J,q,I,r,H,s,G,t,F,u,E,v,D,w,C,x,B,y,A,z,xc|,@,&,$chr(32),>>>,1,|<>,2,>c$,3,^-*,4,^>$,5,^->,6,^c>,7,^<>,8,|>>,9) }
  • if (HNZROXIBKG isin $8) && ($findtok(%pseudo.crypt,$3,1,09) == $null) { echo 4 @ $+ $3 $+ !_!privé $3 est utilisateur de mirsmail et a activé le cryptage, activez le pour discuter avec lui | set %pseudo.crypt $addtok(%pseudo.crypt,$3,09) | echo 4 -s $3 est un utilisateur de mirsmail et a activé le cryptage, activé le pour discuter avec cette personne }
  • }
  • elseif ($gettok(%varrr,1,09) == 15) && ($gettok(%varrr,2,09) == 1) && ($findtok(%pseudo.ignore,$gettok(%varrr,3,09),1,09) != $null) { }
  • ; ## .... autres commandes ....(jv pas tout lister non plus :s !!)
  • elseif ($gettok(%varrr,1,09) == 101) { set %varrr $gettok(%varrr,1,13 10) | if ($window(@ $+ $gettok(%varrr,2,09) $+ !_!privé)) { echo 11 @ $+ $gettok(%varrr,2,09) $+ !_!privé $gettok(%varrr,2,09) n'est plus connecté(e) } | if ($fline(@MIRSmail!,$gettok(%varrr,2,09) $+ *,1,1) != $null) { dline -l @MIRSmail! $fline(@MIRSmail!,$gettok(%varrr,2,09) $+ *,1,1) } | if (%jkl2 == 1) { inc %jkl 1 | photox } | elseif (%jkl22 == 1) { inc %jkl 1 | photox2 } }
  • elseif ($gettok(%varrr,1,09) == 16) { set %varrr $gettok(%varrr,1,13 10) | echo 4 @ $+ $gettok(%varrr,2,09) $+ !_!privé $gettok(%varrr,2,09) n'accepte plus les messages privés }
  • elseif ($gettok(%varrr,1,09) == 21) { set %varrr $gettok(%varrr,1,13 10) | echo 4 @ $+ $gettok(%varrr,2,09) $+ !_!privé $gettok(%varrr,2,09) est absent, message: $gettok(%varrr,3,09) }
  • ; ## message de bienvenue + getion des contacts
  • elseif ($gettok(%varrr,1,09) == 2) && ($gettok(%varrr,2,09) == 1) { var %varrr2 $gettok(%varrr,2,10) | set %varrr $gettok(%varrr,1,13 10) | echo 4 @MIRSmail! Statut : $str(_,66) | echo 4 @MIRSmail! Statut: Vous êtes connecté(e) en tant que $gettok(%varrr,3,09) ( $+ $gettok(%varrr,4,09) $+ , $+ $gettok(%varrr,5,09) $+ , $+ $gettok(%varrr,6,09) $+ ) | echo 4 @MIRSmail! Statut : $str(_,66) | .timer654 1 2 mirsmailjoin %mirsmailsalon
  • if (%varrr2 != $null) {
  • var %varrr2 $gettok(%varrr2,1,13)
  • window -sSl12 @!_!contacts
  • var %toka $numtok(%varrr2,09)
  • var %tokaa 2
  • while (%tokaa <= %toka) {
  • aline $replace($gettok(%varrr2,$calc(%tokaa + 2),09),H,-c12,F,-c13,X,-c3,B,-c4,A,-c1) @!_!contacts $gettok(%varrr2,$calc(%tokaa + 5),09) $+ ( $+ $gettok(%varrr2,$calc(%tokaa + 1),09) $+ , $+ $gettok(%varrr2,$calc(%tokaa + 2),09) $+ , $+ $gettok(%varrr2,$calc(%tokaa + 3),09) $+ ) connecté(e) en tant que $gettok(%varrr2,%tokaa,09) est dans le salon $gettok(%varrr2,$calc(%tokaa + 4),09)
  • aline $replace($gettok(%varrr2,$calc(%tokaa + 2),09),H,-lc12,F,-lc13,X,-lc3,B,-lc4,A,-lc1) @!_!contacts $gettok(%varrr2,%tokaa,09)
  • set %nopv.contact $addtok(%nopv.contact,$gettok(%varrr2,%tokaa,09),09)
  • inc %tokaa 7
  • }
  • }
  • }
  • ; ## gestion des contacts
  • ; ## un contact se connecte ou n'est plus absent
  • elseif ($gettok(%varrr,1,09) == 75) && (0 isin $gettok(%varrr,8,09)) {
  • set %varrr $gettok(%varrr,1,13 10)
  • set %nopv.contact $addtok(%nopv.contact,$gettok(%varrr,2,09),09)
  • if ($fline(@!_!contacts,$gettok(%varrr,2,09),1,1) == $null) {
  • window -sSl12 @!_!contacts
  • aline $replace($gettok(%varrr,4,09),H,-c12,F,-c13,X,-c3,B,-c4,A,-c1) @!_!contacts $gettok(%varrr,7,09) $+ ( $+ $gettok(%varrr,3,09) $+ , $+ $gettok(%varrr,4,09) $+ , $+ $gettok(%varrr,5,09) $+ ) connecté(e) en tant que $gettok(%varrr,2,09) est dans le salon $gettok(%varrr,6,09) , pas absent
  • aline $replace($gettok(%varrr,4,09),H,-lc12,F,-lc13,X,-lc3,B,-lc4,A,-lc1) @!_!contacts $gettok(%varrr,2,09)
  • }
  • else { rline $replace($gettok(%varrr,4,09),H,-c12,F,-c13,X,-c3,B,-c4,A,-c1) @!_!contacts $fline(@!_!contacts,* $+ en tant que $gettok(%varrr,2,09) est dans le salon $+ *,1,0) $gettok(%varrr,7,09) $+ ( $+ $gettok(%varrr,3,09) $+ , $+ $gettok(%varrr,4,09) $+ , $+ $gettok(%varrr,5,09) $+ ) connecté(e) en tant que $gettok(%varrr,2,09) est dans le salon $gettok(%varrr,6,09) , pas absent }
  • }
  • ; ##un contact est absent
  • elseif ($gettok(%varrr,1,09) == 75) && (1 isin $gettok(%varrr,8,09)) {
  • set %varrr $gettok(%varrr,1,13 10)
  • if ($fline(@!_!contacts,$gettok(%varrr,2,09),1,1) != $null) {
  • rline $replace($gettok(%varrr,4,09),H,-c12,F,-c13,X,-c3,B,-c4,A,-c1) @!_!contacts $fline(@!_!contacts,* $+ en tant que $gettok(%varrr,2,09) est dans le salon $+ *,1,0) $gettok(%varrr,7,09) $+ ( $+ $gettok(%varrr,3,09) $+ , $+ $gettok(%varrr,4,09) $+ , $+ $gettok(%varrr,5,09) $+ ) connecté(e) en tant que $gettok(%varrr,2,09) est dans le salon $gettok(%varrr,6,09) , absent
  • }
  • else {
  • window -sSl12 @!_!contacts
  • aline $replace($gettok(%varrr,4,09),H,-c12,F,-c13,X,-c3,B,-c4,A,-c1) @!_!contacts $gettok(%varrr,7,09) $+ ( $+ $gettok(%varrr,3,09) $+ , $+ $gettok(%varrr,4,09) $+ , $+ $gettok(%varrr,5,09) $+ ) connecté(e) en tant que $gettok(%varrr,2,09) est dans le salon $gettok(%varrr,6,09) , absent
  • aline $replace($gettok(%varrr,4,09),H,-lc12,F,-lc13,X,-lc3,B,-lc4,A,-lc1) @!_!contacts $gettok(%varrr,2,09)
  • }
  • }
  • ; ## un contact est parti
  • elseif ($gettok(%varrr,1,09) == 76) { set %varrr $gettok(%varrr,1,13 10) | if ($fline(@!_!contacts,$gettok(%varrr,2,09),1,1) != $null) { dline @!_!contacts $fline(@!_!contacts,* $+ en tant que $gettok(%varrr,2,09) est dans le salon $+ *,1,0) | dline -l @!_!contacts $fline(@!_!contacts,$gettok(%varrr,2,09),1,1) } | else { echo 4 -s Un de vos contacts, $gettok(%varrr,2,09) s'est déconnecté(e) } }
  • elseif ($gettok(%varrr,1,09) == 20) && (1 isin $gettok(%varrr,3,09)) { echo 4 @MIRSmail! $gettok(%varrr,2,09) s'est absenté(e) }
  • elseif ($gettok(%varrr,1,09) == 20) && (0 isin $gettok(%varrr,3,09)) { echo 4 @MIRSmail! $gettok(%varrr,2,09) n'est plus absent(e) }
  • elseif ($gettok(%varrr,1,09) == 1) { set %varrr $gettok(%varrr,1,13 10) | echo @MIRSmail! $gettok(%varrr,2,09) | echo 4 @MIRSmail! MIRSmail client pour smail }
  • elseif ($gettok(%varrr,1,09) == 14) { set %varrr $gettok(%varrr,1,13 10) | echo 4 @MIRSmail! Statut : $str(_,66) | echo 4 @MIRSmail! Statut: $gettok(%varrr,2,09) a été éjecté(e) par $gettok(%varrr,3,09) | echo 4 @MIRSmail! Statut : $str(_,66) | echo 4 -s Statut: $gettok(%varrr,2,09) a été éjecté(e) par $gettok(%varrr,3,09) }
  • elseif ($gettok(%varrr,1,09) == 2) && ($gettok(%varrr,2,09) == 2) { set %varrr $gettok(%varrr,1,13 10) | echo 4 @MIRSmail! Statut : $str(_,66) | echo 4 @MIRSmail! Statut: Vous êtes banni(e) du chat pour une durée de $gettok(%varrr,3,09) secondes | echo 4 @MIRSmail! Statut : $str(_,66) }
  • elseif ($gettok(%varrr,1,09) == 2) && ($gettok(%varrr,2,09) == 2 $+ $chr(13) $+ $chr(10)) { set %varrr $gettok(%varrr,1,13 10) | echo 4 @MIRSmail! Statut : $str(_,66) | echo 4 @MIRSmail! Statut: Vous êtes banni(e) du chat | echo 4 @MIRSmail! Statut : $str(_,66) }
  • elseif ($gettok(%varrr,1,09) == 9) && ($gettok(%varrr,2,09) == 1) { set %varrr $gettok(%varrr,1,13 10) | echo 4 @MIRSmail! Statut : $str(_,66) | echo 4 @MIRSmail! Statut: Vous avez été ignoré(e) par $gettok(%varrr,3,09) | echo 4 @MIRSmail! Statut : $str(_,66) | echo 4 -s Statut: Vous avez été ignoré(e) par $gettok(%varrr,3,09) }
  • elseif ($gettok(%varrr,1,09) == 9) && ($gettok(%varrr,2,09) == 0) { set %varrr $gettok(%varrr,1,13 10) | echo 4 @MIRSmail! Statut : $str(_,66) | echo 4 @MIRSmail! Statut: Vous avez ignoré $gettok(%varrr,3,09) | echo 4 @MIRSmail! Statut : $str(_,66) }
  • elseif ($gettok(%varrr,1,09) == 3) { set %varrr $gettok(%varrr,1,13 10) | echo 4 @MIRSmail! Statut : $str(_,66) | echo 4 @MIRSmail! Statut: $gettok(%varrr,2,09) | echo 4 @MIRSmail! Statut : $str(_,66) | echo 4 -s Statut: $gettok(%varrr,2,09) }
  • elseif ($gettok(%varrr,1,09) == 50) { sockwrite mirsmaila 50 $+ $chr(09) $+ PONG }
  • elseif ($gettok(%varrr,1,09) == 4) && ($gettok(%varrr,2,09) == 0) { echo 4 @MIRSmail! START LISTING }
  • elseif ($gettok(%varrr,1,09) == 4) && ($gettok(%varrr,2,09) == 2) { echo 4 @MIRSmail! END LISTING }
  • elseif ($gettok(%varrr,1,09) == 25) && ($gettok(%varrr,2,09) == 0) { echo 4 @MIRSmail! START LISTING }
  • elseif ($gettok(%varrr,1,09) == 25) && ($gettok(%varrr,2,09) == 2) { echo 4 @MIRSmail! END LISTING }
  • ; ## PING !
  • elseif ($gettok(%varrr,1,09) == 50) { sockwrite mirsmaila 50 $+ $chr(09) $+ PONG }
  • elseif ($gettok(%varrr,1,09) == 7) || (%uuutilisateur == 1) {
  • ; ## listes des connectés sur le salon
  • set %uuutilisateur 1
  • if (%uuutilisateur == 1) {
  • .timer65 -h 1 2000 set %uuutilisateur 0
  • var %toka $numtok(%varrr,09)
  • if (10 $+ $chr(09) isin %varrr) { set %varrr $gettok(%varrr,1,13 10) }
  • if ($gettok(%varrr,1,09) == 7) { var %tokaa 2 }
  • else { if ($findtok(%varrr,F,1,09) > $findtok(%varrr,H,1,09)) { var %tokaa $calc($findtok(%varrr,H,1,09) + 3) } | else { var %tokaa $calc($findtok(%varrr,F,1,09) + 3) } }
  • while (%tokaa <= %toka) {
  • if ($istok(H.F.X.B.A,$gettok(%varrr,$calc(%tokaa + 2),09),46)) { aline $replace($gettok(%varrr,$calc(%tokaa + 2),09),H,-lc12,F,-lc13,X,-lc3,B,-lc4,A,-lc1) @MIRSmail! $gettok(%varrr,%tokaa,09) $+ ( $+ $gettok(%varrr,$calc(%tokaa + 1),09) $+ , $+ $gettok(%varrr,$calc(%tokaa + 2),09) $+ , $+ $gettok(%varrr,$calc(%tokaa + 3),09) $+ ) }
  • var %tokaa $calc(%tokaa + 5)
  • }
  • .timer698 1 7 echo 4 @MIRSmail! il y a $line(@MIRSmail!,0,1) connectés sur le salon
  • }
  • }
  • elseif (($gettok(%varrr,1,09) == 25) && ($gettok(%varrr,2,09) == 1)) || (%uutilisateur == 1) {
  • ; ## recherche d'utilisateurs
  • window -asSl12 @recherche.pseudo
  • set %uutilisateur 1
  • if (%uutilisateur == 1) {
  • .timer65 -h 1 1000 set %uutilisateur 0
  • var %toka $numtok(%varrr,09)
  • set %varrr $replace(%varrr,$chr(32),$chr(160))
  • if ($gettok(%varrr,1,09) == 25) && ($gettok(%varrr,2,09) == 1) { var %tokaa 3 }
  • else { if ($findtok(%varrr,F,1,09) > $findtok(%varrr,H,1,09)) { var %tokaa $calc($findtok(%varrr,H,1,09) + 4) } | else { var %tokaa $calc($findtok(%varrr,F,1,09) + 4) } }
  • while (%tokaa < %toka) {
  • if ($istok(H.F.X.B.A,$gettok(%varrr,$calc(%tokaa + 2),09),46)) { aline $replace($gettok(%varrr,$calc(%tokaa + 2),09),H,-c12,F,-c13,X,-c3,B,-c4,A,-c1) @recherche.pseudo $gettok(%varrr,%tokaa,09) ( $+ $gettok(%varrr,$calc(%tokaa + 1),09) $+ , $+ $gettok(%varrr,$calc(%tokaa + 2),09) $+ , $+ $gettok(%varrr,$calc(%tokaa + 3),09) $+ ) dans le salon : $+ $gettok(%varrr,$calc(%tokaa + 4),09) | aline -l $+ $replace($gettok(%varrr,$calc(%tokaa + 2),09),H,-c12,F,-c13,X,-c3,B,-c4,A,-c1) @recherche.pseudo $gettok(%varrr,%tokaa,09) }
  • var %tokaa $calc(%tokaa + 6)
  • }
  • }
  • }
  • ; ## liste des salons officiels
  • elseif (($gettok(%varrr,1,09) == 4) && ($gettok(%varrr,2,09) == 1) && ($findtok(%varrr,Bourgogne,1,09) != $null)) || (%ssalon == 1) {
  • window -asSl12 @Salons.officiels
  • set %ssalon 1
  • if (%ssalon == 1) {
  • .timer65 -h 1 2000 set %ssalon 0
  • var %toka $numtok(%varrr,09)
  • if ($gettok(%varrr,1,09) == 4) && ($gettok(%varrr,2,09) == 1) { var %tokaa 3 }
  • else { var %tokaa $calc($findtok(%varrr,0,1,09) + 2) }
  • while (%tokaa <= %toka) {
  • aline -c2 @Salons.officiels $gettok(%varrr,%tokaa,09) $gettok(%varrr,$calc(%tokaa + 2),09) connecté(s)
  • aline -lc2 @Salons.officiels $gettok(%varrr,%tokaa,09)
  • var %tokaa $calc(%tokaa + 4)
  • }
  • }
  • }
  • ; ## liste des autres salons
  • elseif (($gettok(%varrr,1,09) == 4) && ($gettok(%varrr,2,09) == 1) && ($findtok(%varrr,Bourgogne,1,09) == $null)) || (%sssalon == 1) {
  • window -asSl12 @Autres.salons
  • set %sssalon 1
  • if (%sssalon == 1) {
  • .timer65 -h 1 2000 set %sssalon 0
  • var %toka $numtok(%varrr,09)
  • set %varrr $replace(%varrr,$chr(32),$chr(160))
  • if ($gettok(%varrr,1,09) == 4) && ($gettok(%varrr,2,09) == 1) { var %tokaa 3 }
  • else { var %tokaa $calc($findtok(%varrr,0,1,09) + 1) }
  • while (%tokaa <= %toka) {
  • aline -c2 @Autres.salons $gettok($replace(%varrr,$chr(32),$chr(160)),%tokaa,09) Crée par $gettok(%varrr,$calc(%tokaa + 1),09) $gettok(%varrr,$calc(%tokaa + 2),09) connecté(s)
  • aline -lc2 @Autres.salons $gettok($replace(%varrr,$chr(32),$chr(160)),%tokaa,09)
  • var %tokaa $calc(%tokaa + 4)
  • }
  • }
  • }
  • ; ## l'utilisateur a une photo
  • elseif ($gettok(%varrr,1,09) == 17) && ($gettok(%varrr,3,09) != -1) {
  • set %photopseudo @ $+ $gettok(%varrr,2,09) $+ !_! $+ PHOTO
  • set %pphoto $gettok(%varrr,3,09) $+ .jpg
  • window -pf %photopseudo 710 1 200 200
  • if ($sock(mirsmailphoto) == $null) { sockopen mirsmailphoto www.smail.fr 80 }
  • else { sockclose mirsmailphoto | sockopen mirsmailphoto www.smail.fr 80 }
  • }
  • ; ## l'utilisateur n'a pas de photo
  • elseif ($gettok(%varrr,1,09) == 17) && ($gettok(%varrr,3,09) == -1) { if (%jkl2 == 1) { inc %jkl 1 | photox } | elseif (%jkl22 == 1) { inc %jkl 1 | photox2 } }
  • ; ## si commande inconnue, cette commande est redirigée sur la fenetre de status
  • else { echo -s %varrr }
  • }
  • ; ## socket pour obtenir les photos
  • on *:sockopen:mirsmailphoto:{
  • sockwrite mirsmailphoto GET /photos/ $+ %pphoto HTTP/1.1 $+ $crlf $+ Accept: text/html, image/gif, image/jpeg, *; q=.2, */*; q=.2 $+ $crlf $+ User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Win32) $+ $crlf $+ Host: www.smail.fr $+ $crlf $+ Connection: Keep-Alive $+ $crlf $+ Cache-Control: no-cache $+ $crlf $+ Cookie: SMAILID= $+ %smailid1 $+ $crlf $+ $crlf
  • }
  • ; ## lecture sur le socket photo
  • on *:sockread:mirsmailphoto:{
  • if ($sockerr > 0) return
  • :nextphoto
  • sockread 800 &photo
  • if ($sockbr == 0) return
  • hadd -b MIRSmail photo &photo
  • pphoto
  • goto nextphoto
  • }
  • ; ## socket pour parler anglais ou autre langue
  • on *:sockopen:mirsmail.english:{
  • var %DATA.ENGLISH systran_id=Voila-fr&systran_charset=UTF-8&systran_lp= $+ %mirsmail.langue $+ &systran_text= $+ :021345: %eenglish
  • sockwrite mirsmail.english POST /voila HTTP/1.1 $+ $crlf $+ Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/x-shockwave-flash, application/vnd.ms-powerpoint, application/vnd.ms-excel, application/msword, */* $+ $crlf $+ Referer: http://trans.voila.fr/voila $+ $crlf $+ Accept-Language: fr $+ $crlf $+ Content-Type: application/x-www-form-urlencoded $+ $crlf $+ Accept-Encoding: gzip, deflate $+ $crlf $+ User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; .NET CLR 1.1.4322) $+ $crlf $+ Host: trans.voila.fr $+ $crlf $+ Content-Length: $len(%DATA.ENGLISH) $+ $crlf $+ Connection: Keep-Alive $+ $crlf $+ Cache-Control: no-cache $+ $crlf $+ $crlf $+ %DATA.ENGLISH
  • }
  • ; ## lecture sur le socket english
  • on *:sockread:mirsmail.english:{
  • var %englishhh
  • sockread -f %englishhh
  • if (:021345: isin %englishhh) && (%nbv2 == 1) { write fg %englishhh | set %nbv 1 | set %nbv2 }
  • elseif (%nbv == 1) { write fg %englishhh | .timer21 -h 1 50 mirsmail.langua }
  • }
  • ; ## differents evenements
  • on *:ACTIVE:*: { set %mirsmailactive $active | set %mirsmailactive2 $gettok($gettok(%mirsmailactive,1,64),1,33) }
  • on *:sockclose:mirsmaila: { echo @MIRSmail! déconnecté :( | echo 4 -s déconnecté :( | hfree MIRSmail | mirsmail.unset }
  • on *:INPUT:@MIRSmail!:{ if (%message.crypt == $null) { if (%mirsmail.english == $null) { if (%verlanxx == $null) { /message.salon $1- } | else { /message.verlanx $1- } } | else { /mirsmail.english $1- } } | else { /message.salon.crypt $1- } }
  • on *:INPUT:@*!_!privé:{ if (%message.crypt == $null) { if (%mirsmail.english == $null) { if (%verlanxx == $null) { if (%mirsmailactive != @MIRSmail!) && ($sock(mirsmaila) != $null) { /mirsmailpv $1- } | else { halt } } | else { /message.verlanx $1- } } | else { /mirsmail.english $1- } } | else { /mirsmailpv.crypt $1- } }
  • on *:CLOSE:@MIRSmail!:{ sockclose mirsmaila | hfree MIRSmail | window -c @MIRSmail! | mirsmail.unset }
  • ; ## les alias
  • alias mirsmailjoin {
  • set %mirsmailsalon $1-
  • if ($chr(160) !isin $1-) { dline -l @MIRSmail! 1- $+ $line(@MIRSmail!,0,1) | sockwrite mirsmaila 5 $+ $chr(09) $+ $1- | sockwrite mirsmaila 7 $+ $chr(09) $+ $1- }
  • else { hadd MIRSmail espace 5 $+ $chr(09) $+ $1- | hadd MIRSmail espace2 7 $+ $chr(09) $+ $1- | bset -t &as 1 1 | bset -t &as2 1 1 | $hget($null,$null,$hget(MIRSmail, espace, &as)) | $hget($null,$null,$hget(MIRSmail, espace2, &as2)) | breplace &as 160 32 | breplace &as2 160 32 | dline -l @MIRSmail! 1- $+ $line(@MIRSmail!,0,1) | sockwrite mirsmaila &as | sockwrite mirsmaila &as2 }
  • }
  • alias mirsmailpv { if ($mid($1-,1,1) != /) { sockwrite mirsmaila 15 $+ $chr(09) $+ %mirsmailactive2 $+ $chr(09) $+ 0 $+ $chr(09) $+ $1- } | else { } }
  • alias message.salon { if ($mid($1-,1,1) != /) { sockwrite mirsmaila 10 $+ $chr(09) $+ 0 $+ $chr(09) $+ $1- } | else { } }
  • alias mirsmail.langua {
  • var %lkj 1
  • while (<br /> !isin $read(fg,%lkj)) {
  • if (%lkj == 1) { set %eenglish2 $replacecs($mid($gettok($read(fg,%lkj),1,09),10,$len($gettok($read(fg,%lkj),1,09))), $+ $chr(195) $+ $chr(173)­,ì,$chr(195) $+ $chr(169),é,$chr(195) $+ $chr(168),è,$chr(195) $+ $chr(160),à,$chr(195) $+ $chr(167),ç,$chr(195) $+ $chr(162),â,$chr(195) $+ $chr(170),ê,$chr(195) $+ $chr(164),ä,$chr(195) $+ $chr(171),ë,$chr(195) $+ $chr(177),ñ,$chr(195) $+ $chr(178),ò,$chr(195) $+ $chr(179), $+ $chr(243) $+ ,$chr(195) $+ $chr(188),ü,$chr(195) $+ $chr(161),a,$chr(194) $+ $chr(191), $+ $chr(191) $+ ,$chr(194) $+ $chr(161), $+ $chr(161) $+ ,$chr(195) $+ $chr(159), $+ $chr(223) $+ ) }
  • else { set %eenglish2 %eenglish2 $replacecs($read(fg,%lkj), $+ $chr(195) $+ $chr(173)­,ì,$chr(195) $+ $chr(169),é,$chr(195) $+ $chr(168),è,$chr(195) $+ $chr(160),à,$chr(195) $+ $chr(167),ç,$chr(195) $+ $chr(162),â,$chr(195) $+ $chr(170),ê,$chr(195) $+ $chr(164),ä,$chr(195) $+ $chr(171),ë,$chr(195) $+ $chr(177),ñ,$chr(195) $+ $chr(178),ò,$chr(195) $+ $chr(179), $+ $chr(243) $+ ,$chr(195) $+ $chr(188),ü,$chr(195) $+ $chr(161),a,$chr(194) $+ $chr(191), $+ $chr(191) $+ ,$chr(194) $+ $chr(161), $+ $chr(161) $+ ,$chr(195) $+ $chr(159), $+ $chr(223) $+ ) }
  • inc %lkj 1
  • }
  • sockclose mirsmail.english
  • if (%mirsmailactive == @MIRSmail!) {
  • if (%english.pseudo2 == $null) { sockwrite mirsmaila 10 $+ $chr(09) $+ 0 $+ $chr(09) $+ %eenglish2 }
  • else { sockwrite mirsmaila 10 $+ $chr(09) $+ 0 $+ $chr(09) $+ %english.pseudo $+ > %eenglish2 | set %english.pseudo2 }
  • }
  • elseif (!_!privé isin %mirsmailactive) { sockwrite mirsmaila 15 $+ $chr(09) $+ %mirsmailactive2 $+ $chr(09) $+ 0 $+ $chr(09) $+ %eenglish2 }
  • set %eenglish2 | set %nbv | .remove fg
  • }
  • alias mirsmail.english {
  • if ($mid($1-,1,1) != /) {
  • set %nbv2 1
  • if ($numtok($1-,62) > 1) {
  • if ($mid($gettok($1-,2,62),1,1) == $chr(32)) { set %eenglish $gettok($replace($1-,é, $+ $chr(37) $+ C3 $+ $chr(37) $+ A9,è, $+ $chr(37) $+ C3 $+ $chr(37) $+ A8,à, $+ $chr(37) $+ C3 $+ $chr(37) $+ A0,ç, $+ $chr(37) $+ C3 $+ $chr(37) $+ A7,â, $+ $chr(37) $+ C3 $+ $chr(37) $+ A2,ê, $+ $chr(37) $+ C3 $+ $chr(37) $+ AA,ä, $+ $chr(37) $+ C3 $+ $chr(37) $+ A4,ë, $+ $chr(37) $+ C3 $+ $chr(37) $+ AB,ñ, $+ $chr(37) $+ C3 $+ $chr(37) $+ B1),2-,32) }
  • else { set %eenglish $gettok($replace($1-,é, $+ $chr(37) $+ C3 $+ $chr(37) $+ A9,è, $+ $chr(37) $+ C3 $+ $chr(37) $+ A8,à, $+ $chr(37) $+ C3 $+ $chr(37) $+ A0,ç, $+ $chr(37) $+ C3 $+ $chr(37) $+ A7,â, $+ $chr(37) $+ C3 $+ $chr(37) $+ A2,ê, $+ $chr(37) $+ C3 $+ $chr(37) $+ AA,ä, $+ $chr(37) $+ C3 $+ $chr(37) $+ A4,ë, $+ $chr(37) $+ C3 $+ $chr(37) $+ AB,ñ, $+ $chr(37) $+ C3 $+ $chr(37) $+ B1),2-,62) }
  • set %english.pseudo $gettok($1-,1,62)
  • set %english.pseudo2 1
  • }
  • else { set %eenglish $replace($1-,é, $+ $chr(37) $+ C3 $+ $chr(37) $+ A9,è, $+ $chr(37) $+ C3 $+ $chr(37) $+ A8,à, $+ $chr(37) $+ C3 $+ $chr(37) $+ A0,ç, $+ $chr(37) $+ C3 $+ $chr(37) $+ A7,â, $+ $chr(37) $+ C3 $+ $chr(37) $+ A2,ê, $+ $chr(37) $+ C3 $+ $chr(37) $+ AA,ä, $+ $chr(37) $+ C3 $+ $chr(37) $+ A4,ë, $+ $chr(37) $+ C3 $+ $chr(37) $+ AB,ñ, $+ $chr(37) $+ C3 $+ $chr(37) $+ B1) }
  • sockclose mirsmail.english
  • sockopen mirsmail.english trans.voila.fr 80
  • }
  • }
  • alias message.verlanx {
  • if ($mid($1-,1,1) != /) {
  • if ($numtok($1-,62) > 1) { var %verlan5 $gettok($1-,1,62) $+ > | var %verlan6 $gettok($1-,2-,62) }
  • else { var %verlan6 $1- }
  • var %verlan $numtok( $+ %verlan6 $+ ,32)
  • var %verlan2 1
  • var %verlanx
  • var %verlanx2
  • while (%verlan2 <= %verlan) {
  • var %verlan3 $gettok( $+ %verlan6 $+ , $+ %verlan2 $+ ,32)
  • var %verlan4 $len(%verlan3)
  • while (%verlan4 >= 1) {
  • var %verlanx %verlanx $+ $mid( $+ %verlan3 $+ , $+ %verlan4 $+ ,1)
  • dec %verlan4 1
  • }
  • var %verlanx2 %verlanx2 %verlanx
  • var %verlanx
  • inc %verlan2 1
  • }
  • if (%mirsmailactive == @MIRSmail!) { sockwrite mirsmaila 10 $+ $chr(09) $+ 0 $+ $chr(09) $+ %verlan5 %verlanx2 }
  • elseif (!_!privé isin %mirsmailactive) { sockwrite mirsmaila 15 $+ $chr(09) $+ %mirsmailactive2 $+ $chr(09) $+ 0 $+ $chr(09) $+ %verlanx2 }
  • }
  • }
  • alias message.salon.crypt { if ($mid($1-,1,1) != /) { var %ccrypt $replacecs($1-,a,Z,b,Y,c,X,d,W,e,V,f,U,g,T,h,S,i,R,j,Q,k,P,l,O,m,N,n,M,o,L,p,K,q,J,r,I,s,H,t,G,u,F,v,E,w,D,x,C,y,B,z,A,@,xc|,$chr(32),&,1,>>>,2,|<>,3,>c$,4,^-*,5,^>$,6,^->,7,^c>,8,^<>,9,|>>) | sockwrite mirsmaila 10 $+ $chr(09) $+ 0 $+ $chr(09) $+ HNZROXIBKG $+ & $+ : $+ & $+ %ccrypt } }
  • alias mirsmailpv.crypt { if ($mid($1-,1,1) != /) { var %ccrypt $replacecs($1-,a,Z,b,Y,c,X,d,W,e,V,f,U,g,T,h,S,i,R,j,Q,k,P,l,O,m,N,n,M,o,L,p,K,q,J,r,I,s,H,t,G,u,F,v,E,w,D,x,C,y,B,z,A,@,xc|,$chr(32),&,1,>>>,2,|<>,3,>c$,4,^-*,5,^>$,6,^->,7,^c>,8,^<>,9,|>>) | sockwrite mirsmaila 15 $+ $chr(09) $+ %mirsmailactive2 $+ $chr(09) $+ 0 $+ $chr(09) $+ HNZROXIBKG $+ & $+ : $+ & $+ %ccrypt } }
  • alias salon.officiels { sockwrite mirsmaila 4 $+ $chr(09) $+ 0 }
  • alias autres.salons { sockwrite mirsmaila 4 $+ $chr(09) $+ 1 }
  • alias rech.pseudo.ville { sockwrite mirsmaila 25 $+ $chr(09) $+ 0 $+ $chr(09) $+ $1- }
  • alias rech.pseudo.nom { sockwrite mirsmaila 25 $+ $chr(09) $+ 1 $+ $chr(09) $+ $1- }
  • alias vverif { if ($sock(mirsmaila) != $null) { } | else { echo -s Echec de la connexion, vérifiez que le login, le mot de passe, ou le pseudo sur le chat sont bons | sockclose mirsmail } }
  • alias pphoto {
  • $hget($null,$null,$hget(MIRSmail, photo, &photo2))
  • if ($bfind(&photo2,1,JFIF)) { write -c pphoto.jpg | bset -t &photo3 1 1 | bcopy &photo3 1 &photo2 $calc($bfind(&photo2,1,JFIF) - 6) 3000 | bwrite pphoto.jpg -1 -1 &photo3 }
  • else { bwrite pphoto.jpg -1 -1 &photo2 | .timer472 -h 1 1000 ppphoto }
  • }
  • alias ppphoto { window -pf %photopseudo 710 1 $pic(pphoto.jpg).width $pic(pphoto.jpg).height | /drawpic %photopseudo 1 1 1 1 3000 2000 pphoto.jpg | .remove pphoto.jpg | if (%jkl2 == 1) { inc %jkl 1 | photox } | elseif (%jkl22 == 1) { inc %jkl 1 | photox2 } }
  • alias photox { if (%jkl <= %jkl3) { sockwrite mirsmaila 17 $+ $chr(09) $+ $gettok($line(@MIRSmail!,%jkl,1),1,40) } | else { set %jkl2 0 } }
  • alias photox2 { if (%jkl <= %jkl3) { sockwrite mirsmaila 17 $+ $chr(09) $+ $gettok($line(@recherche.pseudo,%jkl,0),1,40) } | else { set %jkl22 0 } }
  • alias mirsmail.unset { unset %nopv , %pseudo.ignore , %ffoistid , %smailid1 , %tid1 , %in.out , %uuutilisateur , %uutilisateur , %ssalon , %sssalon , %varrr , %photopseudo , %pphoto , %jkl , %jkl2 , %jkl22 , %jkl3 , %ffoismirsmail , %tofo , %fotox , %force.join , %force.join2 , %nopv.contact2 , %nopv.contact , %verlanxx , %message.crypt , %eenglish , %eenglish2 , %mirsmail.english , %mirsmail.langue , %english.pseudo2 , %english.pseudo , %nbv , %nbv2 , %pseudo.crypt }
  • ; ## les menus :)
  • menu @*!_!PHOTO {
  • dclick:{ close -@ %mirsmailactive }
  • Enregistrer la photo:{ var %totopho $?="Entrer le nom du fichier (Répertoire de mirc par défaut)" | if (%totopho) { /drawsave $active %totopho $+ .jpg } }
  • Visualiser son profil:{ var %visu.profil %mirsmailactive2 | var %visu.profil2 http://www.smail.fr/rencontres/visuprofil.php?membre= $+ %visu.profil | if (%visu.profil != $null) { run %visu.profil2 } }
  • Fermer cette fenêtre:{ close -@ %mirsmailactive }
  • }
  • menu @!_!contacts {
  • dclick:{ if ($line(@!_!contacts,$1,1)) { window -ekf @ $+ $line(@!_!contacts,$1,1) $+ !_!privé 10 1 673 400 | sockwrite mirsmaila 17 $+ $chr(09) $+ $line(@!_!contacts,$1,1) } }
  • Nopv
  • .Ne plus accepter les messages privés:{ set %nopv 1 | echo 4 @MIRSmail! Statut: Vous n'acceptez plus les messages privés }
  • .Réaccepter les messages privés:{ set %nopv 0 | echo 4 @MIRSmail! Statut: Vous acceptez maintenant les messages privés }
  • .Toujours autoriser mes contact à m'envoyer des messages privés:{ set %nopv.contact2 1 | echo 4 @MIRSmail! Statut: Vous autorisez vos contacts a vous envoyer des messages privés }
  • .Ne plus autoriser, même mes contacts, à m'envoyer un message privé:{ set %nopv.contact2 0 | echo 4 @MIRSmail! Statut: Vous n'autorisez plus, même vos contacts, a vous envoyer des messages privés }
  • S'absenter
  • .S'absenter:{ var %aabsence $?="Message d'absence?(si pas de message clicker juste sur ok)" | if (!%aabsence) { sockwrite mirsmaila 20 $+ $chr(09) $+ 1 } | else { sockwrite mirsmaila 20 $+ $chr(09) $+ 1 $+ $chr(09) $+ %aabsence } }
  • .Ne plus s'absenter:{ sockwrite mirsmaila 20 $+ $chr(09) $+ 0 }
  • }
  • menu @recherche.pseudo {
  • dclick:{ if ($line(@recherche.pseudo,$1,1)) { window -ekf @ $+ $line(@recherche.pseudo,$1,1) $+ !_!privé 10 1 673 400 | sockwrite mirsmaila 17 $+ $chr(09) $+ $line(@recherche.pseudo,$1,1) } }
  • Afficher les photos de tous les utilisateurs trouvés:{ set %jkl 1 | set %jkl22 1 | set %jkl2 0 | set %jkl3 $line(@recherche.pseudo,0,0) | photox2 }
  • Rechercher un pseudo
  • .par ville:{ /rech.pseudo.ville $?="Entrer deux lettres au moins" | dline -l @recherche.pseudo 1- $+ $line(@recherche.pseudo,0,1) | dline @recherche.pseudo 1- $+ $line(@recherche.pseudo,0,0) }
  • .par pseudo:{ /rech.pseudo.nom $?="Entrer deux lettres au moins" | dline -l @recherche.pseudo 1- $+ $line(@recherche.pseudo,0,1) | dline @recherche.pseudo 1- $+ $line(@recherche.pseudo,0,0) }
  • Fermer cette fenêtre:{ close -@ %mirsmailactive }
  • }
  • menu @Salons.officiels {
  • dclick:{ mirsmailjoin $line(@Salons.officiels,$1,1) | window -a @MIRSmail! }
  • Lister tous les salons officiels:{ if ($window(@Salons.officiels)) { dline -l @Salons.officiels 1- $+ $line(@Salons.officiels,0,1) | dline @Salons.officiels 1- $+ $line(@Salons.officiels,0,0) | /salon.officiels } | else { /salon.officiels } }
  • Lister tous les salons non officiels:{ if ($window(@Autres.salons)) { dline -l @Autres.salons 1- $+ $line(@Autres.salons,0,1) | dline @Autres.salons 1- $+ $line(@Autres.salons,0,0) | /autres.salons } | else { /autres.salons } }
  • Fermer cette fenêtre:{ close -@ %mirsmailactive }
  • }
  • menu @Autres.salons {
  • dclick:{ mirsmailjoin $line(@Autres.salons,$1,1) | window -a @MIRSmail! }
  • Lister tous les salons officiels:{ if ($window(@Salons.officiels)) { dline -l @Salons.officiels 1- $+ $line(@Salons.officiels,0,1) | dline @Salons.officiels 1- $+ $line(@Salons.officiels,0,0) | /salon.officiels } | else { /salon.officiels } }
  • Lister tous les salons non officiels:{ if ($window(@Autres.salons)) { dline -l @Autres.salons 1- $+ $line(@Autres.salons,0,1) | dline @Autres.salons 1- $+ $line(@Autres.salons,0,0) | /autres.salons } | else { /autres.salons } }
  • Fermer cette fenêtre:{ close -@ %mirsmailactive }
  • }
  • menu @*!_!privé {
  • dclick:{ if ($sock(mirsmaila) != $null) { close -@ %mirsmailactive } }
  • Ignorer cette personne:{ set %pseudo.ignore $addtok(%pseudo.ignore,%mirsmailactive2,09) | sockwrite mirsmaila 9 $+ $chr(09) $+ $gettok(%pseudo.ignore,$numtok(%pseudo.ignore,09),09) | close -@ %mirsmailactive }
  • Ne plus ignorer cette personne:{ set %pseudo.ignore $deltok(%pseudo.ignore,$findtok(%pseudo.ignore,%mirsmailactive2,1,09),09) | echo 4 %mirsmailactive Vous n'ignorez plus %mirsmailactive2 }
  • Visualiser son profil:{ var %visu.profil %mirsmailactive2 | var %visu.profil2 http://www.smail.fr/rencontres/visuprofil.php?membre= $+ %visu.profil | if (%visu.profil != $null) { run %visu.profil2 } }
  • S'absenter
  • .S'absenter:{ var %aabsence $?="Message d'absence?(si pas de message clicker juste sur ok)" | if (!%aabsence) { sockwrite mirsmaila 20 $+ $chr(09) $+ 1 } | else { sockwrite mirsmaila 20 $+ $chr(09) $+ 1 $+ $chr(09) $+ %aabsence } }
  • .Ne plus s'absenter:{ sockwrite mirsmaila 20 $+ $chr(09) $+ 0 }
  • Nopv
  • .Ne plus accepter les messages privés:{ set %nopv 1 | echo 4 @MIRSmail! Statut: Vous n'acceptez plus les messages privés }
  • .Réaccepter les messages privés:{ set %nopv 0 | echo 4 @MIRSmail! Statut: Vous acceptez maintenant les messages privés }
  • .Toujours autoriser mes contact à m'envoyer des messages privés:{ set %nopv.contact2 1 | echo 4 @MIRSmail! Statut: Vous autorisez vos contacts a vous envoyer des messages privés }
  • .Ne plus autoriser, même mes contacts, à m'envoyer un message privé:{ set %nopv.contact2 0 | echo 4 @MIRSmail! Statut: Vous n'autorisez plus, même vos contacts, a vous envoyer des messages privés }
  • Bonus
  • .Traduire ce que j'écris en ... (peut lagger suivant la disponibilité du site)
  • ..Anglais
  • ...Activer:{ set %mirsmail.english 1 | set %message.crypt | set %mirsmail.langue fr_en }
  • ...Désactiver:{ set %mirsmail.english }
  • ..Allemand
  • ...Activer:{ set %mirsmail.english 1 | set %message.crypt | set %mirsmail.langue fr_de }
  • ...Désactiver:{ set %mirsmail.english }
  • ..Espagnol
  • ...Activer:{ set %mirsmail.english 1 | set %message.crypt | set %mirsmail.langue fr_es }
  • ...Désactiver:{ set %mirsmail.english }
  • ..Italien
  • ...Activer:{ set %mirsmail.english 1 | set %message.crypt | set %mirsmail.langue fr_it }
  • ...Désactiver:{ set %mirsmail.english }
  • ..Néerlandais
  • ...Activer:{ set %mirsmail.english 1 | set %message.crypt | set %mirsmail.langue fr_nl }
  • ...Désactiver:{ set %mirsmail.english }
  • .Ecrire en crypté (visible par d'autres utilisateurs de mirsmail si activé)(il faut écrire en minuscule)
  • ..Activer:{ set %message.crypt 1 | echo 4 %mirsmailactive cryptage activé }
  • ..Désactiver:{ set %message.crypt | echo 4 %mirsmailactive cryptage désactivé }
  • .Ecrire à l'envers
  • ..Activer:{ set %verlanxx 1 | set %message.crypt | set %mirsmail.english }
  • ..Désactiver:{ set %verlanxx }
  • Rejoindre un salon
  • .Rejoindre un salon:{ var %saloon $?="Entrer le nom d'un salon" | if (%saloon != $null) { mirsmailjoin %saloon } }
  • .Forcer à rejoindre un salon toutes les 2 secondes:{ set %force.join $?="Entrer le nom du salon" | if (%force.join != $null) { .timer89741 0 2 mirsmailjoin %force.join | set %force.join2 1 } }
  • .Stopper le forcing:{ timer89741 off | unset %force.join , %force.join2 }
  • Enregistrer la discussion dans un fichier:{ var %buff $?="Nom du fichier? (répertoire de mirc par défaut)" | if (%buff) { /savebuf 0 %mirsmailactive %buff $+ .txt } }
  • Fermer cette fenêtre:{ close -@ %mirsmailactive }
  • }
  • menu @MIRSmail! {
  • dclick:{ if ($gettok($line(@MIRSmail!,$1,1),1,40)) { window -ekf @ $+ $gettok($line(@MIRSmail!,$1,1),1,40) $+ !_!privé 10 1 673 400 | sockwrite mirsmaila 17 $+ $chr(09) $+ $gettok($line(@MIRSmail!,$1,1),1,40) } }
  • .Se déconnecter:{ sockclose mirsmaila | hfree MIRSmail | window -c @MIRSmail! | mirsmail.unset }
  • Entrées et sorties
  • .Afficher les entrées et les sorties de salon:{ set %in.out 1 }
  • .Ne plus afficher les entrées et les sorties de salon:{ set %in.out }
  • Afficher toutes les photos des pseudos sur le salon:{ set %jkl 1 | set %jkl2 1 | set %jkl22 0 | set %jkl3 $line(@MIRSmail!,0,1) | photox }
  • Ignorage
  • .Liste des ignoré(e)s:{ if (%pseudo.ignore != $null) { echo 4 @MIRSmail! Statut : $str(_,66) | echo 4 @MIRSmail! Vous ignorez : ----> %pseudo.ignore | echo 4 @MIRSmail! Statut : $str(_,66) } | else { echo 4 @MIRSmail! Statut : $str(_,66) | echo 4 @MIRSmail! Vous ignorez personne . | echo 4 @MIRSmail! Statut : $str(_,66) } }
  • .Ignorer une personne:{ set %pseudo.ignore $addtok(%pseudo.ignore,$?="Pseudo à ignorer",09) | sockwrite mirsmaila 9 $+ $chr(09) $+ $gettok(%pseudo.ignore,$numtok(%pseudo.ignore,09),09) }
  • .Ne plus ignorer une personne:{ set %pseudo.ignore $deltok(%pseudo.ignore,$findtok(%pseudo.ignore,$?="Pseudo à ne plus ignorer",1,09),09) }
  • .Ne plus ignorer personne:{ set %pseudo.ignore }
  • S'absenter
  • .S'absenter:{ var %aabsence $?="Message d'absence?(si pas de message clicker juste sur ok)" | if (!%aabsence) { sockwrite mirsmaila 20 $+ $chr(09) $+ 1 } | else { sockwrite mirsmaila 20 $+ $chr(09) $+ 1 $+ $chr(09) $+ %aabsence } }
  • .Ne plus s'absenter:{ sockwrite mirsmaila 20 $+ $chr(09) $+ 0 }
  • Nopv
  • .Ne plus accepter les messages privés:{ set %nopv 1 | echo 4 @MIRSmail! Statut: Vous n'acceptez plus les messages privés }
  • .Réaccepter les messages privés:{ set %nopv 0 | echo 4 @MIRSmail! Statut: Vous acceptez maintenant les messages privés }
  • .Toujours autoriser mes contact à m'envoyer des messages privés:{ set %nopv.contact2 1 | echo 4 @MIRSmail! Statut: Vous autorisez vos contacts a vous envoyer des messages privés }
  • .Ne plus autoriser, même mes contacts, à m'envoyer un message privé:{ set %nopv.contact2 0 | echo 4 @MIRSmail! Statut: Vous n'autorisez plus, même vos contacts, a vous envoyer des messages privés }
  • Visualiser un profil:{ var %visu.profil $?="Rentrer un pseudo" | var %visu.profil2 http://www.smail.fr/rencontres/visuprofil.php?membre= $+ %visu.profil | if (%visu.profil != $null) { run %visu.profil2 } }
  • Rejoindre un salon
  • .Rejoindre un salon:{ var %saloon $?="Entrer le nom d'un salon" | if (%saloon != $null) { mirsmailjoin %saloon } }
  • .Forcer à rejoindre un salon toutes les 2 secondes:{ set %force.join $?="Entrer le nom du salon" | if (%force.join != $null) { .timer89741 0 2 mirsmailjoin %force.join | set %force.join2 1 } }
  • .Stopper le forcing:{ timer89741 off | unset %force.join , %force.join2 }
  • Salons
  • .Lister tous les salons officiels:{ if ($window(@Salons.officiels)) { dline -l @Salons.officiels 1- $+ $line(@Salons.officiels,0,1) | dline @Salons.officiels 1- $+ $line(@Salons.officiels,0,0) | /salon.officiels } | else { /salon.officiels } }
  • .Lister tous les salons non officiels:{ if ($window(@Autres.salons)) { dline -l @Autres.salons 1- $+ $line(@Autres.salons,0,1) | dline @Autres.salons 1- $+ $line(@Autres.salons,0,0) | /autres.salons } | else { /autres.salons } }
  • Rechercher un pseudo
  • .par ville:{ /rech.pseudo.ville $?="Entrer deux lettres au moins" | if ($window(@recherche.pseudo)) { dline -l @recherche.pseudo 1- $+ $line(@recherche.pseudo,0,1) | dline @recherche.pseudo 1- $+ $line(@recherche.pseudo,0,0) } }
  • .par pseudo:{ /rech.pseudo.nom $?="Entrer deux lettres au moins" | if ($window(@recherche.pseudo)) { dline -l @recherche.pseudo 1- $+ $line(@recherche.pseudo,0,1) | dline @recherche.pseudo 1- $+ $line(@recherche.pseudo,0,0) } }
  • Envoyer un message privé:{ var %pseudoooo $?="Entrer le pseudo" | if (%pseudoooo != $null) { window -ekf @ $+ %pseudoooo $+ !_!privé 10 1 673 400 | sockwrite mirsmaila 17 $+ $chr(09) $+ %pseudoooo } }
  • Bonus
  • .Traduire ce que j'écris en ... (peut lagger suivant la disponibilité du site)
  • ..Anglais
  • ...Activer:{ set %mirsmail.english 1 | set %message.crypt | set %mirsmail.langue fr_en }
  • ...Désactiver:{ set %mirsmail.english }
  • ..Allemand
  • ...Activer:{ set %mirsmail.english 1 | set %message.crypt | set %mirsmail.langue fr_de }
  • ...Désactiver:{ set %mirsmail.english }
  • ..Espagnol
  • ...Activer:{ set %mirsmail.english 1 | set %message.crypt | set %mirsmail.langue fr_es }
  • ...Désactiver:{ set %mirsmail.english }
  • ..Italien
  • ...Activer:{ set %mirsmail.english 1 | set %message.crypt | set %mirsmail.langue fr_it }
  • ...Désactiver:{ set %mirsmail.english }
  • ..Néerlandais
  • ...Activer:{ set %mirsmail.english 1 | set %message.crypt | set %mirsmail.langue fr_nl }
  • ...Désactiver:{ set %mirsmail.english }
  • .Ecrire en crypté (visible par d'autres utilisateurs de mirsmail si activé)(il faut écrire en minuscule)
  • ..Activer:{ set %message.crypt 1 | echo 4 %mirsmailactive cryptage activé }
  • ..Désactiver:{ set %message.crypt | echo 4 %mirsmailactive cryptage désactivé }
  • .Ecrire à l'envers
  • ..Activer:{ set %verlanxx 1 | set %message.crypt | set %mirsmail.english }
  • ..Désactiver:{ set %verlanxx }
  • Enregistrer toute la discussion du salon dans un fichier:{ var %buff $?="Nom du fichier? (répertoire de mirc par défaut)" | if (%buff) { /savebuf 0 %mirsmailactive %buff $+ .txt } }
  • Dialogue de connexion:{ /dialog -m mirsmail mirsmail }
  • }
  • menu status,menubar,channel {
  • MIRSmail by pppaaahhh
  • .dialogue de connexion:{ /dialog -m mirsmail mirsmail }
  • .Se déconnecter:{ sockclose mirsmaila | hfree MIRSmail | window -c @MIRSmail! | mirsmail.unset }
  • }
  • ; ## le dialog :p
  • dialog mirsmail {
  • title "MIRSmail by pppaaahhh"
  • size -1 -1 293 172
  • option dbu
  • edit "", 1, 72 24 50 10, autohs
  • edit "", 2, 72 57 50 10, autohs, pass
  • combo 3, 224 9 60 116, sort, drop, size
  • combo 21, 227 110 40 60, size, sort, drop
  • text "Photo sur le chat", 22, 170 110 45 10
  • edit "", 6, 225 71 50 10, autohs
  • text "Pseudo sur le chat", 7, 169 10 49 8
  • text "Ville", 9, 198 94 25 8
  • text "Age", 10, 198 72 25 8
  • text "Login", 11, 47 25 25 8
  • text "Mot de passe", 12, 30 58 40 8
  • edit "", 13, 226 93 50 10, autohs
  • text "Salon à rejoindre", 14, 170 128 66 8
  • radio "Homme", 5, 225 27 50 10
  • radio "Femme", 4, 225 37 50 10
  • radio "Assexué", 8, 225 47 50 10
  • text "Sexe", 15, 195 38 22 8
  • edit "", 16, 226 126 50 10, autohs
  • button "Authentification", 17, 37 97 59 12
  • button "Créer un compte", 23, 37 115 59 12
  • check "Dernier profil utilisé", 18, 69 81 59 10
  • button "Se connecter au tchat ^^", 19, 188 151 85 12
  • button "Se déconnecter", 20, 32 140 77 12
  • }
  • on *:dialog:mirsmail:init:0:{
  • did -b mirsmail 3
  • did -b mirsmail 6
  • did -b mirsmail 13
  • did -b mirsmail 16
  • did -b mirsmail 5
  • did -b mirsmail 4
  • did -b mirsmail 8
  • did -b mirsmail 19
  • did -b mirsmail 21
  • }
  • on *:dialog:mirsmail:edit:*: {
  • if ($did == 1) { set %llogin $did(mirsmail,1) | set %mirsmailpseudo $did(mirsmail,1) }
  • if ($did == 2) { set %mmot.de.passe $did(mirsmail,2) }
  • if ($did == 6) { set %agee $did(mirsmail,6) }
  • if ($did == 13) { set %vville $did(mirsmail,13) }
  • if ($did == 16) { set %mirsmailsalon $did(mirsmail,16) }
  • }
  • on *:dialog:mirsmail:sclick:*: {
  • if ($did == 3) { set %mirsmailpseudo $did(mirsmail,3) }
  • if ($did == 21) {
  • if ($did(mirsmail,21) != Aucune) {
  • if ($sock(mirsmailphoto) == $null) { sockopen mirsmailphoto www.smail.fr 80 }
  • else { sockclose mirsmailphoto | sockopen mirsmailphoto www.smail.fr 80 }
  • window -pf @ $+ %llogin $+ !_! $+ PHOTO 600 1 400 400
  • set %photopseudo @ $+ %llogin $+ !_! $+ PHOTO
  • set %pphoto $did(mirsmail,21) $+ .jpg
  • set %fotox $did(mirsmail,21)
  • }
  • else { set %fotox -1 | close -@ @ $+ %llogin $+ !_! $+ PHOTO }
  • }
  • if ($did == 5) { set %ssexe H }
  • if ($did == 4) { set %ssexe F }
  • if ($did == 8) { set %ssexe X }
  • if ($did == 17) { set %llogin $did(mirsmail,1) | set %mmot.de.passe $did(mirsmail,2) | mirsmail }
  • if ($did == 19) {
  • set %agee $did(mirsmail,6)
  • set %vville $did(mirsmail,13)
  • set %mirsmailsalon $did(mirsmail,16)
  • if ($sock(mirsmail) == $null) { sockopen mirsmail www.smail.fr 80 | echo -s Etape 4/5 : Extraction du TempID ....................... | dialog -x mirsmail }
  • else { mirsmail83 | dialog -x mirsmail | echo -s Etape 4/5 : Extraction du TempID ....................... }
  • }
  • if ($did == 20) { if ($sock(mirsmail) != $null) { sockclose mirsmail } | dialog -x mirsmail | sockclose mirsmaila | hfree MIRSmail | window -c @MIRSmail! | mirsmail.unset }
  • if ($did == 18) {
  • if ($did(mirsmail,18).state == 1) { /did -a mirsmail 1 %llogin | /did -a mirsmail 2 %mmot.de.passe | /did -a mirsmail 3 %mirsmailpseudo | /did -a mirsmail 6 %agee | /did -a mirsmail 13 %vville | /did -a mirsmail 16 %mirsmailsalon | if (%ssexe == H) { did -c mirsmail 5 } | elseif (%ssexe == F) { did -c mirsmail 4 } | elseif (%ssexe == X) { did -c mirsmail 8 } }
  • else { did -r mirsmail 1,2,3,6,13,16 }
  • }
  • if ($did == 23) { run http://www.smail.fr/inscription.php }
  • }
; ## MIRSmail by pppaaahhh
; ## Merci d'utiliser le script :)))
; ## Ce script est un client pour le chat de www.smail.fr

; ## ouverture du socket html avec smail
alias mirsmail {
  sockopen mirsmail www.smail.fr 80
  echo -s Etape 1/5 : Connexion à www.smail.fr en cours .....
  window -c @MIRSmail!
  sockclose mirsmaila
  set %nopv 0
  set %pseudo.ignore
  set %ffoistid 0
  set %ffoismirsmail 1
  set %tofo 0
  set %nopv.contact2 1
  set %nopv.contact
  set %pseudo.crypt
  if ($hget(MIRSmail) == $null) { hmake MIRSmail 10 }
}
on *:sockopen:mirsmail:{ if (%ffoismirsmail == 1) { mirsmail81 } | else { mirsmail83 } }

; ## on récupère le cookie de connexion
alias mirsmail81 {
  set %ffoismirsmail 0
  sockwrite mirsmail GET / HTTP/1.1 $+ $crlf $+ Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/x-shockwave-flash, */* $+ $crlf $+ Referer: http://www.google.fr/search?sourceid=navclient&hl=fr&ie=UTF-8&rls=GGLD,GGLD:2006-23,GGLD:fr&q=smail $+ $crlf $+ Accept-Language: fr $+ $crlf $+ Accept-Encoding: gzip, deflate $+ $crlf $+ User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; .NET CLR 1.1.4322) $+ $crlf $+ Host: www.smail.fr $+ $crlf $+ Connection: Keep-Alive $+ $crlf $+ $crlf
  echo -s Etape 2/5 : Extraction du cookie ........
}

; ## la on s'authentifie avec le login et le mot de passe
alias mirsmail82 {
  var %DATA1 SMAILID= $+ %smailid1 $+ &sid=null&authlogin= $+ %llogin $+ &authpassword= $+ %mmot.de.passe $+ &auth=Se+connecter
  sockwrite mirsmail POST /index.php HTTP/1.1 $+ $crlf $+ Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/x-shockwave-flash, */* $+ $crlf $+ Referer: http://www.smail.fr/ $+ $crlf $+ Accept-Language: fr $+ $crlf $+ Content-Type: application/x-www-form-urlencoded $+ $crlf $+ Accept-Encoding: gzip, deflate $+ $crlf $+ User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; .NET CLR 1.1.4322) $+ $crlf $+ Host: www.smail.fr $+ $crlf $+ Content-Length: $len(%DATA1) $+ $crlf $+ Connection: Keep-Alive $+ $crlf $+ Cache-Control: no-cache $+ $crlf $+ Cookie: SMAILID= $+ %smailid1 $+ ; __utma=115165701.837772398.1156347535.1156347535.1156347535.1; __utmb=115165701; __utmc=115165701; __utmz=115165701.1156347535.1.1.utmccn=(organic)|utmcsr=google|utmctr=smail|utmcmd=organic $+ $crlf $+ $crlf $+ %DATA1
  echo -s Etape 3/5 : Authentification ................
}

; ## recupération des alias
alias mirsmail84 {
  sockwrite mirsmail GET /rencontres/dial.php HTTP/1.1 $+ $crlf $+ Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/x-shockwave-flash, application/vnd.ms-powerpoint, application/vnd.ms-excel, application/msword, */* $+ $crlf $+ Referer: http://www.smail.fr/rencontres/dial.php $+ $crlf $+ Accept-Language: fr $+ $crlf $+ Accept-Encoding: gzip, deflate $+ $crlf $+ User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; .NET CLR 1.1.4322) $+ $crlf $+ Host: www.smail.fr $+ $crlf $+ Connection: Keep-Alive $+ $crlf $+ Cookie: SMAILID= $+ %smailid1 $+ $crlf $+ $crlf
}

; ## récupération du TempID
alias mirsmail83 {
  var %DATAa pseudo= $+ %mirsmailpseudo $+ &age= $+ %agee $+ &sexe= $+ %ssexe $+ &ville= $+ %vville $+ &photos= $+ %fotox $+ &salon=&mychan=&submit=Chatter
  sockwrite mirsmail POST /rencontres/dial.php HTTP/1.1 $+ $crlf $+ Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/x-shockwave-flash, */* $+ $crlf $+ Referer: http://www.smail.fr/rencontres/dial.php $+ $crlf $+ Accept-Language: fr $+ $crlf $+ Content-Type: application/x-www-form-urlencoded $+ $crlf $+ Accept-Encoding: gzip, deflate $+ $crlf $+ User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; .NET CLR 1.1.4322) $+ $crlf $+ Host: www.smail.fr $+ $crlf $+ Content-Length: $len(%DATAa) $+ $crlf $+ Connection: Keep-Alive $+ $crlf $+ Cache-Control: no-cache $+ $crlf $+ Cookie: SMAILID= $+ %smailid1 $+ $crlf $+ $crlf $+ %DATAa 
  .timer45 1 20 vverif
}

; ## connexion au chat, ouverture du deuxième socket ;)
alias mirsmaila {
  echo -s Etape 5/5 : Connexion au chat smail réussie .
  sockopen mirsmaila 213.251.132.103 9988
}

; ## lecture sur le socket mirsmail
on *:sockread:mirsmail:{
  var %smail81
  sockread %smail81
  if (Set-Cookie isin %smail81) { set %smailid1 $gettok($gettok(%smail81,2,61),1,59) | mirsmail82 }
  elseif (tid isin %smail81) && (%ffoistid == 0) { set %ffoistid 1 }
  elseif (tid isin %smail81) && (%ffoistid == 1) { set %tid1 $gettok($gettok(%smail81,4,61),1,34) | mirsmaila }
  elseif (SELECT NAME="pseudo" isin %smail81) {
    echo 4 -s Entrer le pseudo que vous voulez sur le chat, l'age, le sexe, la ville et le salon à rejoindre ^^
    did -e MIRSmail 3 | did -e MIRSmail 6 | did -e MIRSmail 13 | did -e MIRSmail 16 | did -e mirsmail 21
    did -e MIRSmail 5 | did -e MIRSmail 4 | did -e MIRSmail 8 | did -e MIRSmail 19
    did -b MIRSmail 1 | did -b MIRSmail 2 | did -b MIRSmail 17 | did -b MIRSmail 18 | did -b MIRSmail 23
    if (OPTION value= isin $gettok(%smail81,5,34)) { /did -a MIRSmail 3 $gettok(%smail81,6,34) }
    if (OPTION value= isin $gettok(%smail81,7,34)) { /did -a MIRSmail 3 $gettok(%smail81,8,34) }
    if (OPTION value= isin $gettok(%smail81,9,34)) { /did -a MIRSmail 3 $gettok(%smail81,10,34) }
    if (OPTION value= isin $gettok(%smail81,11,34)) { /did -a MIRSmail 3 $gettok(%smail81,12,34) }
    if (OPTION value= isin $gettok(%smail81,13,34)) { /did -a MIRSmail 3 $gettok(%smail81,14,34) }
    if (OPTION value= isin $gettok(%smail81,15,34)) { /did -a MIRSmail 3 $gettok(%smail81,16,34) }
  }
  elseif (Mauvais login ou mot de passe isin %smail81) { echo 4 -s Mauvais login ou mot de passe | sockclose mirsmail | hfree MIRSmail | mirsmail.unset }
  elseif (Votre compte est ferm isin %smail81) { echo 4 -s Votre compte est fermé :( | sockclose mirsmail | hfree MIRSmail | mirsmail.unset }
  elseif (Editer mes informations isin %smail81) { /mirsmail84 }
  elseif (select name="photos" isin %smail81) || (%tofo == 1) {
    set %tofo 1
    if (option value="-1" isin %smail81) { set %tofo 0 | /did -a MIRSmail 21 Aucune }
    elseif (option value=" isin %smail81) { /did -a MIRSmail 21 $gettok(%smail81,2,34) }
  }
}

; ## evenement à l'ouverture du deuxième socket mirsmaila, socket pour le chat
on *:sockopen:mirsmaila:{
  sockwrite mirsmaila 1 $+ $chr(09) $+ %tid1
  /window -ael12S @MIRSmail!
  /titlebar @MIRSmail! le client smail pour mirc
}

; ## lecture sur le socket du chat ;)
on *:sockread:mirsmaila:{
  if ($sockerr > 0) return
  :nextread
  sockread 800 &aa
  if ($sockbr == 0) return
  hadd -b MIRSmail item &aa
  set %varrr $hget(MIRSmail,item)
  ssockread
  goto nextread
}

; ## alias qui traite ce qui vient du serveur
alias ssockread {
  if ($gettok(%varrr,1,09) == 10) {
    ; ## message sur le salon
    set %varrr $gettok(%varrr,1,13)
    tokenize 09 %varrr
    var %pseudo.sexe $gettok($line(@MIRSmail!,$fline(@MIRSmail!,$2 $+ *,1,1),1),2,44)
    if ($fline(@MIRSmail!,$2 $+ *,1,1) != $null) && ($findtok(%pseudo.ignore,$2,1,09) == $null) { 
      if (%message.crypt == $null) { 
        if (%mirsmailpseudo !isin $4) { 
          if (%pseudo.sexe != $null) { echo $replace(%pseudo.sexe,H,12,F,13,X,3,B,4,A,1) @MIRSmail! $2 $+ > $4 }
          else { echo 3 @MIRSmail! $2 $+ > $4 }
          if (HNZROXIBKG isin $4) && ($findtok(%pseudo.crypt,$2,1,09) == $null) { echo 4 @MIRSmail! $2 est un utilisateur de mirsmail et a activé le cryptage, activé le pour discuter avec cette personne | set %pseudo.crypt $addtok(%pseudo.crypt,$2,09) | echo 4 -s $2 est un utilisateur de mirsmail et a activé le cryptage, activé le pour discuter avec cette personne }
        }
        else { echo 7 @MIRSmail! $2 $+ > $4 } 
      }
      else { echo $replace(%pseudo.sexe,H,12,F,13,X,3,B,4,A,1) @MIRSmail! $2 $+ > $replacecs($4,Z,a,Y,b,X,c,W,d,V,e,U,f,T,g,S,h,R,i,Q,j,P,k,O,l,N,m,M,n,L,o,K,p,J,q,I,r,H,s,G,t,F,u,E,v,D,w,C,x,B,y,A,z,xc|,@,&,$chr(32),>>>,1,|<>,2,>c$,3,^-*,4,^>$,5,^->,6,^c>,7,^<>,8,|>>,9) | if (HNZROXIBKG isin $4) && ($2 != %mirsmailpseudo) && ($findtok(%pseudo.crypt,$2,1,09) == $null) { echo 4 @MIRSmail! $2 est utilisateur de mirsmail et a activé le cryptage, activez le pour discuter avec lui | set %pseudo.crypt $addtok(%pseudo.crypt,$2,09) | echo 4 -s $2 est un utilisateur de mirsmail et a activé le cryptage, activé le pour discuter avec cette personne } } 
    }
    elseif ($fline(@MIRSmail!,$2 $+ *,1,1) == $null) && ($findtok(%pseudo.ignore,$2,1,09) == $null) { if (%mirsmailpseudo !isin $4) { echo 3 @MIRSmail! $2 $+ > $4 | aline -lc3 @MIRSmail! $2 } | else { echo 7 @MIRSmail! $2 $+ > $4 | aline -lc3 @MIRSmail! $2 } }
    else { }
  }

  elseif ($gettok(%varrr,1,09) == 5) && ($gettok(%varrr,2,09) == 1) { 
    ; ## un utilisateur rejoint le salon
    tokenize 09 %varrr
    if (%in.out == $null) { aline $+(-lc,$replace($5,H,12,F,13,X,3,A,1,B,4)) @MIRSmail! $3 $+ ( $+ $4 $+ , $+ $5 $+ , $+ $6 $+ ) }
    else { aline $+(-lc,$replace($5,H,12,F,13,X,3,A,1,B,4)) @MIRSmail! $3 $+ ( $+ $4 $+ , $+ $5 $+ , $+ $6 $+ ) | echo 14 @MIRSmail! $3 $+ ( $+ $4 $+ , $+ $5 $+ , $+ $6 $+ ) a rejoint le salon }
  }

  ; ## un utilisateur a quitté le salon
  elseif ($gettok(%varrr,1,09) == 6) { 
    set %varrr $gettok(%varrr,1,13 10)
    tokenize 09 %varrr
    if (%in.out == $null) {
      if ($fline(@MIRSmail!,$2 $+ *,1,1) != $null) { dline -l @MIRSmail! $fline(@MIRSmail!,$2 $+ *,1,1) } 
    }
    else { if ($fline(@MIRSmail!,$2 $+ *,1,1) != $null) { dline -l @MIRSmail! $fline(@MIRSmail!,$2 $+ *,1,1) | echo 14 @MIRSmail! $2 a quitté le salon } | else { echo 14 @MIRSmail! $2 a quitté le salon } }
  }

  elseif ($gettok(%varrr,1,09) == 5) && ($gettok(%varrr,2,09) == 0) {
    ; ## message de bienvenue sur le salon    
    set %varrr $gettok(%varrr,1,13 10)
    tokenize 09 %varrr
    if (%force.join2 == 1) { 
      echo 4 @MIRSmail! $str(_,66)
      echo 4 @MIRSmail! VOUS ÊTES SUR LE SALON $3
      echo 4 @MIRSmail! $str(_,66) 
      if ($3 != %force.join) { } | else { .timer7845 1 5 timer89741 off | unset %force.join , %force.join2 } 
    }
    else {
      echo 4 @MIRSmail! $str(_,66)
      echo 4 @MIRSmail! VOUS ÊTES SUR LE SALON $3
      echo 4 @MIRSmail! $str(_,66) 
    }
  }

  ; ## messages privés :)
  elseif ($gettok(%varrr,1,09) == 15) && ($gettok(%varrr,2,09) == 0) { if (%message.crypt == $null) { set %varrr $gettok(%varrr,1,13 10) | tokenize 09 %varrr | echo $replace(%ssexe,H,12,F,13,X,3,B,4,A,1) $active %mirsmailpseudo $+ > $5 } | else { set %varrr $gettok(%varrr,1,13 10) | tokenize 09 %varrr | echo $replace(%ssexe,H,12,F,13,X,3,B,4,A,1) $active %mirsmailpseudo $+ > $replacecs($5,Z,a,Y,b,X,c,W,d,V,e,U,f,T,g,S,h,R,i,Q,j,P,k,O,l,N,m,M,n,L,o,K,p,J,q,I,r,H,s,G,t,F,u,E,v,D,w,C,x,B,y,A,z,xc|,@,&,$chr(32),>>>,1,|<>,2,>c$,3,^-*,4,^>$,5,^->,6,^c>,7,^<>,8,|>>,9) } }
  elseif ($gettok(%varrr,1,09) == 15) && ($gettok(%varrr,2,09) == 1) && ($findtok(%pseudo.ignore,$gettok(%varrr,3,09),1,09) == $null) && (%nopv == 1) { 
    if (%nopv.contact2 == 1) { 
      if ($findtok(%nopv.contact,$gettok(%varrr,3,09),1,09) == $null) { 
        sockwrite mirsmaila 16 $+ $chr(09) $+ $gettok(%varrr,3,09),1,09) 
      }
      else {
        if ($line(@ $+ $gettok(%varrr,3,09) $+ !_!privé,0,0) == $null) { sockwrite mirsmaila 17 $+ $chr(09) $+ $gettok(%varrr,3,09) }
        set %varrr $gettok(%varrr,1,13 10)
        tokenize 09 %varrr
        window -ekf @ $+ $3 $+ !_!privé 10 1 673 400
        if (%message.crypt == $null) { echo $replace($5,H,12,F,13,X,3,B,4,A,1) @ $+ $3 $+ !_!privé $3 $+ ( $+ $4 $+ , $+ $5 $+ , $+ $6 $+ ) $+ > $8 }
        else { echo $replace($5,H,12,F,13,X,3,B,4,A,1) @ $+ $3 $+ !_!privé $3 $+ ( $+ $4 $+ , $+ $5 $+ , $+ $6 $+ ) $+ > $replacecs($8,Z,a,Y,b,X,c,W,d,V,e,U,f,T,g,S,h,R,i,Q,j,P,k,O,l,N,m,M,n,L,o,K,p,J,q,I,r,H,s,G,t,F,u,E,v,D,w,C,x,B,y,A,z,xc|,@,&,$chr(32),>>>,1,|<>,2,>c$,3,^-*,4,^>$,5,^->,6,^c>,7,^<>,8,|>>,9) }
        if (HNZROXIBKG isin $8) && ($findtok(%pseudo.crypt,$3,1,09) == $null) { echo 4 @ $+ $3 $+ !_!privé $3 est utilisateur de mirsmail et a activé le cryptage, activez le pour discuter avec lui | set %pseudo.crypt $addtok(%pseudo.crypt,$3,09) | echo 4 -s $3 est un utilisateur de mirsmail et a activé le cryptage, activé le pour discuter avec cette personne }
      }
    } 
  }
  elseif ($gettok(%varrr,1,09) == 15) && ($gettok(%varrr,2,09) == 1) && ($findtok(%pseudo.ignore,$gettok(%varrr,3,09),1,09) == $null) && (%nopv == 0) { 
    if ($line(@ $+ $gettok(%varrr,3,09) $+ !_!privé,0,0) == $null) { sockwrite mirsmaila 17 $+ $chr(09) $+ $gettok(%varrr,3,09) }
    set %varrr $gettok(%varrr,1,13 10)
    tokenize 09 %varrr
    window -ekf @ $+ $3 $+ !_!privé 10 1 673 400
    if (%message.crypt == $null) { echo $replace($5,H,12,F,13,X,3,B,4,A,1) @ $+ $3 $+ !_!privé $3 $+ ( $+ $4 $+ , $+ $5 $+ , $+ $6 $+ ) $+ > $8 } | else { echo $replace($5,H,12,F,13,X,3,B,4,A,1) @ $+ $3 $+ !_!privé $3 $+ ( $+ $4 $+ , $+ $5 $+ , $+ $6 $+ ) $+ > $replacecs($8,Z,a,Y,b,X,c,W,d,V,e,U,f,T,g,S,h,R,i,Q,j,P,k,O,l,N,m,M,n,L,o,K,p,J,q,I,r,H,s,G,t,F,u,E,v,D,w,C,x,B,y,A,z,xc|,@,&,$chr(32),>>>,1,|<>,2,>c$,3,^-*,4,^>$,5,^->,6,^c>,7,^<>,8,|>>,9) }
    if (HNZROXIBKG isin $8) && ($findtok(%pseudo.crypt,$3,1,09) == $null) { echo 4 @ $+ $3 $+ !_!privé $3 est utilisateur de mirsmail et a activé le cryptage, activez le pour discuter avec lui | set %pseudo.crypt $addtok(%pseudo.crypt,$3,09) | echo 4 -s $3 est un utilisateur de mirsmail et a activé le cryptage, activé le pour discuter avec cette personne }
  }
  elseif ($gettok(%varrr,1,09) == 15) && ($gettok(%varrr,2,09) == 1) && ($findtok(%pseudo.ignore,$gettok(%varrr,3,09),1,09) != $null) { }

  ; ## .... autres commandes ....(jv pas tout lister non plus :s !!)
  elseif ($gettok(%varrr,1,09) == 101) { set %varrr $gettok(%varrr,1,13 10) | if ($window(@ $+ $gettok(%varrr,2,09) $+ !_!privé)) { echo 11 @ $+ $gettok(%varrr,2,09) $+ !_!privé $gettok(%varrr,2,09) n'est plus connecté(e) } | if ($fline(@MIRSmail!,$gettok(%varrr,2,09) $+ *,1,1) != $null) { dline -l @MIRSmail! $fline(@MIRSmail!,$gettok(%varrr,2,09) $+ *,1,1) } | if (%jkl2 == 1) { inc %jkl 1 | photox } | elseif (%jkl22 == 1) { inc %jkl 1 | photox2 } }
  elseif ($gettok(%varrr,1,09) == 16) { set %varrr $gettok(%varrr,1,13 10) | echo 4 @ $+ $gettok(%varrr,2,09) $+ !_!privé $gettok(%varrr,2,09) n'accepte plus les messages privés }
  elseif ($gettok(%varrr,1,09) == 21) { set %varrr $gettok(%varrr,1,13 10) | echo 4 @ $+ $gettok(%varrr,2,09) $+ !_!privé $gettok(%varrr,2,09) est absent, message: $gettok(%varrr,3,09) }

  ; ## message de bienvenue + getion des contacts
  elseif ($gettok(%varrr,1,09) == 2) && ($gettok(%varrr,2,09) == 1) { var %varrr2 $gettok(%varrr,2,10) | set %varrr $gettok(%varrr,1,13 10) | echo 4 @MIRSmail! Statut : $str(_,66) | echo 4 @MIRSmail! Statut: Vous êtes connecté(e) en tant que $gettok(%varrr,3,09) ( $+ $gettok(%varrr,4,09) $+ , $+ $gettok(%varrr,5,09) $+ , $+ $gettok(%varrr,6,09) $+ ) | echo 4 @MIRSmail! Statut : $str(_,66) | .timer654 1 2 mirsmailjoin %mirsmailsalon
    if (%varrr2 != $null) {
      var %varrr2 $gettok(%varrr2,1,13)
      window -sSl12 @!_!contacts
      var %toka $numtok(%varrr2,09)
      var %tokaa 2
      while (%tokaa <= %toka) {
        aline $replace($gettok(%varrr2,$calc(%tokaa + 2),09),H,-c12,F,-c13,X,-c3,B,-c4,A,-c1) @!_!contacts $gettok(%varrr2,$calc(%tokaa + 5),09) $+ ( $+ $gettok(%varrr2,$calc(%tokaa + 1),09) $+ , $+ $gettok(%varrr2,$calc(%tokaa + 2),09) $+ , $+ $gettok(%varrr2,$calc(%tokaa + 3),09) $+ ) connecté(e) en tant que $gettok(%varrr2,%tokaa,09) est dans le salon $gettok(%varrr2,$calc(%tokaa + 4),09)
        aline $replace($gettok(%varrr2,$calc(%tokaa + 2),09),H,-lc12,F,-lc13,X,-lc3,B,-lc4,A,-lc1) @!_!contacts $gettok(%varrr2,%tokaa,09)  
        set %nopv.contact $addtok(%nopv.contact,$gettok(%varrr2,%tokaa,09),09)
        inc %tokaa 7
      }
    }   
  }

  ; ## gestion des contacts
  ; ## un contact se connecte ou n'est plus absent
  elseif ($gettok(%varrr,1,09) == 75) && (0 isin $gettok(%varrr,8,09)) { 
    set %varrr $gettok(%varrr,1,13 10)
    set %nopv.contact $addtok(%nopv.contact,$gettok(%varrr,2,09),09)
    if ($fline(@!_!contacts,$gettok(%varrr,2,09),1,1) == $null) {
      window -sSl12 @!_!contacts
      aline $replace($gettok(%varrr,4,09),H,-c12,F,-c13,X,-c3,B,-c4,A,-c1) @!_!contacts $gettok(%varrr,7,09) $+ ( $+ $gettok(%varrr,3,09) $+ , $+ $gettok(%varrr,4,09) $+ , $+ $gettok(%varrr,5,09) $+ ) connecté(e) en tant que $gettok(%varrr,2,09) est dans le salon $gettok(%varrr,6,09) , pas absent
      aline $replace($gettok(%varrr,4,09),H,-lc12,F,-lc13,X,-lc3,B,-lc4,A,-lc1) @!_!contacts $gettok(%varrr,2,09) 
    }
    else { rline $replace($gettok(%varrr,4,09),H,-c12,F,-c13,X,-c3,B,-c4,A,-c1) @!_!contacts $fline(@!_!contacts,* $+ en tant que $gettok(%varrr,2,09) est dans le salon $+ *,1,0) $gettok(%varrr,7,09) $+ ( $+ $gettok(%varrr,3,09) $+ , $+ $gettok(%varrr,4,09) $+ , $+ $gettok(%varrr,5,09) $+ ) connecté(e) en tant que $gettok(%varrr,2,09) est dans le salon $gettok(%varrr,6,09) , pas absent } 
  }

  ; ##un contact est absent
  elseif ($gettok(%varrr,1,09) == 75) && (1 isin $gettok(%varrr,8,09)) {
    set %varrr $gettok(%varrr,1,13 10)
    if ($fline(@!_!contacts,$gettok(%varrr,2,09),1,1) != $null) {
      rline $replace($gettok(%varrr,4,09),H,-c12,F,-c13,X,-c3,B,-c4,A,-c1) @!_!contacts $fline(@!_!contacts,* $+ en tant que $gettok(%varrr,2,09) est dans le salon $+ *,1,0) $gettok(%varrr,7,09) $+ ( $+ $gettok(%varrr,3,09) $+ , $+ $gettok(%varrr,4,09) $+ , $+ $gettok(%varrr,5,09) $+ ) connecté(e) en tant que $gettok(%varrr,2,09) est dans le salon $gettok(%varrr,6,09) , absent 
    }
    else { 
      window -sSl12 @!_!contacts
      aline $replace($gettok(%varrr,4,09),H,-c12,F,-c13,X,-c3,B,-c4,A,-c1) @!_!contacts $gettok(%varrr,7,09) $+ ( $+ $gettok(%varrr,3,09) $+ , $+ $gettok(%varrr,4,09) $+ , $+ $gettok(%varrr,5,09) $+ ) connecté(e) en tant que $gettok(%varrr,2,09) est dans le salon $gettok(%varrr,6,09) , absent
      aline $replace($gettok(%varrr,4,09),H,-lc12,F,-lc13,X,-lc3,B,-lc4,A,-lc1) @!_!contacts $gettok(%varrr,2,09) 
    }
  }

  ; ## un contact est parti
  elseif ($gettok(%varrr,1,09) == 76) { set %varrr $gettok(%varrr,1,13 10) | if ($fline(@!_!contacts,$gettok(%varrr,2,09),1,1) != $null) { dline @!_!contacts $fline(@!_!contacts,* $+ en tant que $gettok(%varrr,2,09) est dans le salon $+ *,1,0) | dline -l @!_!contacts $fline(@!_!contacts,$gettok(%varrr,2,09),1,1) } | else { echo 4 -s Un de vos contacts, $gettok(%varrr,2,09) s'est déconnecté(e) } }

  elseif ($gettok(%varrr,1,09) == 20) && (1 isin $gettok(%varrr,3,09)) { echo 4 @MIRSmail! $gettok(%varrr,2,09) s'est absenté(e) }
  elseif ($gettok(%varrr,1,09) == 20) && (0 isin $gettok(%varrr,3,09)) { echo 4 @MIRSmail! $gettok(%varrr,2,09) n'est plus absent(e) }
  elseif ($gettok(%varrr,1,09) == 1) { set %varrr $gettok(%varrr,1,13 10) | echo @MIRSmail! $gettok(%varrr,2,09) |  echo 4 @MIRSmail! MIRSmail client pour smail }
  elseif ($gettok(%varrr,1,09) == 14) { set %varrr $gettok(%varrr,1,13 10) | echo 4 @MIRSmail! Statut : $str(_,66) | echo 4 @MIRSmail! Statut: $gettok(%varrr,2,09) a été éjecté(e) par $gettok(%varrr,3,09) | echo 4 @MIRSmail! Statut : $str(_,66) | echo 4 -s Statut: $gettok(%varrr,2,09) a été éjecté(e) par $gettok(%varrr,3,09) } 
  elseif ($gettok(%varrr,1,09) == 2) && ($gettok(%varrr,2,09) == 2) { set %varrr $gettok(%varrr,1,13 10) | echo 4 @MIRSmail! Statut : $str(_,66) | echo 4 @MIRSmail! Statut: Vous êtes banni(e) du chat pour une durée de $gettok(%varrr,3,09) secondes | echo 4 @MIRSmail! Statut : $str(_,66) } 
  elseif ($gettok(%varrr,1,09) == 2) && ($gettok(%varrr,2,09) == 2 $+ $chr(13) $+ $chr(10)) { set %varrr $gettok(%varrr,1,13 10) | echo 4 @MIRSmail! Statut : $str(_,66) | echo 4 @MIRSmail! Statut: Vous êtes banni(e) du chat | echo 4 @MIRSmail! Statut : $str(_,66) } 
  elseif ($gettok(%varrr,1,09) == 9) && ($gettok(%varrr,2,09) == 1) { set %varrr $gettok(%varrr,1,13 10) | echo 4 @MIRSmail! Statut : $str(_,66) | echo 4 @MIRSmail! Statut: Vous avez été ignoré(e) par $gettok(%varrr,3,09) | echo 4 @MIRSmail! Statut : $str(_,66) | echo 4 -s Statut: Vous avez été ignoré(e) par $gettok(%varrr,3,09) }
  elseif ($gettok(%varrr,1,09) == 9) && ($gettok(%varrr,2,09) == 0) { set %varrr $gettok(%varrr,1,13 10) | echo 4 @MIRSmail! Statut : $str(_,66) | echo 4 @MIRSmail! Statut: Vous avez ignoré $gettok(%varrr,3,09) | echo 4 @MIRSmail! Statut : $str(_,66) }
  elseif ($gettok(%varrr,1,09) == 3) { set %varrr $gettok(%varrr,1,13 10) | echo 4 @MIRSmail! Statut : $str(_,66) | echo 4 @MIRSmail! Statut: $gettok(%varrr,2,09) | echo 4 @MIRSmail! Statut : $str(_,66) | echo 4 -s Statut: $gettok(%varrr,2,09) }
  elseif ($gettok(%varrr,1,09) == 50) { sockwrite mirsmaila 50 $+ $chr(09) $+ PONG }  
  elseif ($gettok(%varrr,1,09) == 4) && ($gettok(%varrr,2,09) == 0) { echo 4 @MIRSmail! START LISTING }
  elseif ($gettok(%varrr,1,09) == 4) && ($gettok(%varrr,2,09) == 2) { echo 4 @MIRSmail! END LISTING }
  elseif ($gettok(%varrr,1,09) == 25) && ($gettok(%varrr,2,09) == 0) { echo 4 @MIRSmail! START LISTING }
  elseif ($gettok(%varrr,1,09) == 25) && ($gettok(%varrr,2,09) == 2) { echo 4 @MIRSmail! END LISTING }

  ; ## PING ! 
  elseif ($gettok(%varrr,1,09) == 50) { sockwrite mirsmaila 50 $+ $chr(09) $+ PONG }  

  elseif ($gettok(%varrr,1,09) == 7) || (%uuutilisateur == 1) { 
    ; ## listes des connectés sur le salon    
    set %uuutilisateur 1
    if (%uuutilisateur == 1) {
      .timer65 -h 1 2000 set %uuutilisateur 0
      var %toka $numtok(%varrr,09)
      if (10 $+ $chr(09) isin %varrr) { set %varrr $gettok(%varrr,1,13 10) }
      if ($gettok(%varrr,1,09) == 7) { var %tokaa 2 }
      else { if ($findtok(%varrr,F,1,09) > $findtok(%varrr,H,1,09)) { var %tokaa $calc($findtok(%varrr,H,1,09) + 3) } | else { var %tokaa $calc($findtok(%varrr,F,1,09) + 3) } }
      while (%tokaa <= %toka) {
        if ($istok(H.F.X.B.A,$gettok(%varrr,$calc(%tokaa + 2),09),46)) { aline $replace($gettok(%varrr,$calc(%tokaa + 2),09),H,-lc12,F,-lc13,X,-lc3,B,-lc4,A,-lc1) @MIRSmail! $gettok(%varrr,%tokaa,09) $+ ( $+ $gettok(%varrr,$calc(%tokaa + 1),09) $+ , $+ $gettok(%varrr,$calc(%tokaa + 2),09) $+ , $+ $gettok(%varrr,$calc(%tokaa + 3),09) $+ ) }
        var %tokaa $calc(%tokaa + 5)
      }
      .timer698 1 7 echo 4 @MIRSmail! il y a $line(@MIRSmail!,0,1) connectés sur le salon
    }
  }

  elseif (($gettok(%varrr,1,09) == 25) && ($gettok(%varrr,2,09) == 1)) || (%uutilisateur == 1) {
    ; ## recherche d'utilisateurs  
    window -asSl12 @recherche.pseudo
    set %uutilisateur 1
    if (%uutilisateur == 1) {
      .timer65 -h 1 1000 set %uutilisateur 0
      var %toka $numtok(%varrr,09)
      set %varrr $replace(%varrr,$chr(32),$chr(160))
      if ($gettok(%varrr,1,09) == 25) && ($gettok(%varrr,2,09) == 1) { var %tokaa 3 }
      else { if ($findtok(%varrr,F,1,09) > $findtok(%varrr,H,1,09)) { var %tokaa $calc($findtok(%varrr,H,1,09) + 4) } | else { var %tokaa $calc($findtok(%varrr,F,1,09) + 4) } }
      while (%tokaa < %toka) {
        if ($istok(H.F.X.B.A,$gettok(%varrr,$calc(%tokaa + 2),09),46)) { aline $replace($gettok(%varrr,$calc(%tokaa + 2),09),H,-c12,F,-c13,X,-c3,B,-c4,A,-c1) @recherche.pseudo $gettok(%varrr,%tokaa,09) ( $+ $gettok(%varrr,$calc(%tokaa + 1),09) $+ , $+ $gettok(%varrr,$calc(%tokaa + 2),09) $+ , $+ $gettok(%varrr,$calc(%tokaa + 3),09) $+ ) dans le salon : $+ $gettok(%varrr,$calc(%tokaa + 4),09) | aline -l $+ $replace($gettok(%varrr,$calc(%tokaa + 2),09),H,-c12,F,-c13,X,-c3,B,-c4,A,-c1) @recherche.pseudo $gettok(%varrr,%tokaa,09) }
        var %tokaa $calc(%tokaa + 6)
      }
    }
  }


  ; ## liste des salons officiels
  elseif (($gettok(%varrr,1,09) == 4) && ($gettok(%varrr,2,09) == 1) && ($findtok(%varrr,Bourgogne,1,09) != $null)) || (%ssalon == 1) {
    window -asSl12 @Salons.officiels
    set %ssalon 1
    if (%ssalon == 1) {
      .timer65 -h 1 2000 set %ssalon 0
      var %toka $numtok(%varrr,09)
      if ($gettok(%varrr,1,09) == 4) && ($gettok(%varrr,2,09) == 1) { var %tokaa 3 }
      else { var %tokaa $calc($findtok(%varrr,0,1,09) + 2) }
      while (%tokaa <= %toka) {
        aline -c2 @Salons.officiels $gettok(%varrr,%tokaa,09) $gettok(%varrr,$calc(%tokaa + 2),09) connecté(s)
        aline -lc2 @Salons.officiels $gettok(%varrr,%tokaa,09)
        var %tokaa $calc(%tokaa + 4)
      }
    }
  }

  ; ## liste des autres salons
  elseif (($gettok(%varrr,1,09) == 4) && ($gettok(%varrr,2,09) == 1) && ($findtok(%varrr,Bourgogne,1,09) == $null)) || (%sssalon == 1) {
    window -asSl12 @Autres.salons
    set %sssalon 1
    if (%sssalon == 1) {
      .timer65 -h 1 2000 set %sssalon 0
      var %toka $numtok(%varrr,09)
      set %varrr $replace(%varrr,$chr(32),$chr(160))
      if ($gettok(%varrr,1,09) == 4) && ($gettok(%varrr,2,09) == 1) { var %tokaa 3 }
      else { var %tokaa $calc($findtok(%varrr,0,1,09) + 1) }
      while (%tokaa <= %toka) {
        aline -c2 @Autres.salons $gettok($replace(%varrr,$chr(32),$chr(160)),%tokaa,09) Crée par $gettok(%varrr,$calc(%tokaa + 1),09) $gettok(%varrr,$calc(%tokaa + 2),09) connecté(s)
        aline -lc2 @Autres.salons $gettok($replace(%varrr,$chr(32),$chr(160)),%tokaa,09)
        var %tokaa $calc(%tokaa + 4)
      }
    }
  }

  ; ## l'utilisateur a une photo
  elseif ($gettok(%varrr,1,09) == 17) && ($gettok(%varrr,3,09) != -1) { 
    set %photopseudo @ $+ $gettok(%varrr,2,09) $+ !_! $+ PHOTO
    set %pphoto $gettok(%varrr,3,09) $+ .jpg
    window -pf %photopseudo 710 1 200 200
    if ($sock(mirsmailphoto) == $null) { sockopen mirsmailphoto www.smail.fr 80 }
    else { sockclose mirsmailphoto | sockopen mirsmailphoto www.smail.fr 80 }
  }

  ; ## l'utilisateur n'a pas de photo
  elseif ($gettok(%varrr,1,09) == 17) && ($gettok(%varrr,3,09) == -1) { if (%jkl2 == 1) { inc %jkl 1 | photox } | elseif (%jkl22 == 1) { inc %jkl 1 | photox2 } }

  ; ## si commande inconnue, cette commande est redirigée sur la fenetre de status 
  else { echo -s %varrr }
}

; ## socket pour obtenir les photos
on *:sockopen:mirsmailphoto:{
  sockwrite mirsmailphoto GET /photos/ $+ %pphoto HTTP/1.1 $+ $crlf $+ Accept: text/html, image/gif, image/jpeg, *; q=.2, */*; q=.2 $+ $crlf $+ User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Win32) $+ $crlf $+ Host: www.smail.fr $+ $crlf $+ Connection: Keep-Alive $+ $crlf $+ Cache-Control: no-cache $+ $crlf $+ Cookie: SMAILID= $+ %smailid1 $+ $crlf $+ $crlf
}

; ## lecture sur le socket photo
on *:sockread:mirsmailphoto:{
  if ($sockerr > 0) return
  :nextphoto
  sockread 800 &photo
  if ($sockbr == 0) return
  hadd -b MIRSmail photo &photo
  pphoto
  goto nextphoto
}

; ## socket pour parler anglais ou autre langue
on *:sockopen:mirsmail.english:{ 
  var %DATA.ENGLISH systran_id=Voila-fr&systran_charset=UTF-8&systran_lp= $+ %mirsmail.langue $+ &systran_text= $+ :021345: %eenglish
  sockwrite mirsmail.english POST /voila HTTP/1.1 $+ $crlf $+ Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/x-shockwave-flash, application/vnd.ms-powerpoint, application/vnd.ms-excel, application/msword, */* $+ $crlf $+ Referer: http://trans.voila.fr/voila $+ $crlf $+ Accept-Language: fr $+ $crlf $+ Content-Type: application/x-www-form-urlencoded $+ $crlf $+ Accept-Encoding: gzip, deflate $+ $crlf $+ User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; .NET CLR 1.1.4322) $+ $crlf $+ Host: trans.voila.fr $+ $crlf $+ Content-Length: $len(%DATA.ENGLISH) $+ $crlf $+ Connection: Keep-Alive $+ $crlf $+ Cache-Control: no-cache $+ $crlf $+ $crlf $+ %DATA.ENGLISH
}
; ## lecture sur le socket english
on *:sockread:mirsmail.english:{
  var %englishhh
  sockread -f %englishhh
  if (:021345: isin %englishhh) && (%nbv2 == 1) { write fg %englishhh | set %nbv 1 | set %nbv2 }
  elseif (%nbv == 1) { write fg %englishhh | .timer21 -h 1 50 mirsmail.langua }
}

; ## differents evenements
on *:ACTIVE:*: { set %mirsmailactive $active | set %mirsmailactive2 $gettok($gettok(%mirsmailactive,1,64),1,33) }
on *:sockclose:mirsmaila: { echo @MIRSmail! déconnecté :(  | echo 4 -s déconnecté :( | hfree MIRSmail | mirsmail.unset }
on *:INPUT:@MIRSmail!:{ if (%message.crypt == $null) { if (%mirsmail.english == $null) { if (%verlanxx == $null) { /message.salon $1- } | else { /message.verlanx $1- } } | else { /mirsmail.english $1- } } | else { /message.salon.crypt $1- } }
on *:INPUT:@*!_!privé:{ if (%message.crypt == $null) { if (%mirsmail.english == $null) { if (%verlanxx == $null) { if (%mirsmailactive != @MIRSmail!) && ($sock(mirsmaila) != $null) { /mirsmailpv $1- } | else { halt } } | else { /message.verlanx $1- } } | else { /mirsmail.english $1- } } | else { /mirsmailpv.crypt $1- } }
on *:CLOSE:@MIRSmail!:{ sockclose mirsmaila | hfree MIRSmail | window -c @MIRSmail! | mirsmail.unset }

; ## les alias
alias mirsmailjoin {
  set %mirsmailsalon $1-
  if ($chr(160) !isin $1-) { dline -l @MIRSmail! 1- $+ $line(@MIRSmail!,0,1) | sockwrite mirsmaila 5 $+ $chr(09) $+ $1- | sockwrite mirsmaila 7 $+ $chr(09) $+ $1- }
  else { hadd MIRSmail espace 5 $+ $chr(09) $+ $1- | hadd MIRSmail espace2 7 $+ $chr(09) $+ $1- | bset -t &as 1 1 | bset -t &as2 1 1 | $hget($null,$null,$hget(MIRSmail, espace, &as)) | $hget($null,$null,$hget(MIRSmail, espace2, &as2)) | breplace &as 160 32 | breplace &as2 160 32 | dline -l @MIRSmail! 1- $+ $line(@MIRSmail!,0,1) | sockwrite mirsmaila &as | sockwrite mirsmaila &as2 } 
}
alias mirsmailpv { if ($mid($1-,1,1) != /) { sockwrite mirsmaila 15 $+ $chr(09) $+ %mirsmailactive2 $+ $chr(09) $+ 0 $+ $chr(09) $+ $1- } | else { } }
alias message.salon { if ($mid($1-,1,1) != /) { sockwrite mirsmaila 10 $+ $chr(09) $+ 0 $+ $chr(09) $+ $1- } | else { } }

alias mirsmail.langua {
  var %lkj 1
  while (<br /> !isin $read(fg,%lkj)) {
    if (%lkj == 1) { set %eenglish2 $replacecs($mid($gettok($read(fg,%lkj),1,09),10,$len($gettok($read(fg,%lkj),1,09))), $+ $chr(195) $+ $chr(173)­,ì,$chr(195) $+ $chr(169),é,$chr(195) $+ $chr(168),è,$chr(195) $+ $chr(160),à,$chr(195) $+ $chr(167),ç,$chr(195) $+ $chr(162),â,$chr(195) $+ $chr(170),ê,$chr(195) $+ $chr(164),ä,$chr(195) $+ $chr(171),ë,$chr(195) $+ $chr(177),ñ,$chr(195) $+ $chr(178),ò,$chr(195) $+ $chr(179), $+ $chr(243) $+ ,$chr(195) $+ $chr(188),ü,$chr(195) $+ $chr(161),a,$chr(194) $+ $chr(191), $+ $chr(191) $+ ,$chr(194) $+ $chr(161), $+ $chr(161) $+ ,$chr(195) $+ $chr(159), $+ $chr(223) $+ ) }
    else { set %eenglish2 %eenglish2 $replacecs($read(fg,%lkj), $+ $chr(195) $+ $chr(173)­,ì,$chr(195) $+ $chr(169),é,$chr(195) $+ $chr(168),è,$chr(195) $+ $chr(160),à,$chr(195) $+ $chr(167),ç,$chr(195) $+ $chr(162),â,$chr(195) $+ $chr(170),ê,$chr(195) $+ $chr(164),ä,$chr(195) $+ $chr(171),ë,$chr(195) $+ $chr(177),ñ,$chr(195) $+ $chr(178),ò,$chr(195) $+ $chr(179), $+ $chr(243) $+ ,$chr(195) $+ $chr(188),ü,$chr(195) $+ $chr(161),a,$chr(194) $+ $chr(191), $+ $chr(191) $+ ,$chr(194) $+ $chr(161), $+ $chr(161) $+ ,$chr(195) $+ $chr(159), $+ $chr(223) $+ ) }
    inc %lkj 1
  }
  sockclose mirsmail.english
  if (%mirsmailactive == @MIRSmail!) {
    if (%english.pseudo2 == $null) { sockwrite mirsmaila 10 $+ $chr(09) $+ 0 $+ $chr(09) $+ %eenglish2 }
    else { sockwrite mirsmaila 10 $+ $chr(09) $+ 0 $+ $chr(09) $+ %english.pseudo $+ > %eenglish2 | set %english.pseudo2 }
  }
  elseif (!_!privé isin %mirsmailactive) { sockwrite mirsmaila 15 $+ $chr(09) $+ %mirsmailactive2 $+ $chr(09) $+ 0 $+ $chr(09) $+ %eenglish2 }
  set %eenglish2 | set %nbv | .remove fg
}

alias mirsmail.english {
  if ($mid($1-,1,1) != /) {
    set %nbv2 1
    if ($numtok($1-,62) > 1) {
      if ($mid($gettok($1-,2,62),1,1) == $chr(32)) { set %eenglish $gettok($replace($1-,é, $+ $chr(37) $+ C3 $+ $chr(37) $+ A9,è, $+ $chr(37) $+ C3 $+ $chr(37) $+ A8,à, $+ $chr(37) $+ C3 $+ $chr(37) $+ A0,ç, $+ $chr(37) $+ C3 $+ $chr(37) $+ A7,â, $+ $chr(37) $+ C3 $+ $chr(37) $+ A2,ê, $+ $chr(37) $+ C3 $+ $chr(37) $+ AA,ä, $+ $chr(37) $+ C3 $+ $chr(37) $+ A4,ë, $+ $chr(37) $+ C3 $+ $chr(37) $+ AB,ñ, $+ $chr(37) $+ C3 $+ $chr(37) $+ B1),2-,32) }
      else { set %eenglish $gettok($replace($1-,é, $+ $chr(37) $+ C3 $+ $chr(37) $+ A9,è, $+ $chr(37) $+ C3 $+ $chr(37) $+ A8,à, $+ $chr(37) $+ C3 $+ $chr(37) $+ A0,ç, $+ $chr(37) $+ C3 $+ $chr(37) $+ A7,â, $+ $chr(37) $+ C3 $+ $chr(37) $+ A2,ê, $+ $chr(37) $+ C3 $+ $chr(37) $+ AA,ä, $+ $chr(37) $+ C3 $+ $chr(37) $+ A4,ë, $+ $chr(37) $+ C3 $+ $chr(37) $+ AB,ñ, $+ $chr(37) $+ C3 $+ $chr(37) $+ B1),2-,62) }
      set %english.pseudo $gettok($1-,1,62)
      set %english.pseudo2 1
    }
    else { set %eenglish $replace($1-,é, $+ $chr(37) $+ C3 $+ $chr(37) $+ A9,è, $+ $chr(37) $+ C3 $+ $chr(37) $+ A8,à, $+ $chr(37) $+ C3 $+ $chr(37) $+ A0,ç, $+ $chr(37) $+ C3 $+ $chr(37) $+ A7,â, $+ $chr(37) $+ C3 $+ $chr(37) $+ A2,ê, $+ $chr(37) $+ C3 $+ $chr(37) $+ AA,ä, $+ $chr(37) $+ C3 $+ $chr(37) $+ A4,ë, $+ $chr(37) $+ C3 $+ $chr(37) $+ AB,ñ, $+ $chr(37) $+ C3 $+ $chr(37) $+ B1) }
    sockclose mirsmail.english
    sockopen mirsmail.english trans.voila.fr 80
  }
}
alias message.verlanx {
  if ($mid($1-,1,1) != /) {
    if ($numtok($1-,62) > 1) { var %verlan5 $gettok($1-,1,62) $+ > | var %verlan6 $gettok($1-,2-,62) }
    else { var %verlan6 $1- }
    var %verlan $numtok( $+ %verlan6 $+ ,32)
    var %verlan2 1
    var %verlanx
    var %verlanx2
    while (%verlan2 <= %verlan) {
      var %verlan3 $gettok( $+ %verlan6 $+ , $+ %verlan2 $+ ,32)
      var %verlan4 $len(%verlan3)
      while (%verlan4 >= 1) {
        var %verlanx %verlanx $+ $mid( $+ %verlan3 $+ , $+ %verlan4 $+ ,1)
        dec %verlan4 1
      }
      var %verlanx2 %verlanx2 %verlanx
      var %verlanx
      inc %verlan2 1 
    }
    if (%mirsmailactive == @MIRSmail!) { sockwrite mirsmaila 10 $+ $chr(09) $+ 0 $+ $chr(09) $+ %verlan5 %verlanx2 }
    elseif (!_!privé isin %mirsmailactive) { sockwrite mirsmaila 15 $+ $chr(09) $+ %mirsmailactive2 $+ $chr(09) $+ 0 $+ $chr(09) $+ %verlanx2 }
  }
}
alias message.salon.crypt { if ($mid($1-,1,1) != /) { var %ccrypt $replacecs($1-,a,Z,b,Y,c,X,d,W,e,V,f,U,g,T,h,S,i,R,j,Q,k,P,l,O,m,N,n,M,o,L,p,K,q,J,r,I,s,H,t,G,u,F,v,E,w,D,x,C,y,B,z,A,@,xc|,$chr(32),&,1,>>>,2,|<>,3,>c$,4,^-*,5,^>$,6,^->,7,^c>,8,^<>,9,|>>) | sockwrite mirsmaila 10 $+ $chr(09) $+ 0 $+ $chr(09) $+ HNZROXIBKG $+ & $+ : $+ & $+ %ccrypt } }
alias mirsmailpv.crypt { if ($mid($1-,1,1) != /) { var %ccrypt $replacecs($1-,a,Z,b,Y,c,X,d,W,e,V,f,U,g,T,h,S,i,R,j,Q,k,P,l,O,m,N,n,M,o,L,p,K,q,J,r,I,s,H,t,G,u,F,v,E,w,D,x,C,y,B,z,A,@,xc|,$chr(32),&,1,>>>,2,|<>,3,>c$,4,^-*,5,^>$,6,^->,7,^c>,8,^<>,9,|>>) | sockwrite mirsmaila 15 $+ $chr(09) $+ %mirsmailactive2 $+ $chr(09) $+ 0 $+ $chr(09) $+ HNZROXIBKG $+ & $+ : $+ & $+ %ccrypt } }
alias salon.officiels { sockwrite mirsmaila 4 $+ $chr(09) $+ 0 }
alias autres.salons { sockwrite mirsmaila 4 $+ $chr(09) $+ 1 }
alias rech.pseudo.ville { sockwrite mirsmaila 25 $+ $chr(09) $+ 0 $+ $chr(09) $+ $1- }
alias rech.pseudo.nom { sockwrite mirsmaila 25 $+ $chr(09) $+ 1 $+ $chr(09) $+ $1- }
alias vverif { if ($sock(mirsmaila) != $null) { } | else { echo -s Echec de la connexion, vérifiez que le login, le mot de passe, ou le pseudo sur le chat sont bons | sockclose mirsmail } }
alias pphoto {
  $hget($null,$null,$hget(MIRSmail, photo, &photo2))
  if ($bfind(&photo2,1,JFIF)) { write -c pphoto.jpg | bset -t &photo3 1 1 | bcopy &photo3 1 &photo2 $calc($bfind(&photo2,1,JFIF) - 6) 3000 | bwrite pphoto.jpg -1 -1 &photo3 }
  else { bwrite pphoto.jpg -1 -1 &photo2 | .timer472 -h 1 1000 ppphoto }
}
alias ppphoto { window -pf %photopseudo 710 1 $pic(pphoto.jpg).width $pic(pphoto.jpg).height | /drawpic %photopseudo 1 1 1 1 3000 2000 pphoto.jpg | .remove pphoto.jpg | if (%jkl2 == 1) { inc %jkl 1 | photox } | elseif (%jkl22 == 1) { inc %jkl 1 | photox2 } }
alias photox { if (%jkl <= %jkl3) { sockwrite mirsmaila 17 $+ $chr(09) $+ $gettok($line(@MIRSmail!,%jkl,1),1,40) } | else { set %jkl2 0 } }
alias photox2 { if (%jkl <= %jkl3) { sockwrite mirsmaila 17 $+ $chr(09) $+ $gettok($line(@recherche.pseudo,%jkl,0),1,40) } | else { set %jkl22 0 } }
alias mirsmail.unset { unset %nopv , %pseudo.ignore , %ffoistid , %smailid1 , %tid1 , %in.out , %uuutilisateur , %uutilisateur , %ssalon , %sssalon , %varrr , %photopseudo , %pphoto , %jkl , %jkl2 , %jkl22 , %jkl3 , %ffoismirsmail , %tofo , %fotox , %force.join , %force.join2 , %nopv.contact2 , %nopv.contact , %verlanxx , %message.crypt , %eenglish , %eenglish2 , %mirsmail.english , %mirsmail.langue , %english.pseudo2 , %english.pseudo , %nbv , %nbv2 , %pseudo.crypt }

; ## les menus :)
menu @*!_!PHOTO {
  dclick:{ close -@ %mirsmailactive }
  Enregistrer la photo:{ var %totopho $?="Entrer le nom du fichier (Répertoire de mirc par défaut)" | if (%totopho) { /drawsave $active %totopho $+ .jpg } }
  Visualiser son profil:{ var %visu.profil %mirsmailactive2 | var %visu.profil2 http://www.smail.fr/rencontres/visuprofil.php?membre= $+ %visu.profil | if (%visu.profil != $null) { run %visu.profil2 } }
  Fermer cette fenêtre:{ close -@ %mirsmailactive }
}
menu @!_!contacts {
  dclick:{ if ($line(@!_!contacts,$1,1)) { window -ekf @ $+ $line(@!_!contacts,$1,1) $+ !_!privé 10 1 673 400 | sockwrite mirsmaila 17 $+ $chr(09) $+ $line(@!_!contacts,$1,1) } }
  Nopv
  .Ne plus accepter les messages privés:{ set %nopv 1 | echo 4 @MIRSmail! Statut: Vous n'acceptez plus les messages privés }
  .Réaccepter les messages privés:{ set %nopv 0 | echo 4 @MIRSmail! Statut: Vous acceptez maintenant les messages privés }
  .Toujours autoriser mes contact à m'envoyer des messages privés:{ set %nopv.contact2 1 | echo 4 @MIRSmail! Statut: Vous autorisez vos contacts a vous envoyer des messages privés }
  .Ne plus autoriser, même mes contacts, à m'envoyer un message privé:{ set %nopv.contact2 0 | echo 4 @MIRSmail! Statut: Vous n'autorisez plus, même vos contacts, a vous envoyer des messages privés }
  S'absenter
  .S'absenter:{ var %aabsence $?="Message d'absence?(si pas de message clicker juste sur ok)" | if (!%aabsence) { sockwrite mirsmaila 20 $+ $chr(09) $+ 1 } | else { sockwrite mirsmaila 2