Im using FreeRadius and i have to guarantee only one simultaneous user in Hotspot Active Users with a script that runs every minute on the router.
My RB1100 is using RouterOS V7
Scipt:
Code: Select all
:local uname $user;
:local usercount 0;
:local usertime "00:00:00";
:local kickable;
:local maxuser 1;
:foreach i in=[/ip hotspot active find user=$uname] do= {
:local curup [/ip hotspot active get $i uptime];
:if ( $curup > $usertime ) do={
:set usertime $curup
:set kickable $i
}
:set usercount ($usercount+1)
}
:if ($usercount >= $maxuser) do={
:log info "Login user: $uname ($usercount/$maxuser) - Oldest $usertime will be logout!"
/ip hotspot active remove numbers=$kickable
} else {
:log info "Login user: $uname ($usercount/$maxuser)"
}