Kamis, 14 Juli 2016

script ganti hostpot mikrotik harian


Pernah gak ngalamin cape mengganti password hotspot mikrotik yang harus update tiap hari,

nah kali ini ane akan share script yang mungkin bisa membantu masalah agan


script ganti hostpot mikrotik harian :


:global insane2;
:set insane2 [:pick [/system clock get date ] 4 6]
:if ($insane2 = "12") do={/ip hotspot user set admin password=password12}
:if ($insane2 = "13") do={/ip hotspot user set admin password=password13}
:if ($insane2 = "14") do={/ip hotspot user set admin password=password14}
:if ($insane2 = "15") do={/ip hotspot user set admin password=password15}
:if ($insane2 = "16") do={/ip hotspot user set admin password=password16}
:if ($insane2 = "17") do={/ip hotspot user set admin password=password17}
:if ($insane2 = "18") do={/ip hotspot user set admin password=password18}
:if ($insane2 = "19") do={/ip hotspot user set admin password=password19}
:if ($insane2 = "20") do={/ip hotspot user set admin password=password20}
:if ($insane2 = "21") do={/ip hotspot user set admin password=password21}
:if ($insane2 = "22") do={/ip hotspot user set admin password=password22}


Nah akan ane jelasin fungsi dari script nya masing-masing
:global insane2; (adalah fungsi untuk menset expressi global di miliki di setiap script mikrotik dengan fungsi dan kegunaan nya masing-masing sesuai ke butuhan).

Nah disini ane set global insane2 buat pick tanggal di /system clock get date

format tanggal kan yang kebaca di mikrotik > Jul/14/2016, nah ane ngambil angka > 14 nya doang, jadi begini kurang lebih script nya = :set insane2 [:pick [/system clock get date ] 4 6]

tadi kan udah di declare si insane2 ini jadi global fungsi nya nah tinggal kita bikin si insane2 ini buat ngapain

:pick = mengambil suatu hasil dari sebuah fungsi
/system clock get date = ini kan buat ngambil formasi utuh tanggal bulan dan tahun
nah kode 4 6 nya ini ngambil huruf ke 4 sama ke 6 jadi kan j-u-l-/-1 sama j-u-l-/-1-4 jadi yang di ambil cuma angka di baris ke 4 sama 6 yaitu = 14

nah abis itu baris yang ini :if ($insane2  = "14") do={/ip hotspot user set admin password=password4} 
yang paling penting yaitu buat ganti user perhari nya

baris ini menggunakan logika if $insane2 <<< ini menggunakan global yang kita set tadi ya kira 2 ini sama dengan tanggal di mikrotik nya $insane2 = tanggal di mikrotik nah kan ada  ada tulisan (=14)

nah jadi kalo si insane nya itu sama dengan 14 maka dia excute perintah /ip hotspot user set admin password=password14 jadi secara otomatis merubah password user admin menjadi password14 

jadi begitu simple nya script ini berjalan nah password14 sama user admin nya bisa di ganti sama user sama password yang ingin agan-agan 2 ganti .
nah script ini harus di pasangan dengan scheduler yang pass agar bisa berjalan otomastis

dan ane sih biasanya set nya pass jam 1 malam karena udah pasti ganti tanggal dan script ini akan merubah password sesuai tanggal yang baru
contoh scheduler

/system scheduler add interval=1d name="test jadwal password spa" on-event=atm policy=\ ftp,reboot,read,write,policy,test,password,sniff,sensitive start-date=jul/12/2016 \ start-time=01:00:00


sekian itu aja , kalo ada yang kurang jelas boleh di tanya atau di comment di bawah

#noted: kalo ada trouble sertakan screenshoot agar lebih mudah buat ane ngasih solusi nya. 
:global insane2;
:set insane2 [:pick [/system clock get date ] 4 6]
:if ($insane2 = "12") do={/ip hotspot user set admin password=password1}
:if ($insane2 = "13") do={/ip hotspot user set admin password=password2}
:if ($insane2 = "14") do={/ip hotspot user set admin password=password3}
:if ($insane2 = "15") do={/ip hotspot user set admin password=password4}
:if ($insane2 = "16") do={/ip hotspot user set admin password=password5}
:if ($insane2 = "17") do={/ip hotspot user set admin password=password6}
:if ($insane2 = "18") do={/ip hotspot user set admin password=password7}
:if ($insane2 = "19") do={/ip hotspot user set admin password=password8}
:if ($insane2 = "20") do={/ip hotspot user set admin password=password9}
:if ($insane2 = "21") do={/ip hotspot user set admin password=password10}
:if ($insane2 = "22") do={/ip hotspot user set admin password=password11}