Anda bisa membuat, menghapus, disable, enable dan merubah profile user ppp/pptp Mikrotik dan menampilkan user ppp yang aktif hanya dengan bantuan bot telegram cukup dengan menggunakan System Script dan System Scheduler pada mikrotik tanpa harus punya server PHP sendiri, ini cukup mudah dipasang dan digunakan bagi orang awam yang tidak paham pemograman PHP. Tutorial ini update dari postingan sebelumnya yang berjudul Membuat User PPP/PPTP Dengan Menggunakan Bot Telegram.
Agar script ini berjalan dengan semestinya anda harus membuat terlebih dahulu bot telegram interaktif yang terdapat pada postingan berikut ini: Monitoring Mikrotik dengan Bot Telegram Interaktif tanpa Pemograman PHP
Perintah Pada Bot Telegram

Membuat User PPP
/ppp (spasi) Nama User PPP (spasi) Password (spasi) Nama Profile
Menghapus User PPP
/ppp (spasi) delete (spasi) Nama User PPP
Disable User PPP
/ppp (spasi) disable (spasi) Nama User PPP
Enable User PPP
/ppp (spasi) enable (spasi) Nama User PPP
Ganti Password User PPP
/ppp (spasi) password (spasi) Nama User PPP (spasi) Password baru
Ganti Profile User PPP
/ppp (spasi) profile (spasi) Nama User PPP (spasi) Nama Profile Baru
Menampilkan User PPP yang Aktif
/ppp (spasi) print
Script
Buat script dengan nama tg_cmd_ppp. Script ini akan dipanggil dengan perintah /ppp pada Bot Telegram.
Silahkan share untuk membuka link download dan membuka scriptnya
Apabila tutorial ini bermanfaat support saya dengan cara share artikel ini..
Terimakasih
:local send [:parse [/system script get tg_sendMessage source]]
:local param1 [:pick $params 0 [:find $params " "]]
:local param2 [:pick $params ([:find $params " "]+1) [:len $params]]
:local param3 [:pick [:pick $params ([:find $params " "]+1) [:len $params]] ([:find [:pick $params ([:find $params " "]+1) [:len $params]] " "]+1) [:len [:pick $params ([:find $params " "]+1) [:len $params]]]]
:if ([:len [:find $param2 " "]]>0) do={
:set param2 [:pick [:pick $params ([:find $params " "]+1) [:len $params]] 0 [:find [:pick $params ([:find $params " "]+1) [:len $params]] " "]]
} else={
:set param3 ""
}
:put $params
:put $param1
:put $param2
:put $param3
:put $chatid
:put $from
:if ($param1="delete") do={
/ppp secret remove [find name=$param2]
$send chat=$chatid text=("User PPP: $param2 Berhasil dihapus") mode="Markdown"
}
:if ($param1="disable") do={
/ppp secret disable [find name=$param2]
$send chat=$chatid text=("User PPP: $param2 Disable") mode="Markdown"
}
:if ($param1="enable") do={
/ppp secret enable [find name=$param2]
$send chat=$chatid text=("User PPP: $param2 Enable") mode="Markdown"
}
:if ($param1="password") do={
/ppp secret set password=$param3 [find name=$param2]
/ppp active remove [find name=$param2]
$send chat=$chatid text=("User PPP: $param2 pasword diganti menjadi $param3...") mode="Markdown"
}
:if ($param1="profile") do={
/ppp secret set profile=$param3 [find name=$param2]
/ppp active remove [find name=$param2]
$send chat=$chatid text=("User PPP: $param2 profile diganti menjadi $param3...") mode="Markdown"
}
:if ($params="print") do={
:local output
:foreach activeIndex in=[/ppp active find] do={
:local activeUser ("*Username:* ".[/ppp active get value-name="name" $activeIndex]."%0A")
:local activeAddress ("*Address:* ".[/ppp active get value-name="address" $activeIndex]."%0A")
:local activeCaller ("*Caller-ID:* ".[/ppp active get value-name="caller-id" $activeIndex]."%0A")
:local activeUptime ("*Uptime:* ".[/ppp active get value-name="uptime" $activeIndex]."%0A")
:local activeService ("*Service:* ".[/ppp active get value-name="service" $activeIndex]."%0A")
:set output ($output.$activeUser.$activeAddress.$activeCaller.$activeUptime.$ActiveService."%0A")
}
$send chat=$chatid text=("$output") mode="Markdown"
}
:if ($param1!="password" and $param1!="profile" and $param1!="enable" and $param1!="disable" and $param1!="delete" and $param1!="print") do={
/ppp secret add name=$param1 password=$param2 service=pptp profile=$param3
$send chat=$chatid text=("User PPP %0AUsername: $param1 %0APassword: $param2 %0AProfile: $param3 %0ABerhasil dibuat...") mode="Markdown"
}





Kl mau menambah perintah untuk mengetahu jumlah user yg online aja gimana ya pak? Kl yg /ppp print kan menampilkan semua nama yg online
:local pppactive [:len [/PPP active find]]
Kira2 seperti ini
kok ndak bisa ya pak ?
apa saya ada yang kurang ?
:local send [:parse [/system script get tg_sendMessage source]]
:local ppp [:len [/PPP active connections find]]
:put $params
:put $chatid
:put $from
:local text “Router Id:* $[/system identity get name] * %0A\
PPPoE users: _$ppp online_”
$send chat=$chatid text=$text mode=”Markdown”
:return true
kalau untuk menhapus user ppp yang aktif gimana ya pak, tanpa menghapus yang ada di secret, kalau rumus ini (/ppp (spasi) delete (spasi) Nama User PPP) menghapus yang di secret ya pak
Cobntoh seperti ini, ini berdasarkan nama user
:if ($param1=”deleteActive”) do={
/ppp active remove [find name=$param2]
$send chat=$chatid text=(“User Active: $param2 Berhasil dihapus”) mode=”Markdown”
}
ini contoh menghapus semua ppp active
:if ($params=”deleteActiveAll”) do={
/ppp active remove [find]
$send chat=$chatid text=(“User Active Berhasil dihapus”) mode=”Markdown”
}
Untuk menambahkan commet untuk secret pppnya gimana ya pak?
saya mau membuat seperti ini pak, NAMA (abcd) PASSWORD (abcd) SERVICENYA (ANY) {kalau di script ini kan SERVICENYA (PPTP} Profile (abcd) Kemudian saya juga inigin Membuat LOCAL ADDRESS (saya tulis manual CONTOH : 192.168.50.1) Remote Adrress (saya tulis manual CONTOH : 192.168.50.30) lewat bot telegram juga, apakah bapak bisa bantu untuk scriptnya, terimakasih pak sebelumnya
/ppp secret add local-address=20.20.20.1 name=”tes123″ password=”tes123″ profile=VPN2 service=any remote-address=”20.20.20.$x”
bagaimana jika menambahkan menu pppoe di mikmon offline?
gimana caranya buat hide fetch di log nya ya gan? lumayan ganggu buat log nya
pak mau tanya, untuk menampilkan nama user yang tidak ada di active connection gimana ya? jadi misalkan di pppoe secret ada nama A,B,C,D,E,F,G,H, kemudian beberapa user ini disconnect tanpa menghapus nama di secret (modem dimatikan, salah ganti password dial up / yang lain),.. dan saya ingin print berapa user yang disconnect tersebut..terima kasih
saya ingin buat perintah
ip firewall nat enable numbers=16 dan ip firewall nat disable numbers=16
jadi jika saya ketik disable, maka nat pada baris ke 16 langsung ter disable. begitu sebaliknya gan.
mohon pencerahannya gan..
failure: closing connection: 149.154.167.220:443 (5)
kira kira eror seperti itu ketika di masukan perintah print kenapa ya
untk memberi comment ke user tertentu gimana scriptnya bang
malam kak… bisakah Bot Telegram Tanpa PHP di tempatkan ke google srcript
biar bisa mengurangi beban kerja mikrotik? terimakasih
Malam mas Yayan,..
Saya igin menampilkan semua nama user pppoe di mikrotik dengan script telegram, tetapi dengan keterbatasan pemahaman, saya belum bisa menampilkan,..
mohon pencerahannya.
Terimakasih atas waktunya & di tunggu kabar baiknya,
semoga Tuhan membalas dengan Keberkahan.
kak kalau mau print ppp cuma 1 client/1 name tertentu saja bagaimana kak?
kak untuk print 1 ppoe saja bisa tidak?contoh kita ambil info by username misal /ppp print joni.co.id
jika ingin memanggil / menampilkan jumlah dan user secret yang sedang offline atau tidak sedang online bagaimana ya scripnya ?