;; $twitch_accountage(username|userid)
;; Returns the number of seconds the account has existed
alias twitch_accountage {
var %result
JSONOpen -uw accountage https://api.twitch.tv/kraken/users/ $+ $$1
JSONUrlHeader accountage Client-ID e8e68mu4x2sxsewuw6w82wpfuyprrdx
JSONUrlGet accountage
if (!$JSONError) {
%result = $TwitchTime($JSON(accountage, created_at))
%result = $calc($ctime - %result)
}
JSONClose accountage
return %result
}
;; Translates ISO-8601-1 dates into a EPOCH time stamp
alias -l TwitchTime {
if ($regex($1-, /^(\d\d(?:\d\d)?)-(\d\d)-(\d\d)T(\d\d)\:(\d\d)\:(\d\d)(?:(?:Z$)|(?:([+-])(\d\d)\:(\d+)))?$/i)) {
var %m = $gettok(January February March April May June July August September October November December, $regml(2), 32), %d = $ord($base($regml(3),10,10)), %o = +0, %t
if ($regml(0) > 6) %o = $regml(7) $+ $calc($regml(8) * 3600 + $regml(9))
%t = $calc($ctime(%m %d $regml(1) $regml(4) $+ : $+ $regml(5) $+ : $+ $regml(6)) - %o)
if ($asctime(zz) !== 0 && $regex($v1, /^([+-])(\d\d)(\d+)$/)) {
%o = $regml(1) $+ $calc($regml(2) * 3600 + $regml(3))
inc %t %o
}
return %t
}
}