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--------------------------------------------------------------------------------- }