This script accesses www.orlydb.com and pulls the newest Scene Releases and posts them on the channel.
After loading set a timer to call /pre every couple seconds so that it will check the website.
alias -l DoTime {
if (!$1) { tokenize 32 $Ctime }
else { Return $AscTime($1,hh:nn:ss tt) }
}
alias -l striphtml {
IF ($1) {
VAR %strip,%opt = <> $remove($1-,> <,><,$chr(9)) <>,%n = 2
WHILE ($gettok($gettok(%opt,%n,62),1,60)) {
%strip = %strip $ifmatch
INC %n
}
RETURN %strip
}
}
alias pre {
if ($1) { %chan = $1 }
if ($sock(pre)) { sockclose pre }
sockopen pre www.orlydb.com 80
}
on *:sockopen:pre: {
%PreOld = %PreNew
if ($sockerr > 0) return
sockwrite -n $sockname GET / HTTP/1.0
sockwrite -n $sockname Host: www.orlydb.com $+ $crlf
sockwrite -n $sockname $crlf
%temp = 0
}
on *:sockread:pre:{
if ($sockerr) { return }
var %tvdata
sockread %tvdata
if ($striphtml(%tvdata) != $null) {
if (%Temp < 4) {
if ("info" isin %tvdata) { %file = $striphtml($mid(%tvdata,$calc($pos(%tvdata,>,2) + 1),$pos(%tvdata,</,1))) }
if (%time && %section && %release && %temp = 3) {
%PreNew = %time %section %release %file
%temp = 5
}
if ("timestamp" isin %tvdata) { %time = $striphtml($mid(%tvdata,$calc($pos(%tvdata,>,1) + 1),$pos(%tvdata,</,1))) | inc %temp }
if ("section" isin %tvdata) { %section = $striphtml($mid(%tvdata,$calc($pos(%tvdata,>,2) + 1),$pos(%tvdata,</,1))) | inc %temp }
if ("release" isin %tvdata) { %release = $striphtml($mid(%tvdata,$calc($pos(%tvdata,>,1) + 1),$pos(%tvdata,</,1))) | inc %temp }
}
if (<a href="/toggleheader"> isin %tvdata) {
%Temp = 0
tokenize 32 %tvdata
%ServerTime = $2-3
var %a = $calc(($Ctime(%ServerTime) - $Ctime) / 3600)
var %b = $Round(%a,0)
%TimeDif = $calc(%b * 3600)
tokenize 32 %PreNew
if (%PreNew != %PreOld) {
$iif(%chan,msg %chan,echo -a) (PRE) $1 $dotime($Calc($Ctime($1-2) - %TimeDif))) ( $+ $3 $+ ) $mid($4,1,$Calc($pos($4,-,$pos($4,-,0))-1)) $iif($5,( $+ $5 $+ )) $replace($7,f,$chr(32) $+ File $+ $iif($remove($7,f) > 1,s)) ( $+ $mid($4,$calc($pos($4,-,$pos($4,-,0)) +1 )) $+ )
}
sockclose pre
unset %time %section %release %file %ServerTime %temp2 %temp %chan
}
}
}
Since orlydb.com no longer is a viable source, I was trying to update this script to PreDB.me. I'm getting parsing errors that I hope someone can help with..
!pretest Mr. Robot returns this
[PreDB.mePreDB.me33 releasesCategoriesMoviesSDHDDiscsTVSDHDDiscsMusicAudioVideosDiscsGamesPCXboxPlaystationNintendoAppsWindowsLinux</a]
14:05 @BoT • [>MacMobileBookseBooksAudio BooksXXXVideosImagesDoxUnknownMr Robot11.7 daysTVHDMr.Robot.S01E09.DIRFIX.1080p.HDTV.x264-TASTETV11.7 daysTVHDMr..Robot.S01E09.1080p.HDTV.x264-TASTETV11.7 daysTVSDMr.Robot.S01E09.HDTV.x264-DEFiNE18.7 days</]
14:05 @BoT • [>MacMobileBookseBooksAudio BooksXXXVideosImagesDoxUnknownMr Robot11.7 daysTVHDMr.Robot.S01E09.DIRFIX.1080p.HDTV.x264-TASTETV11.7 daysTVHDMr..Robot.S01E09.1080p.HDTV.x264-TASTETV11.7 daysTVSDMr.Robot.S01E09.HDTV.x264-DEFiNE18.7 days</]
alias pre {
unset %pre.nn %pre.release %pre.type %pre.data
sockclose pre
set %prel 0
sockopen pre predb.me 80
}
on *:sockopen:pre:{
if ($sockerr) { echo >> Error Connecting... | halt }
else {
sockwrite -n $sockname GET %pre.q HTTP/1.1
sockwrite -n $sockname User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)
sockwrite -n $sockname Host: predb.me
sockwrite -n $sockname $crlf
}
}
on *:sockread:pre:{
if ($sockerr > 0) return
sockread %read
;echo -a %read
if (class="data isin %read) { set %pre.data 1[ $+ ?14 $+ $striphtml(%read) $+ 1] }
if (class="tl-term isin %read) { set %pre.type 1[10 $+ $striphtml(%read) $+ 1] }
;if (class="p-title isin %read) { set %pre.release 5 $+ $striphtml(%read)
msg %pre.chan %pre.type %pre.release %pre.data
inc %pre.nn
}
if (%pre.nn >= 5) { sockclose pre }
}
alias striphtml {
noop $regsub($1-,/(<(?:.+?)>)/g,$null,%string)
return %string
}
on *:text:!pretest*:#:{
set %pre.chan $chan
unset %pre.q
set %pre.q /?search= $+ $replace($2-,$chr(32),+)
pre
}
on *:input:*:{
if (.pre == $1) {
set %pre.chan $active
unset %pre.q
set %pre.q /?q= $+ $replace($2-,$chr(32),+)
pre
}
}
Since orlydb.com no longer is a viable source, I was trying to update this script to PreDB.me. I'm getting parsing errors that I hope someone can help with..
!pretest Mr. Robot returns this
[PreDB.mePreDB.me33 releasesCategoriesMoviesSDHDDiscsTVSDHDDiscsMusicAudioVideosDiscsGamesPCXboxPlaystationNintendoAppsWindowsLinux</a]
14:05 @BoT • [>MacMobileBookseBooksAudio BooksXXXVideosImagesDoxUnknownMr Robot11.7 daysTVHDMr.Robot.S01E09.DIRFIX.1080p.HDTV.x264-TASTETV11.7 daysTVHDMr..Robot.S01E09.1080p.HDTV.x264-TASTETV11.7 daysTVSDMr.Robot.S01E09.HDTV.x264-DEFiNE18.7 days</]
14:05 @BoT • [>MacMobileBookseBooksAudio BooksXXXVideosImagesDoxUnknownMr Robot11.7 daysTVHDMr.Robot.S01E09.DIRFIX.1080p.HDTV.x264-TASTETV11.7 daysTVHDMr..Robot.S01E09.1080p.HDTV.x264-TASTETV11.7 daysTVSDMr.Robot.S01E09.HDTV.x264-DEFiNE18.7 days</]
alias pre {
unset %pre.nn %pre.release %pre.type %pre.data
sockclose pre
set %prel 0
sockopen pre predb.me 80
}
on *:sockopen:pre:{
if ($sockerr) { echo >> Error Connecting... | halt }
else {
sockwrite -n $sockname GET %pre.q HTTP/1.1
sockwrite -n $sockname User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)
sockwrite -n $sockname Host: predb.me
sockwrite -n $sockname $crlf
}
}
on *:sockread:pre:{
if ($sockerr > 0) return
sockread %read
;echo -a %read
if (class="data isin %read) { set %pre.data 1[ $+ ?14 $+ $striphtml(%read) $+ 1] }
if (class="tl-term isin %read) { set %pre.type 1[10 $+ $striphtml(%read) $+ 1] }
;if (class="p-title isin %read) { set %pre.release 5 $+ $striphtml(%read)
msg %pre.chan %pre.type %pre.release %pre.data
inc %pre.nn
}
if (%pre.nn >= 5) { sockclose pre }
}
alias striphtml {
noop $regsub($1-,/(<(?:.+?)>)/g,$null,%string)
return %string
}
on *:text:!pretest*:#:{
set %pre.chan $chan
unset %pre.q
set %pre.q /?search= $+ $replace($2-,$chr(32),+)
pre
}
on *:input:*:{
if (.pre == $1) {
set %pre.chan $active
unset %pre.q
set %pre.q /?q= $+ $replace($2-,$chr(32),+)
pre
}
}
on *:join:#pre: {
.timerpre1 0 5 /pre
.timerpre 0 5 /msg #Pre $pre
}
alias -l DoTime {
if (!$1) { tokenize 32 $Ctime }
else { Return $AscTime($1,hh:nn:ss tt) }
}
alias -l striphtml {
IF ($1) {
VAR %strip,%opt = <> $remove($1-,> <,><,$chr(9)) <>,%n = 2
WHILE ($gettok($gettok(%opt,%n,62),1,60)) {
%strip = %strip $ifmatch
INC %n
}
RETURN %strip
}
}
alias pre {
if ($1) { %chan = $1 }
if ($sock(pre)) { sockclose pre }
sockopen pre www.orlydb.com 80
}
on *:sockopen:pre: {
%PreOld = %PreNew
if ($sockerr > 0) return
sockwrite -n $sockname GET / HTTP/1.0
sockwrite -n $sockname Host: www.orlydb.com $+ $crlf
sockwrite -n $sockname $crlf
%temp = 0
}
on *:sockread:pre:{
if ($sockerr) { return }
var %tvdata
sockread %tvdata
if ($striphtml(%tvdata) != $null) {
if (%Temp < 4) {
if ("info" isin %tvdata) { %file = $striphtml($mid(%tvdata,$calc($pos(%tvdata,>,2) + 1),$pos(%tvdata,</,1))) }
if (%time && %section && %release && %temp = 3) {
%PreNew = %time %section %release %file
%temp = 5
}
if ("timestamp" isin %tvdata) { %time = $striphtml($mid(%tvdata,$calc($pos(%tvdata,>,1) + 1),$pos(%tvdata,</,1))) | inc %temp }
if ("section" isin %tvdata) { %section = $striphtml($mid(%tvdata,$calc($pos(%tvdata,>,2) + 1),$pos(%tvdata,</,1))) | inc %temp }
if ("release" isin %tvdata) { %release = $striphtml($mid(%tvdata,$calc($pos(%tvdata,>,1) + 1),$pos(%tvdata,</,1))) | inc %temp }
}
if (<a href="/toggleheader"> isin %tvdata) {
%Temp = 0
tokenize 32 %tvdata
%ServerTime = $2-3
var %a = $calc(($Ctime(%ServerTime) - $Ctime) / 3600)
var %b = $Round(%a,0)
%TimeDif = $calc(%b * 0)
tokenize 32 %PreNew
if (%PreNew != %PreOld) {
;$iif(%chan,msg %chan,echo -a) (7PRE) (9 $+ $3 $+ ) $4-
msg #Pre (7PRE) (9 $+ $3 $+ ) $4-
}
sockclose pre
unset %time %section %release %file %ServerTime %temp2 %temp %chan
}
}
}