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 !

Sujet : @windows (whois [ Divers / Général ] (Burner_king)

jeudi 1 novembre 2007 à 02:14:25 | @windows (whois

Burner_king

bonjour donc voila je cherche quelq'un qui peut m'aider ou me faire ...
Donc ce que je voudrais ces que quand une personne join un salon sont whois sois fais automatiquement et que le whois ce rende dans la fenetre @windows qui sintitulerais @whois voila j'espere avoir été claire merci de votre comprehention


 

jeudi 1 novembre 2007 à 10:44:03 | Re : @windows (whois

TropNul

Réponse acceptée !
; WHOIS
; TropNul:01.11.2007

On !*:Join:*:{
  WhoisInit | WhoisWin
  If !$hget(whois,$nick) {
    .Timer 1 5 Whois $nick $nick
    HAdd whois $nick whoising
  }
}
On *:Quit:{ WhoisDel $nick }

On *:Connect:{ WhoisInit | WhoisWin }
On *:Load:{ WhoisInit | WhoisWin }
On *:Start:{ WhoisInit | WhoisWin }

On *:Exit:WhoisFree
On *:DisConnect:WhoisFree
On *:UnLoad:WhoisFree

RAW 301:*:{ Echo $W.Targ Away: $2 $3- | Halt }
RAW 311:*:{
  Echo $W.Targ Whois on $2
  Echo $W.Targ Nickname: $2 Realname: $6-
  Echo $W.Targ Address: $+($3,@,$4) $iif($WhoisClones($2),Clones $+($chr(40),$chr(32),$active,$chr(32),$chr(41)) $+ : $ifmatch)
  Halt
}
RAW 312:*:{ Echo $W.Targ Server: $3 $4- | Halt }
RAW 313:*:{ Echo $W.Targ IrcOp: Yes RawMsg: $1- | Halt }
RAW 317:*:{
  Echo $W.Targ Connected on: $asctime($4,dddd dd mmmm yyyy) At $asctime($4,HH:nn:ss)
  Echo $W.Targ Connection time: $duration($calc($ctime - $4)) Idle: $duration($3)
  Halt
}
RAW 318:*:{
  Echo $W.Targ End of Whois on $2
  WhoisDel $2 | Halt
}
RAW 319:*:{
  Var %Chans = $3- , %iCh = 1 , %NComChn = $comchan($2,0) , %NChn = $numtok(%Chans,32)
  While (%iCh <= %NChn) {
    If (s isin $chan($remove($gettok(%Chans,%iCh,32),@,+)).mode) {
      %Chans = $replace(%Chans,$gettok(%Chans,%iCh,32),S $+ $gettok(%Chans,%iCh,32))
    }
    Inc %iCh
  }
  Var %WhoIsCommChn = $chr(40) $+ %NChn $+ $chr(58) $+ $iif(%NComChn == 0,$v2,$v1) $+ $chr(41)
  Echo $W.Targ Channels %WhoIsCommChn $+ : $WhoisChnCommB($2,$WhoisChnLst(%Chans))
  Halt
}
RAW 320:*:{ Echo $W.Targ Real Host: $3 | Halt }
RAW 327:*:{ Echo $W.Targ Host behind proxy: *!*@ $+ $7 | Halt }
RAW 328:*:{ Echo $W.Targ Host behind proxy: *!*@ $+ $8 | Halt }
RAW 378:*:{ Echo $W.Targ Address $+($chr(40),-x,$chr(41),:)) $6- | Halt }
RAW 379:*:{ Echo $W.Targ Modes: $6- }
RAW 401:*:{
  Echo $W.Targ $2 Not Connected
  WhoisDel $2 | Halt
}

Alias -l WhoisDel { If $hget(whois,$1) { HDel whois $1 } }
Alias -l WhoisInit { If !$hget(whois) { HMake whois } }
Alias -l WhoisFree { If $hget(whois) { HFree whois } }
Alias -l WhoisWin { If !$window(@whois) { Window -knz @whois } }
Alias -l W.Targ { Return -t @whois }

; Locate Clones on $active

Alias -l WhoisClones {
  Var %i = 1 , %nck = $1 , %nicks , %addr = $address(%nck,2)
  If ($active ischan) { Var %chn = $v1 }
  Else { Return 0 }
  Var %ncl = $ialchan(%addr,%chn,0)
  If (%ncl < 2) { Return 0 }
  Else {
    While (%i <= %ncl) {
      %nicks = $iif(%nicks,%nicks $+($chr(3),12,>,$chr(3))) $gettok($ialchan(%addr,%chn,%i),1,33)
      Inc %i
    }
    Return $+($chr(3),12,%ncl,$chr(3)) %nicks
  }
}


; Format Channel List

Alias -l WhoisChnLst {
  Var %ChnLs = $1- , %ChnFin = $null | Var %ChnEnd = $numtok(%ChnLs,32) , %ChnStr = 1
  While (%ChnStr <= %ChnEnd) {
    Var %Chan = $gettok(%ChnLs,%ChnStr,32)
    NoOp $regex(%Chan,/^(([^\x23]*)(\x23[^$]*))$/i)
    If $regml(2) {
      Var %ChnFin = %ChnFin $+ $chr(32) $+ $replace($regml(2),@,$+($chr(3),04,@,$chr(3)),+,$+($chr(3),12,+,$chr(3)),S,$+($chr(3),14,S,$chr(3))) $+ $regml(3)
    }
    Else { Var %ChnFin = %ChnFin $+ $chr(32) $+ %Chan }
    Inc %ChnStr
  }
  Return %ChnFin
}

; 'Highlight' Common Channels

Alias -l WhoisChnCommB {
  Var %ChnLs = $2- , %Nck = $1 | Var %ChnEnd = $comchan(%Nck,0) , %ChnStr = 1
  If (%ChnEnd > 0) {
    While (%ChnStr <= %ChnEnd) {
      Var %ChnCom = $comchan(%Nck,%ChnStr)
      %ChnLs = $regsubex(%ChnLs,/( $+ %ChnCom $+ (\s|$))/i,$+($chr(3),05,\1,$chr(3)))
      Inc %ChnStr
    }
  }
  Return %ChnLs
}

; Date Convertion

Alias -l DayMonthConv {
  Var %Day = $asctime($1,dddd) , %Mon = $asctime($1,mmmm)
  Var %DayEn = Monday|Tuesday|Wednesday|Thursday|Friday|Saturday|Sunday
  Var %DayFr = Lundi|Mardi|Merdredi|Jeudi|Vendredi|Samedi|Dimanche
  Var %MonEn = January|February|March|April|May|June|July|August|September|October|November|December
  Var %MonFr = Janvier|Février|Mars|Avril|Mai|Juin|Juillet|Août|Septembre|Octobre|Novembre|Décembre
  If $regex(%Day,/( $+ %DayEn $+ )/) { %Day = $gettok(%DayFr,$findtok(%DayEn,$regml(1),1,124),124) }
  If $regex(%Mon,/( $+ %MonEn $+ )/) { %Mon = $gettok(%MonFr,$findtok(%MonEn,$regml(1),1,124),124) }
  Return %Day $asctime($1,dd) %Mon $asctime($1,yyyy)
}

jeudi 1 novembre 2007 à 13:13:27 | Re : @windows (whois

uaip

TropNul t'a fait un whois de luxe, là... ^^ j'espère au moins que c'était en mIRC que tu le voulais (non précisé dans ta demande).
sinon TropNul, t'aurais pas pu faire un truc plus simple ? sans htables. genre, quand le gars entre sur le salon, si la fenetre @whois n'est pas ouverte, ca l'ouvre, et après tu fais un whois "classique" avec echo @whois au lieu de echo -a. non ?

Honorine <3 /°/ www.uaipcreations.ovh.org

jeudi 1 novembre 2007 à 14:02:47 | Re : @windows (whois

TropNul

Bah, la table de hashage est importante pour ce que j'en ai fait. Elle contient le pseudo qui est en processus de whois tant que le whois n'est pas termine. Cela va ainsi permettre de ne pas rewhois cette personne si elle join un autre salon commun alors qu'on a deja lance un whois sur elle. Ca aurait pu se faire avec des variables, je te l'accorde. Mais je prefere les tables de hashage.

Pour la commande < /echo >, il y'a un alias qui contient la cible de cette commande. Le voici:

Alias -l W.Targ { Return -t @whois }

Il suffit de configurer cet alias et hop.

[quote]
genre, quand le gars entre sur le salon, si la fenetre @whois n'est pas ouverte, ca l'ouvre,
[/quote]

Je fais cela avec l'alias suivant:
Alias -l WhoisWin { If !$window(@whois) { Window -knz @whois } }

J'aimerais aussi rajouter que je n'ai fait que reprendre le systeme de whois que j'avais dans mon script. J'y ai rajoute la gestion pour l'evenement join et l'utilisation de tables de hashage pour stocker les pseudonymes. Cela pour dire, que je n'ai pas de merite de l'avoir fait sur le coup de la question du forum ;), bien que c'est bien moi qui avait fait ce systeme de whois auparavant lol.

Je me rends aussi compte que j'ai inclus un alias en trop: " Alias -l DayMonthConv { ". Mais comme diraient certain(e)s, ca peut servir. :)

jeudi 1 novembre 2007 à 14:17:34 | Re : @windows (whois

ISoKa

moi c'ke je kiff c'est si le mec essai de relire la source avant de la poser dans les remotes :x huhuhu. par contre dans le cas d'un retour d'un netsplit faire un whois on join ca va poser des ptis probs à mon avis :)

ISoKa

jeudi 1 novembre 2007 à 14:27:57 | Re : @windows (whois

uaip

TropNul je t'accorde que ton code contient tout ce que j'ai dit. Mais ce que je parle se code en quelques lignes.
- vérification de l'existence de la fenetre et/ou ouverture (1 ligne)
- whois classique (environ 10 lignes)
ca éviterai un code aussi 'long'. Sinon je suis tout a fait d'accord sur le fait qu'il a l'air (pour ce que j'ai 'bien' lu) complet.

Honorine <3 /°/ www.uaipcreations.ovh.org

jeudi 1 novembre 2007 à 14:49:01 | Re : @windows (whois

ISoKa

[/Avi trés personel]
en meme temps si il en avait un tout fait en remote perso j'aurai un peu fai pareil, un gentil C/C plutot que se prendre le choux à recoder
[/Fin avi trés personel]

ISoKa

jeudi 1 novembre 2007 à 14:49:37 | Re : @windows (whois

TropNul

Exact uaip. Le truc c'est que chacun est libre de le modifier autant qu'il/elle le veut. Pour la longueur, il suffit d'enlever les alias et tout afficher normalement (j'aurais du le faire :|).

Bonne remarque isoka. Si vous me le demandez, je le commenterais ;). Tout est une question de temps. La j'en ai. ^^ Pour le cas du netsplit, faudra inclure un detecteur de netsplit (ou tout simplement un anti mass join) ... et la c'est uaip qui me dira que ca fera trop long .. :s

/me soupir :o)

Bande de perfectionnistes ! aaah ces codeurs (les vrai(e)s)

jeudi 1 novembre 2007 à 23:28:13 | Re : @windows (whois

Burner_king

merci beaucoup a tous et particulierement a celui qu'il me la fais je voyait cela beaucoup plus simple encor merci





vendredi 2 novembre 2007 à 00:55:24 | Re : @windows (whois

uaip

lol, je te l'ai dit, TropNul t'a fait un truc de Luxe :) [tant mieux]
sinon, ué, apparament je suis un des seuls a posséder un script merdique codé "a l'arrache" ^^ m'enfin, il en faut bien des cons, hein, il en faut bien !
bonne nuit :)

Honorine <3 /°/ www.uaipcreations.ovh.org


1 2

Cette discussion est classé dans : windows, whois


Répondre à ce message

Sujets en rapport avec ce message

pkoi ca marche pas ??? :x [ par ZH83 ] ;pour tester faites un /who babylon (par ex);reponse a un whoraw 352:*:{ if (!%who.num) { /unset %who* | /set %who.num 1 } /set %who.id[ $+ %who.nu reponse a un whois [ par Gopu ] gopuSalut , je cherhe un moyen de repondre par une notice a une personne ki me whois. C inutile mais ca peut etre marrant, non ? bon je suis nouveau a joindre tous les salon dun whois [ par HatMan ] svpjaimeradre par une seul actiontous les salon dun whois dune personnemerci de maider urgeament Raw ? [ par Hikage ] Y a-t-il moyen d'envoye un message au server, pour qu'il renvoie seulement une seule ligne d'un whois.Je veux en fait, recuperer seulement l'idle time besoin d'aide [ par pedronze ] Voila je n'arrive pas a écrire un "/whois nick" dans une fenetre que l'on crée a cette effet.Pouvez vous me donner un conseil SVP ?Voici ce que j'ai f whois on join [ par XaNa666 ] alor en fet jaimerai lor d'un join sur #dizaine avoir un /whois de la persone ki arrive mai kil saffice dan #snaxlor dun join g sa mé je voudré en plu auth-host [ par Lonsdale^ ] re ^^voila j'utilise quakenet et quand on me whois ou bien que je le fait moi meme j'ai cela:[Unity^Bestial] is Bestial@SO-Bestial.users.quakenet.org raw did a /whois on you [ par wadamuffin ] Je suis admin sur un serveur irc, et je cherche a recevoir sur une fenetre active juste se message : [22:49:07] -irc.xxxxxx.xxx- *** Cupidon (betatest Réponse au raw 319 [ par babass ] Voila je voudrais que lors d'un whois dans la reponse au raw 319 (chans où est présent $nick) soit séparés les chans où il est op, halfop, voice et au @windows [ par darkyojimbo2 ] Je Suis en train de faire un alias et le résultat de l'alias devra s'afficher dans une @window mais malheureusement la fenetre qui s'affiche et beauco


Nos sponsors

Sondage...

CalendriCode

Novembre 2008
LMMJVSD
     12
3456789
10111213141516
17181920212223
24252627282930

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,452 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.