All pastes #630266 Raw Edit

Unnamed

public text v1 · immutable
·published 2007-07-23 01:37 UTC
rendered paste body
on ^$*:TEXT:/^!tvrage\b/:#: { /tv $1- }

; ------------------------------
; Open Socket to TVRage
; ------------------------------
alias tv {
  set %chanz $chan
  sockopen tvrage www.tvrage.com 80
  set %search $1-
}
; ------------------------------
; Send TVRage Query
; ------------------------------
on *:SOCKOPEN:tvrage: {
  var %search_r $replace(%search,$chr(32),$+(%,20))
  sockwrite -n $sockname GET /quickinfo.php?show= $+ %search_r HTTP/1.1
  sockwrite -n $sockname Host: www.tvrage.com
  sockwrite -n $sockname Connection: Keep-Alive
  sockwrite -n $sockname $crlf
}

; ------------------------------
; Receive Incomming Data
; Sort Raw Data
; Output Final TV info
; Close Socket
; ------------------------------
on *:sockread:tvrage: {
  if ($sockerr > 0) return; 
  var %i = 1
  while ($sockbr > 0 || $sock($sockname).rq > 0) {
    sockread -f %temp
    if ($+(No,$chr(32),Show) isin %temp) { sockclose $sockname | echo -a No results were found for $+(',%search,') | halt }
    elseif (Name == $gettok($gettok(%temp,2,32),1,64)) { set %ragename $gettok(%temp,2,64) }
    elseif (URL == $gettok($gettok(%temp,2,32),1,64)) { set %rageurl $gettok(%temp,2,64) }
    elseif (Premiered == $gettok(%temp,1,64)) { set %rageprem $gettok(%temp,2,64)) }
    elseif (Episode == $gettok($gettok(%temp,2,32),1,64)) { set %rageep $replace($gettok(%temp,2,64),$chr(94),$+($chr(32),$chr(149),$chr(32))) }
    elseif (Country == $gettok(%temp,1,64)) { set %ragecountry $gettok(%temp,2,64)) }
    elseif (Status == $gettok(%temp,1,64)) { set %ragestatus $gettok(%temp,2,64)) }
    elseif (Classification == $gettok(%temp,1,64)) { set %rageclass $gettok(%temp,2,64)) }
    elseif (Genres == $gettok(%temp,1,64)) { set %ragegen $replace($gettok(%temp,2,64),$chr(124),$chr(149)) }
    elseif (Network == $gettok(%temp,1,64)) { set %ragenet $gettok(%temp,2,64)) }
    elseif (Airtime == $gettok(%temp,1,64)) { set %rageair $gettok(%temp,2,64)) }
  }
  sockclose $sockname
  msg %chanz 4---------------------------------------------------------------------------------
  msg %chanz 4» Showname: %ragename
  msg %chanz 4» URL: %rageurl 
  msg %chanz 4» Premiered: %rageprem
  msg %chanz 4» Next Episode: %rageep
  msg %chanz 4» Country: %ragecountry
  msg %chanz 4» Status: %ragestatus
  msg %chanz 4» Class: %rageclass
  msg %chanz 4» Genre(s): %ragegen
  msg %chanz 4» Network: %ragenet
  msg %chanz 4» Airtime: %rageair
  msg %chanz 4---------------------------------------------------------------------------------
}