Connecter ses sockets par bnc

Contenu du snippet

En faite depuis quelques temps, comme je m'amuse un peut avec les sockets et proxy, j'ai essayé de faire en sorte de pouvoir connecter des bot sockets par un BNC.
Il me semble pas avoir vu des sources comme celle là donc c'est deja ca lol. Ensuite je précise bien que: CETTE SOURCE N'EST EN AUCUN CAS UN BOT SOCKET EN ELLE MEME.
C'est juste un petit plus possible pour vos propres bots sockets si vous possedez un bouncer. N'ayant à ma disposition qu'un ezbBounce je ne sai pas si ca marche tel quel sur psyBNC mais je ne pense pas que les modifs à faire soient enormes, au pire juste une syntaxe je pense.
Si à l'occase j'ai un psyBNC sous la main je ferai un mode ezb et un mode psyBNC.
Donc voila le tout est fait en dialog pour essayer de rendre ca moin austere et plus "intuitif". Pas de connaissances ou prérequis particuliers. Ha oui une chose pas mal de sockets ont des actions indispensables dans leur "sockopen". Si c'est le cas, j'ai mi dans le dernier onglet un moyen de faire quand meme ces actions. Il vous suffit de C/C ce qu'il y a dans votre "on sockopen" dans l'invite qui vous est proposé.
C'est que mon 2snd poste d'une source lol soyez pas trop dur :x. il se peut qu'il y ai des bugs j'vien d'le faire là rapidement :x

Source / Exemple :


on 1:LOAD:{ echo -a 4 Vous installez Socket-By-BNC de ISoKa :o) }
on 1:unload:{ echo -a 4 Vous désinstallez Socket-By-BNC de ISoKa :o) | unset %proxbnc.* }
menu menubar {
  -
  Socket-By-Bnc:dialog -m Socket-By-Bnc Socket-By-Bnc
  -
}
dialog Actionslancbnc {
  title "Actions Lancement Socket"
  size -1 -1 184 162
  option dbu
  edit "", 1, 3 5 177 129, multi return autohs autovs
  button "Enregistrer", 2, 41 144 37 12
  button "Annuler", 3, 103 144 37 12, ok
}
ON *:DIALOG:Actionslancbnc:sclick:2:{
  if ($isfile($+(Socket-By-Bnc\,%proxbnc.nomfichierpoursave,.txt)) == $false) { write $+(Socket-By-Bnc\,%proxbnc.nomfichierpoursave,.txt) create-file }
  write -c $+(Socket-By-Bnc\,%proxbnc.nomfichierpoursave,.txt)
  .fopen proxbnc.alias $+(Socket-By-Bnc\,%proxbnc.nomfichierpoursave,.txt) | var %proxbnc.nbligneajout $did(Actionslancbnc,1).lines | var %proxbnc.cmpt 1
  .fwrite -n proxbnc.alias alias commandeconfigsocketproxy $chr(123) 
  while (%proxbnc.nbligneajout > %proxbnc.cmpt) {
    .fseek -l proxbnc.alias $calc(%proxbnc.cmpt +1) | .fwrite -n proxbnc.alias $did(Actionslancbnc,1,%proxbnc.cmpt)
    inc %proxbnc.cmpt
  }
  .fwrite -n proxbnc.alias jeviremonaliasnow | .fwrite proxbnc.alias $chr(125)
  ajouteritemdialbnc %proxbnc.nomfichierpoursave file 49
  .fclose proxbnc.alias | dialog -x Actionslancbnc Actionslancbnc | unset %proxbnc.nomfichierpoursave
}
dialog Socket-By-Bnc {
  title "Socket-By-Bnc (ezb) By ISoKa"
  size -1 -1 192 159
  option dbu
  button "Fermer", 4, 160 131 27 24, ok
  tab "BNC", 25, 3 1 185 125
  button "Aj.", 6, 12 54 24 12, tab 25
  button "Suppr.", 7, 84 54 24 12, tab 25
  button "Aj.", 8, 121 54 24 12, tab 25
  button "Suppr.", 9, 154 54 24 12, tab 25
  button "Aj.", 11, 12 102 24 12, tab 25
  box "Votre BNC", 2, 6 20 178 100, tab 25
  button "Suppr.", 10, 66 102 24 12, tab 25
  button "Aj.", 12, 102 102 24 12, tab 25
  button "Suppr.", 13, 155 102 24 12, tab 25
  box "Server", 18, 9 28 105 42, tab 25
  box "Port", 19, 117 28 64 42, tab 25
  box "Login", 20, 9 72 84 44, tab 25
  box "Mot de passe", 21, 97 72 84 44, tab 25
  combo 56, 12 81 78 50, tab 25 size drop
  combo 57, 102 82 76 50, tab 25 size drop
  combo 58, 121 38 57 50, tab 25 size drop
  combo 59, 12 37 98 50, tab 25 size drop
  tab "Connection", 26
  box "Realname", 23, 98 75 83 41, tab 26
  box "Pseudo", 22, 10 75 83 41, tab 26
  box "Server IRC", 5, 7 18 177 103, tab 26
  button "Aj.", 14, 14 100 24 12, tab 26
  button "Suppr.", 15, 64 100 24 12, tab 26
  button "Aj.", 16, 103 100 24 12, tab 26
  button "Suppr.", 17, 154 100 24 12, tab 26
  button "Aj.", 34, 14 56 24 12, tab 26
  button "Suppr.", 35, 86 56 24 12, tab 26
  button "Aj.", 36, 123 56 24 12, tab 26
  button "Suppr.", 37, 154 56 24 12, tab 26
  box "Port", 39, 118 28 63 43, tab 26
  box "Server", 38, 10 28 105 43, tab 26
  combo 52, 14 84 74 50, tab 26 size drop
  combo 53, 103 85 75 50, tab 26 size drop
  combo 54, 14 38 96 50, tab 26 size drop
  combo 55, 123 38 55 50, tab 26 size drop
  tab "Noms Bouncer\Socket", 27
  text "Mettre Nom du Socket qui figure dans les remotes", 24, 37 79 128 8, tab 27 center
  button "Aj.", 28, 62 106 24 12, tab 27
  button "Suppr.", 29, 105 106 24 12, tab 27
  box "Votre Socket\Bot", 1, 7 70 177 50, tab 27
  box "Votre Bouncer", 40, 7 18 176 49, tab 27
  text "Mettre nom du Bouncer ( ex: ezb)", 41, 53 25 92 8, tab 27 center
  button "Aj.", 42, 61 52 24 12, tab 27
  button "Suppr.", 43, 104 52 24 12, tab 27
  combo 50, 62 90 67 50, tab 27 size drop
  combo 51, 62 36 67 50, tab 27 size drop
  tab "Actions Connec", 33
  box "Actions associée", 3, 7 56 177 62, tab 33
  check "oui", 44, 49 31 50 10, tab 33
  check "non", 45, 114 31 50 10, tab 33
  box "Effectuer actions préprogrammées au lancment socket ?", 46, 7 19 177 33, tab 33
  button "Aj.", 47, 49 101 24 12, tab 33
  button "Suppr.", 48, 120 101 24 12, tab 33
  combo 49, 49 70 95 50, tab 33 size drop
  button "Voir", 60, 84 101 24 12, tab 33
  box "Actions", 30, 3 130 78 25
  button "Connecter", 31, 5 139 37 12
  button "Deconnecter", 32, 43 139 36 12
  box "Pré-Config", 61, 83 130 75 25
  combo 62, 85 139 54 50, size drop
  button "Sup.", 63, 140 139 17 12
}
alias sidibnc { didtok Socket-By-Bnc $2 124 [ % $+ [ proxbnc. $+ [ $1 ] ] ] }
alias additbnc { set % $+ [ proxbnc. $+ [ $2 ] ] $addtok( [ % $+ [ proxbnc. $+ [ $2 ] ] ] ,$1,124) | did -a Socket-By-Bnc $3 $1 }
alias delitbnc { set % $+ [ proxbnc. $+ [ $2 ] ] $remtok( [ % $+ [ proxbnc. $+ [ $2 ] ] ] ,$1,124) | did -d Socket-By-Bnc $3 $did($3).sel }
ON *:DIALOG:Socket-By-Bnc:*:*:{
  if ($devent == init) { did -c Socket-By-Bnc 45 | did -u Socket-By-Bnc 44 | sidibnc listepreconf 62 | sidibnc serverbnc 59 | sidibnc portbnc 58 | sidibnc mdp 57 | sidibnc login 56 | sidibnc serverirc 54 | sidibnc portirc 55 | sidibnc pseudsocket 52 | sidibnc realsocket 53 | sidibnc nombnc 51 | sidibnc nomsocket 50 | sidibnc file 49 }
  if ($devent == sclick) {
    if ($regex($did,/(3.)/i)) { 
      if ($did == 31) { 
        if ($did(44).state == 1) { set -u40 %proxbnc.applalias oui }
        contobnc $did(59).seltext $did(58).seltext | set -u60 %proxbnc.tmplogin $did(56).seltext | set -u60 %proxbnc.tmppass $did(57).seltext | set -u60 %proxbnc.tmpnick $did(52).seltext | set -u60 %proxbnc.tmpreal $did(53).seltext | set -u60 %proxbnc.tmpserver $did(54).seltext | set -u60 %proxbnc.tmpport $did(55).seltext | set -u60 %proxbnc.tmpsocketname $did(50).seltext
        if (!% $+ [ proxbnc.preconfig $+ [ %proxbnc.tmpsocketname ] ] ) && ($?!="On enregistre cette config ?" == $true) { 
          set % $+ [ proxbnc.preconfig $+ [ %proxbnc.tmpsocketname ] ] [ [ $did(59).seltext ] $+ [ $chr(94) ] $+ 59 $+ [ $chr(124) ] $+ [ $did(58).seltext ] $+ [ $chr(94) ] $+ 58 $+ [ $chr(124) ] $+ [ $did(56).seltext ] $+ [ $chr(94) ] $+ 56 $+ [ $chr(124) ] $+ [ $did(57).seltext ] $+ [ $chr(94) ] $+ 57 $+ [ $chr(124) ] $+ [ $did(52).seltext ] $+ [ $chr(94) ] $+ 52 $+ [ $chr(124) ] $+ [ $did(53).seltext ] $+ [ $chr(94) ] $+ 53 $+ [ $chr(124) ] $+ [ $did(54).seltext ] $+ [ $chr(94) ] $+ 54 $+ [ $chr(124) ] $+ [ $did(55).seltext ] $+ [ $chr(94) ] $+ 55 $+ [ $chr(124) ] $+ [ $did(50).seltext ] $+ [ $chr(94) ] $+ 50 $+ [ $chr(124) ] $+ [ $did(44).state ] ]
          additbnc %proxbnc.tmpsocketname listepreconf 62
        }
      }
      elseif ($did == 32) { 
        if (!$did(50).seltext) { echo -a 4 Veuillez selectionner un nom de socket au préalable svp | halt }
        sockwrite -n $did(50).seltext $did(51).seltext disconnect 
        .timer 1 5 sockclose $did(50).seltext
      }
      elseif ($did == 34) { additbnc $$?="Rajouter Un Server" serverirc 54 }
      elseif ($did == 35) { delitbnc $did(54).seltext serverirc 54 }
      elseif ($did == 36) { additbnc $$?="Rajouter Un Port" portirc 55 }
      elseif ($did == 37) { delitbnc $did(55).seltext portirc 55 }
    }
    elseif ($regex($did,/(6.)/i)) { 
      if ($did == 62) { 
        var %i 1 
        while ( [ $numtok( [ % $+ [ proxbnc.preconfig $+ [ $did(62).seltext ] ] ] ,124) ] > %i) { did -c Socket-By-Bnc $gettok($gettok( [ % $+ [ proxbnc.preconfig $+ [ $did(62).seltext ] ] ] ,%i,124),2,94) $didwm(Socket-By-Bnc, [ $gettok($gettok( [ % $+ [ proxbnc.preconfig $+ [ $did(62).seltext ] ] ] ,%i,124),2,94) ] , [ $gettok($gettok( [ % $+ [ proxbnc.preconfig $+ [ $did(62).seltext ] ] ] ,%i,124),1,94) ] ) | inc %i }
        if (%i == $numtok( [ % $+ [ proxbnc.preconfig $+ [ $did(62).seltext ] ] ] ,124)) && ($gettok( [ % $+ [ proxbnc.preconfig $+ [ $did(62).seltext ] ] ]  ,%i,124) == 1) { did -c Socket-By-Bnc 44 | did -u Socket-By-Bnc 45 }         
      }
      elseif ($did == 60) { 
        if (!$did(49).seltext) { echo -a 4 Veuillez selectionner un nom de fichier au préalable svp | halt }
        dialog -m Actionslancbnc Actionslancbnc | set %proxbnc.nomfichierpoursave $did(49).seltext
        var %proxbnc.lignes $lines($+(Socket-By-Bnc\,$did(49).seltext,.txt)) | var %proxbnc.cmpt 2
        .fopen proxbnc.affich $+(Socket-By-Bnc\,$did(49).seltext,.txt)
        while ($calc(%proxbnc.lignes -2) >= %proxbnc.cmpt) {
          .fseek -l proxbnc.affich %proxbnc.cmpt | did -a Actionslancbnc 1 $fread(proxbnc.affich) $crlf
          inc %proxbnc.cmpt
        }
        .fclose proxbnc.affich
      }
      elseif ($did == 63) { unset % $+ [ proxbnc.preconfig $+ [ $did(62).seltext ] ] | delitbnc $did(62).seltext listepreconf 62 }
    }
    elseif ($regex($did,/(1.)/i)) { 
      if ($did == 15) { delitbnc $did(52).seltext pseudsocket 52 }
      elseif ($did == 14) { additbnc $$?="Rajouter Un Pseudo" pseudsocket 52 }
      elseif ($did == 16) { additbnc $$?="Rajouter Un Realname" realsocket 53 }
      elseif ($did == 17) { delitbnc $did(53).seltext realsocket 53 }
      elseif ($did == 11) { additbnc $$?="Rajouter Un Login" login 56 }
      elseif ($did == 10) { delitbnc $did(56).seltext login 56 }
      elseif ($did == 12) { additbnc $$?="Rajouter Un Mot De Passe" mdp 57 }
      elseif ($did == 13) { delitbnc $did(57).seltext mdp 57 }
    }
    elseif ($regex($did,/(2.)/i)) { 
      if ($did == 28) { additbnc $$?="Rajouter Un Nom" nomsocket 50 }
      elseif ($did == 29) { delitbnc $did(50).seltext nomsocket 50 }
    }
    elseif ($regex($did,/(4.)/i)) { 
      if ($did == 44) { did -c Socket-By-Bnc 44 | did -u Socket-By-Bnc 45 }
      elseif ($did == 45) { did -c Socket-By-Bnc 45 | did -u Socket-By-Bnc 44 }
      elseif ($did == 42) { additbnc $$?="Rajouter Un Nom" nombnc 51 }
      elseif ($did == 43) { delitbnc $did(51).seltext nombnc 51 }
      elseif ($did == 47) {
        if (!$did(50).seltext) { echo -a 4 Veuillez selectionner un nom de socket au préalable svp | halt }
        dialog -m Actionslancbnc Actionslancbnc | set %proxbnc.nomfichierpoursave $did(50).seltext
      }
      elseif ($did == 48) { delitbnc $did(49).seltext file 49 }
    }
    elseif ($regex($did,/(^(\d)$)/i)) { 
      if ($did == 6) { additbnc $$?="Rajouter Un Server" serverbnc 59 }
      elseif ($did == 7) { delitbnc $did(59).seltext serverbnc 59 }
      elseif ($did == 8) { additbnc $$?="Rajouter Un Port" portbnc 58 }
      elseif ($did == 9) { delitbnc $did(58).seltext portbnc 58 }
    }
  }
}
alias contobnc { sockopen proxybnc $1 $2 | echo -a 4 Connection au BNC }
on *:sockopen:proxybnc:{ 
  if $sockerr { echo -a 4 Impossible de se connecter au BNC | sockclose proxybnc | return }
  .timer 1 10 jattenunpeusicarame
}
alias jattenunpeusicarame { 
  sockwrite -n proxybnc login %proxbnc.tmplogin %proxbnc.tmppass
  sockwrite -n proxybnc NICK %proxbnc.tmpnick | sockwrite -n proxybnc USER $rand(a,z) $+ $rand(a,z) $+ $rand(a,z) "" "localhost" : %proxbnc.tmpreal
  .timer 1 10 ptiteattentepourlaforme
}
alias ptiteattentepourlaforme {  
  sockrename proxybnc %proxbnc.tmpsocketname | sockmark %proxbnc.tmpsocketname %proxbnc.tmpnick
  sockwrite -n %proxbnc.tmpsocketname CONN %proxbnc.tmpserver %proxbnc.tmpport | echo -a 4 Connection au server de tchat
  .load -rs  $+(Socket-By-Bnc\,%proxbnc.tmpsocketname,.txt)
  if (%proxbnc.applalias == oui) {  .timer 1 10 commandeconfigsocketproxy }
}
alias jeviremonaliasnow { .unload -rs $+(Socket-By-Bnc\,%proxbnc.tmpsocketname,.txt) }

Conclusion :


vous mettez ce code dans un joli .txt que vous mettez dans un dossier que vous allez nommer "Socket-By-Bnc" lui mm se trouvant à la racine de votre mirc. vous loadez et pour le lancer c'est dans le menu bar. Voila, enjoy :o)

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.