rendered paste bodyaway {
.timer200 off
.timerautoaway off
if ($1 != $null) {
/unset %away.*
set %awaynow On
.echo 15 -a $+ [[ $+ $+ $time(ddd h:nn:ss TT) $+ $+ ]] *** Auto Away deactivated, Manual Away set:13 $1-
set %awayreason $1-
set %gone 0
.timer202 0 5 inc %gone 5
.timer 1 0 .scon -at1 .raw away : $+ $1-
if (%awayname != $null && $me != %awayname) { set %awayname2 $me | .scon -at1 .nick %awayname }
}
else {
.timer202 off
set %awaynow Off
.echo 15 -a $+ [[ $+ $+ $time(ddd h:nn:ss TT) $+ $+ ]] *** Back from: 13 $+ %awayreason $+ 15, Away for: 13 $+ $duration(%gone)
unset %awayreason
unset %gone
;if ($lines($shortfn($mircdirpage.log)) != 0) { echo 15 -a You have6 $lines($shortfn($mircdirpage.log)) 15message(s) - Type /pager to see messages. }
echo 15 -a $+ [[ $+ $+ $time(ddd h:nn:ss TT) $+ $+ ]] *** Away deactivated:13 Auto Away reactivated
if (%idle > 30) { .timer200 0 10 if ($idle >= %idle $+ ) /idle }
.timer 1 0 .scon -at1 .raw away
if (%awayname2 != $null && $me != %awayname2) { .scon -at1 .nick %awayname2 | unset %awayname2 }
.resetidle
}
}
idle {
var %tmp $idle | var %sloop 1
while (%sloop <= $scon(0)) {
/scon %sloop
if (%tmp > $idle) { var %tmp $idle }
if (%tmp < $idle) { /resetidle %tmp }
inc %sloop
}
if ($timer(autoaway)) { if (%tmp < 15) { /away } | return }
if (%tmp >= %idle $+ ) {
.echo 15 -a $+ [[ $+ $+ $time(ddd h:nn:ss TT) $+ $+ ]] *** Auto Away: 13 $+ $duration(%idle) of no action
away Auto Away: $duration(%idle) of no action
.echo 15 -a $+ [[ $+ $+ $time(ddd h:nn:ss TT) $+ $+ ]] *** Auto Away is active
.timer200 off
set %gone $idle
set %awaynow On
.timerautoaway 0 8 /idle
.timer202 0 1 inc %gone
}