Administrators coders-irc_Bot Posted July 12 Administrators Report Share Posted July 12 Show someone's idle times for the server and each channel you share in common. Handy if you're being a nosy stalker. Replaces /whois in most cases. Usage: /idle Raccoon Raccoon signed on 2w1d, idle 1s, @#raccoon[1s] Query[1m5s] Chat[1m12s] @#irchelp[2h9m] +#politics[15h6m] #efnet[2w1d] ; Use: /idle <nickname> ALIAS idle { ; by Raccoon 10-July-2013 13-aug-2013 .raw WHOIS $$1 $1 .enable #idle_whois hinc -mu5 idle_whois cnt 1 .timerIDLE_WHOIS -oi 1 5 .disable #idle_whois $(|) hfree -w idle_whois } #idle_whois off RAW 319:*: { hadd -mu5 idle_whois $cid $+ $2 $+ .chans $hget(idle_whois,$cid $+ $2 $+ .chans) $3- | halt } RAW 317:*: { hadd -mu5 idle_whois $cid $+ $2 $+ .idle $3-4 | halt } RAW 318:*: { VAR %PRECISION = 2 var %nick = $2 var %chans = $hget(idle_whois,$cid $+ $2 $+ .chans) var %idles = $hget(idle_whois,$cid $+ $2 $+ .idle) var %idle = $gettok(%idles,1,32), %signon = $gettok(%idles,2,32) var %i = 1, %cidles, %rchans = %chans if ($query(%nick)) { var %cidles = $query(%nick).idle $+ :Query } if ($chat(%nick)) { var %cidles = %cidles $chat(%nick).idle $+ :Chat } WHILE $gettok(%chans,%i,32) { var %pchan = $v1 var %chan = $regsubex(%pchan,/^[^ $chantypes ]*/x,) var %cidle = $nick(%chan,%nick).idle if (%cidle != $null) { var %cidles = %cidles %cidle $+ : $+ %pchan var %rchans = $remtok(%rchans,%pchan,1,32) } inc %i } var %cidles = $sorttok(%cidles,32,n) var %i = 1, %chanidles WHILE $gettok(%cidles,%i,32) { var %pchan = $gettok($v1,2,58) var %cidle = $gettok($v1,1,58) var %chanidles = %chanidles %pchan $+ [[ $+ $dur(%cidle,%PRECISION) $+ ]] inc %i } echo -atic whois * $2 signed on $dur($calc($ctime - %signon),2) $+ , idle $dur(%idle,2) $+ , %chanidles %rchans hdel -w idle_whois $cid $+ $2 $+ .* hdec -m idle_whois cnt 1 if (!$hget(idle_whois,cnt)) { .disable #idle_whois | hfree -w idle_whois } halt } RAW *:*: halt #idle_whois end ;$duration(12345678) = 20wks 2days 21hrs 21 Quote Link to comment Share on other sites More sharing options...