rendered paste bodyon ^$*: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---------------------------------------------------------------------------------
}