All pastes #473383 Raw Edit

Something

public text v1 · immutable
·published 2007-05-06 06:16 UTC
rendered paste body
Alias cleanup.rsp {
  unset %rsp.*. $+ $1
  sockclose rsp. $+ $1
}
on $*:TEXT:$(/^(?>\Q $+ $me $+ \E,? ?)?([!@.](rspoll|runescapepoll))/Si):#:{
  if ($readini(Status.ini,$network,$chan) == DChan && $remove($1,$chr(44)) != $me) { halt }
  else {
    var %i = $rand(10000,99999)
    set %rsp.display. $+ %i $&
      $iif($left($iif($remove($1,$chr(44)) == $me,$iif($nick ison $.chan ,$2),$1),1) == @,$iif($remove($1,$chr(44)) != $me && $readini(Status2.ini,$network,$chan),.notice $nick,msg $chan),.notice $nick)
    if (($remove($1,$chr(44)) == $me) && ($nick !isop $.chan && $nick !ishop $.chan)) {
      notice $nick Only staff can use my name like this
      cleanup.rsnw %i
      halt
    }
    sockopen rspoll. $+ %i www.runescape.com 80
  }
}
on *:SOCKOPEN:rspoll.*: {
  var %id = $right($sockname,5)
  sockwrite -nt $sockname GET sockwrite -nt $sockname GET /index.ws HTTP/1.1
  sockwrite -nt $sockname Host:  www.poll.runescape.com
  sockwrite -nt $sockname $crlf
}
on *:SOCKREAD:rspoll.*: {
  var %id = $right($sockname,5)
  var %display = %rspoll.display. [ $+ [ %id ] ]
  var %rspoll
  sockread %rspoll
  if ($sockerr) { 
    echo -a Error. 
    cleanup.rspoll %id
  }
  else {
    if ($regex(%rspoll,/This Weeks Poll (.*) Previous Polls!$/Si)) {
      %display $c1(There are curently) $c2($bytes($regml(1),b)) $c1(players online)
      cleanup.rspoll %id
    }
  }
}