Auto Delete User Hotspot Expired
Auto Delete User Hotspot Expired
Bagi Penyedia Layanan Hotspot niscaya tidak absurd lagi dengan RB(Routerboard) Mikrotik dimana disana ada feature hotspotnya serta ada user hotspot yang kita buat, dan timbul hambatan dimana setiap masa aktif mereka habis (expired) kita harus manual menghapus user satu demi satu. Dari problem tersebut hasilnya saya mencari solusi bagaimana kalau user yang sudah habis masa aktifnya eksklusif didelete.
Dan juga untuk mengantisipasi user login dengan device berbeda kita gunakan mac-address, dimana saat user login kita catat mac-addressnya, sehingga saat user menggunakan devices lain yang berbeda dengan mac address yang kita catat maka user diblok / tidak diizinkan masuk.
Discript ini juga kita dapat mengeset untuk interval/masa aktif user.
Berikut saya sertakan script set mac address, set interval/masa aktif serta untuk mendelete user hotspot yang sudah expired.
'Ketika user login waktu eksklusif dihitung dipakai atau tidak oleh user waktu terus berjalan.'
On Login :
{
:local user $userhotspot;
:local macaddress $"mac-address";
:if ([/system schedule find name=$userhotspot]="")
do=
{
/ip hotspot user set mac-address=$"macaddress" comment="used" [find name=$userhotspot]
/system schedule add name=$userhotspot interval=7d on-event="/ip hotspot user remove [find name=$userhotspot]\r\n/ip hotspot active remove [find user=$userhotspot]\r\n/system schedule remove [find name=$userhotspot]\r\n/ip hotspot cookie remove [find user=$userhotspot]"
}
/ip hotspot user set comment="used-online" [find name=$userhotspot]
}
--------------------------------------------------------------------------------------------------------------------
Penjelasan Script :
:local user $userhotspot; (deklarasi variable user dimana nama variablenya yaitu userhotspot)
:local macaddress $"mac-address" (deklarasi variable macaddress dimana variablenya string mac-address)
:if ([/system schedule find name=$userhotspot]="") do= (Jika system schedule menemukan nama userhotspot maka lakukan )
/ip hotspot user set mac-address=$"macaddress" comment="used" [find name=$userhotspot] (set mac address user hotspot yang login dan set commentnya used)
/system schedule add name=$userhotspot interval=7d on-event="/ip hotspot user remove [find
name=$userhotspot]\r\n/ip hotspot active remove [find user=$userhotspot]\r\n/system schedule remove [find name=$userhotspot]\r\n/ip hotspot cookie remove [find user=$userhotspot]" (system schedule add userhotspot interval 7 hari, remove kalau menemukan user active, remove cookie)
--------------------------------------------------------------------------------------------------------------------------
On Logout :
{
:local userhotspot $user;
/ip hotspot user set comment="used" [find name=$userhotspot]
}
-----------------------------------------------------------------------------------
Penjelasan script
Set comment used saat user logout
---------------------------------------------------------------------------------
untuk interval silahkan disesuaikan.
Semoga Bermanfaat.....