Script mikrotik untuk melihat data secret ppp Mikrotik dan mengirimkannya melalui bot Telegram.Artikel ini terkait dengan artikel sebelumnya,Laporan Aktifitas Mikrotik Ke Telegram - Bab 2 - Aktifitas User Hotspot.
Versi Mikrotik Script
Berikut adalah contoh kode skrip Mikrotik untuk melihat data secret ppp dan mengirimkannya melalui bot Telegram:
# Konfigurasi koneksi ke Mikrotik
:local host "your_mikrotik_ip_address";
:local user "your_mikrotik_username";
:local password "your_mikrotik_password";
# Konfigurasi bot Telegram
:local botToken "your_bot_token_here";
:local chatId "your_chat_id_here";
# Menghubungkan ke Mikrotik dan mendapatkan data secret ppp
:local secrets;
:local api [/system script get value-name=api];
:if ($api = "true") do={
/tool fetch url=("https://"+$host+"/api/ip/ppp/secret/print") mode=https http-header-field="Authorization: Basic ".([/tool fetch url=("https://"+$host+"/api/login") mode=https user=$user password=$password as-value output=user]; :pick user 0 :pick user 1) dst-path=secret_ppp.txt;
:delay 1s;
:global secrets [/file get secret_ppp.txt contents];
} else={
:global api [/system script get value-name=global_api];
:if ($api = "true") do={
:global secrets [/ip/ppp/secret/print as-value];
} else={
:global secrets [/ppp secret print as-value];
}
}
# Membuat pesan untuk dikirim ke Telegram
:local message "Daftar secret ppp:\n\n";
:foreach secret in=$secrets do={
:local name ($secret->"name");
:local password ($secret->"password");
:local profile ($secret->"profile");
:local service ($secret->"service");
:local remoteAddress ($secret->"remote-address");
:local localAddress ($secret->"local-address");
:local uptime ($secret->"uptime");
:set message ($message . "Name: " . $name . "\n");
:set message ($message . "Password: " . $password . "\n");
:set message ($message . "Profile: " . $profile . "\n");
:set message ($message . "Service: " . $service . "\n");
:set message ($message . "Remote Address: " . $remoteAddress . "\n");
:set message ($message . "Local Address: " . $localAddress . "\n");
:set message ($message . "Uptime: " . $uptime . "\n\n");
}
# Kirim pesan ke Telegram
/tool fetch url=("https://api.telegram.org/bot" . $botToken . "/sendMessage?chat_id=" . $chatId . "&text=" . $message) mode=https;
# Hapus file temporary
/file remove secret_ppp.txt;
Pastikan untuk mengganti your_mikrotik_ip_address, your_mikrotik_username, your_mikrotik_password, your_bot_token_here, dan your_chat_id_here dengan konfigurasi yang digunakan. Skrip ini akan mengambil daftar secret ppp Mikrotik dan mengirimkannya ke Telegram melalui bot. Pesan yang dikirimkan berisi informasi nama secret ppp, password, profil, layanan, alamat remote, alamat lokal, dan waktu aktif. Anda dapat menyesuaikan informasi yang ingin ditampilkan dengan mengedit skrip sesuai kebutuhan.
Versi PHP API
Berikut adalah contoh kode PHP API untuk melihat data secret ppp Mikrotik dan mengirimkannya ke Telegram:
<?php
// Konfigurasi koneksi ke Mikrotik
$host = 'your_mikrotik_ip_address';
$user = 'your_mikrotik_username';
$password = 'your_mikrotik_password';
// Konfigurasi bot Telegram
$botToken = 'your_bot_token_here';
$chatId = 'your_chat_id_here';
// Membuat koneksi ke Mikrotik
$API = new RouterosAPI();
if ($API->connect($host, $user, $password)) {
// Mendapatkan data secret ppp
$secrets = $API->comm("/ppp/secret/print");
// Membuat pesan untuk dikirim ke Telegram
$message = "Daftar secret ppp:\n\n";
foreach ($secrets as $secret) {
$name = $secret['name'];
$password = $secret['password'];
$profile = $secret['profile'];
$service = $secret['service'];
$remoteAddress = $secret['remote-address'];
$localAddress = $secret['local-address'];
$uptime = $secret['uptime'];
$message .= "Name: " . $name . "\n";
$message .= "Password: " . $password . "\n";
$message .= "Profile: " . $profile . "\n";
$message .= "Service: " . $service . "\n";
$message .= "Remote Address: " . $remoteAddress . "\n";
$message .= "Local Address: " . $localAddress . "\n";
$message .= "Uptime: " . $uptime . "\n\n";
}
// Kirim pesan ke Telegram
$url = "https://api.telegram.org/bot" . $botToken . "/sendMessage?chat_id=" . $chatId . "&text=" . urlencode($message);
file_get_contents($url);
}
// Menutup koneksi ke Mikrotik
$API->disconnect();
Pastikan untuk mengganti your_mikrotik_ip_address, your_mikrotik_username, your_mikrotik_password, your_bot_token_here, dan your_chat_id_here dengan konfigurasi yang digunakan. Skrip ini akan mengambil daftar secret ppp Mikrotik dan mengirimkannya ke Telegram melalui bot. Pesan yang dikirimkan berisi informasi nama secret ppp, password, profil, layanan, alamat remote, alamat lokal, dan waktu aktif. Anda dapat menyesuaikan informasi yang ingin ditampilkan dengan mengedit skrip sesuai kebutuhan.