Coders-IRC


IRC for Coders

WHOIS script


image

This is some very basic code that translates the confusing WHOIS outputs into a simpler format.

It should work for all RAW WHOIS outputs from Rizon, (nag me if I've missed any!) and most unmodified Unreal (including custom SwiftIRC IRCd) and InspIRCd servers.

Note: I've included the +g and +G modes, but to show them in a WHOIS output you'll most likely need to do /whois to reveal that information.

Code below goes into Remotes obviously, Alt+R and copy+paste.


raw 311:*: {
  set %whois 1
  echo -a 4 $+ $2 $+  Address: $3 $+ $chr(64) $+ $4
  echo -a 4 $+ $2 $+  Realname: $6
  haltdef
}

raw 378:*is connecting*: {
  echo -a 4 $+ $2 $+  Host: $6
  echo -a 4 $+ $2 $+  IP: $7
  haltdef
}

raw 338:*is actually*: {
  echo -a 4 $+ $2 $+  Host: $5
  echo -a 4 $+ $2 $+  IP: $remove($6,$chr(91),$chr(93))
  haltdef
}

raw 307:*: {
  echo -a 4 $+ $2 $+  is a registered nick
  haltdef
}

raw 319:*: {
  echo -a 4 $+ $2 $+  Channels: $3-
  haltdef
}

raw 312:*: {
  echo -a 4 $+ $2 $+  Server: $3 $4-
  haltdef
}

raw 716:*server side ignore*: {
  if ($5 === +G) {
    echo -a 4 $+ $2 $+  $5 $+ : Soft server side ignore
    haltdef
  }
  elseif ($5 === +g) {
    echo -a 4 $+ $2 $+  $5 $+ : Server side ignore
    haltdef
  }
}

raw 310:*is using modes*: {
  echo -a 4 $+ $2 $+  Modes: $6-
  haltdef
}

raw 313:*is a*: {
  if (service isin $3-) {
    echo -a 4 $+ $2 $+  is a network service
    haltdef
  }
  elseif (bot isin $3-) {
    echo -a 4 $+ $2 $+  is a network service
    haltdef
  }
  elseif ($5 == IRC) && ($6 == Operator) && ($7) && ($network == Rizon) {
    echo -a 4 $+ $2 $+  IRCOp: ( $+ $8- $+ )
    haltdef
  }
  elseif (!$7) && ($network == Rizon) {
    echo -a 4 $+ $2 $+  IRCOp: ( $+ IRC Operator $+ )
    haltdef
  }
  else {
    echo -a 4 $+ $2 $+  IRCOp: ( $+ $5- $+ )
    haltdef
  }
}

raw 310:*is available for help.: {
  echo -a 4 $+ $2 $+  is available for help
  haltdef
}

raw 335:*: {
  echo -a 4 $+ $2 $+  is a bot on $network
  haltdef
}

raw 671:*secure connection*: {
  echo -a 4 $+ $2 $+  is using a secure connection
  haltdef
}

raw 672:*cgi*irc*: {
  echo -a 4 $+ $2 $+  is a CGI:IRC client
  haltdef
}

raw 317:*seconds idle*signon time*: {
  echo -a 4 $+ $2 $+  Idle: $duration($3)
  echo -a 4 $+ $2 $+  On IRC: $asctime($4)
  haltdef
}


raw 330:*is logged in as*: {
  echo -a 4 $+ $2 $+  is logged in as $3
  haltdef
}

raw 320:*is using a secure connection: {
  echo -a 4 $+ $2 $+  is using a secure connection
  haltdef
}

raw 379:*is using modes*: {
  echo -a 4 $+ $2 $+  Modes: $6-
  haltdef
}

raw 301:*: {
  echo -a 4 $+ $2 $+  Away: $3-
  haltdef
}

raw 537:*is currently immune to filtering*: {
  echo -a 4 $+ $2 $+  is immune to filtering
  haltdef
}

raw 401:*no such nick*channel*: {
  echo -a 4 $+ $2 $+  No such nickname.
  haltdef
}

raw 318:*end of*: {
  echo -a 4 $+ $2 $+  End of WHOIS.
  echo -a -
  unset %whois
  haltdef
}

Comments 0