Home News Contact About
About Services Clients Contact

Membuat voucher hotspot mikrotik expired otomatis

|


Buat kalian yang mempunyai usaha RT/RW NET skala kecil seperti saya pasti akan membutuhkan bebearapa settingan pada mikrotik untuk mengatur kecepatan atau bandwidth untuk client kita, pada kesempatan kali ini saya mau berbagi sedikit script untuk memudahkan kita untuk mengelompokan paket yang sudah dibeli oleh client kita sesuai harga yang kalian jual.

Sebagai contoh kita menjual beberapa paket yaitu Voucher 12 jam, Voucher 1 Hari, Voucher 3 Hari, Voucher 7 Hari dan Voucher 1 Bulan.

Dalam kelompok diatas kita sudah setting dengan memasukan script pada profile tersebut agar voucher hangus sesuai waktu yang sudah ditentukan. Misal client membeli voucher 12 Jam dan saat itu juga voucher digunakan. Saat pemakaian pertama atau saat voucher login, mikrotik akan membuat schedule untuk menghapus voucher tersebut jika waktu sudah 12 jam sejak login pertama.


Keuntungan menggunakan script berikut adalah : 
  • Kita tidak perlu repot lagi untuk menghapus user jika sudah expired.
  • Waktu dihitung sejak pertama kali user login (atau menggunakan).
  • Voucher sudah di kunci dengan MAC client tersebut (tidak bisa dipakai di lain device).
  • Semua cookies, user aktif, user dan scedule akan terhapus otomatis jika waktu sudah habis.
  • Tidak akan banyak sampah user expired.
Script tersebut bisa kamu dapatkan gratis dibawah ini, cara pengunaannya cukup mudah kamu buat user profile hotspot dan masukan ke script dibawah ini :

Voucher 12 Jam
:local nama $user;
:local ip $address;
:local mac $"mac-address";
:local tanggal [/system clock get date];
:local useraktif [/ip hotspot active print count-only];
:local lby [/ip hotspot active get [find user="$nama"] login-by];
:local host [/ip dhcp-server lease get [find address="$ip"] host-name];
:local waktu [/system clock get time];

:if ([/ip hotspot user get [find name=$nama] comment]="baru") do={
 /ip hotspot user set [find name=$nama] comment="Login : $tanggal";
 /ip hotspot user set $nama mac=$mac;
 :log warning "User $nama berhasil login dan binding dengan mac : $mac" ;
 /tool fetch url="https://api.telegram.org/botAPYBOT/sendMessage?chat_id=CHAT_ID&text= ------- Informasi Login ------- %0AVoucher : $nama%0AIP : $ip %0AMac : $mac%0AHost : $host%0Alogin-by : $lby%0ATerhubung : $useraktif user" keep-result=no;

} else= {
 :log warning "User $nama berhasil melakukan login ulang." ;
}

:if ([/system schedule find name=$nama]="") do={
 /system schedule add name=$nama interval=12:00:00 on-event="/ip hotspot active remove [find user=$nama]\r\n/ip hotspot user remove [find name=$nama]\r\n/system schedule remove [find name=$nama]" start-date=$tanggal start-time=$waktu;
}
Catatan : Setinggan yang harus dirubah
  • APYBOT : Ubah dengan API BOT telegram kamu
  • CHAT_ID : Ubah dengan chat_ID telegram kamu.
  • 12:00:00 : Interval expired sesuaikan.
Terima kasih sudah mampir diblog saya dan semoga script diatas dapat bermanfaat untuk usaha kalian. jangan lupa bantu share ya agar saya lebih semangat lagi untuk berbagi.