Irctelnet

Contenu du snippet

Client de connection sur serveur (usage expérimental) permettant de se connecter à des serveurs FTP, IRC, POP, SMTP...

Source / Exemple :


;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; Lancement par /irctelnet <host> <port> ;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

alias irctelnet {
  if (($1 == $null) && ($2 == $null)) {
    set %server $?="Host ou adresse IP du serveur ?"
    set %portserv $?="Port du serveur ?"
    set %quidonc $?="Pseudo ?"
  }
  if (($1 != $null) && ($2 != $null)) {
    set %server $1
    set %portserv $2
    set %quidonc $3
  }
  window -e @IRC | titlebar @IRC Session IRCTELNET : %server sur port %portserv
  sockclose irctelnet*
  sockopen irctelnet %server %portserv

}

on *:sockopen:irctelnet:{
  if ($sockerr > 0) { 
    aline -ph 4 @IRC Connection impossible sur %server sur le port %portserv
    return
  }
  else {
    aline -ph 3 @IRC Connection établie avec %server sur le port %portserv
    if (%portserv == 6667) {
      sockwrite -n irctelnet USER Lycos U U : IrcTelnet
      sockwrite -n irctelnet NICK %quidonc
      if (%quidonc == $null) sockwrite -n irctelnet NICK IRCtelnet
    }
  }
}

on *:sockclose:irctelnet:{
  aline -ph 4 @IRC Fermeture IRCTELNET sur %server sur le port %portserv
}

on *:sockread:irctelnet:{
  if ($sockerr > 0) { return }
  :rect
  sockread %ircdata
  if ($sockbr == 0) { return }
  if (%ircdata != $null) {
    aline -ph 1 @IRC %ircdata

    if (%ircdata == PING :irc04.icq.com) { sockwrite -n irctelnet PONG :irc04.icq.com 
    aline -ph 9 @IRC PONG :irc04.icq.com }

    if (%ircdata == PING : $+ %server) { sockwrite -n irctelnet PONG : $+ %server 
    aline -ph 9 @IRC PONG : $+ %server }
    if (%server == 212.68.194.235) {
      if (%ircdata == PING :infocenter.net) { sockwrite -n irctelnet PONG :infocenter.net 
      aline -ph 9 @IRC PONG :infocenter.net }
    }
    goto rect
  }

Conclusion :


Ce code est assez pratique pour accéder à des serveurs sans quitter le client mIRC.
Une connection sur un port 6667 (irc) est instructive sur les commandes raw.
Exemple, pour exécuter LIST, vous taperez : /sockwrite -n irctelnet LIST
Idem pour les autres commandes.
Code instructif pour ceux qui débutent en sockets.

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.