Membuat Bot Telegram untuk Alert Notifikasi Perangkat Network dengan Python dan BotFather
Pelajari cara membuat bot Telegram untuk mengirim alert otomatis dari perangkat network menggunakan Python dan BotFather. Tutorial ini membahas integrasi notifikasi monitoring switch, router, dan LibreNMS untuk membantu tim IT, network engineer, DevOps, dan sysadmin mempercepat respons terhadap gangguan jaringan.
TeknoWiz Indonesia
Owner

Pengenalan Bot Telegram untuk Monitoring Network
Monitoring perangkat network membutuhkan sistem alert yang cepat dan mudah diakses. Email sering terlambat dibaca, sedangkan notifikasi real-time melalui aplikasi chat lebih efektif untuk tim operasional.
Bot Telegram menjadi solusi praktis untuk mengirim alert otomatis dari sistem monitoring seperti LibreNMS ke grup engineer. Integrasi ini membantu mendeteksi masalah switch, router, firewall, server, atau perangkat jaringan lain lebih cepat.
Python digunakan sebagai penghubung antara sistem monitoring dan Telegram Bot API. Dengan beberapa library sederhana, script Python dapat menerima data alert lalu meneruskannya ke channel atau grup Telegram.
Arsitektur Sistem Alert Network dengan Telegram
Alur sistem terdiri dari beberapa komponen utama. LibreNMS melakukan monitoring perangkat, Python memproses pesan alert, lalu Telegram bot mengirimkan notifikasi ke engineer.
- LibreNMS: Monitoring SNMP perangkat network seperti switch, router, access point, dan server.
- Telegram Bot: Endpoint penerima dan pengirim pesan menggunakan Telegram Bot API.
- Python Script: Middleware untuk format pesan, autentikasi, dan pengiriman alert.
- Telegram Group: Tempat tim menerima notifikasi gangguan secara real-time.
Membuat Bot Telegram Menggunakan BotFather
Langkah pertama membuat bot adalah menggunakan BotFather. BotFather adalah bot resmi Telegram untuk membuat dan mengelola bot.
Langkah Membuat Bot
- Buka Telegram: Cari akun
@BotFather. - Buat bot baru: Jalankan command
/newbot. - Tentukan nama bot: Masukkan nama tampilan bot.
- Tentukan username: Username harus berakhiran
bot, contohnetwork_alert_bot. - Simpan token: BotFather memberikan API token yang digunakan Python untuk mengakses Telegram Bot API.
Token bot bersifat rahasia. Jangan menyimpan token langsung pada repository publik atau membagikannya ke pengguna lain.
Persiapan Environment Python
Server yang menjalankan script Python membutuhkan Python 3 dan library Telegram. Gunakan virtual environment agar dependency tetap terisolasi.
python3 -m venv telegram-env
source telegram-env/bin/activate
pip install python-telegram-bot requests
Library python-telegram-bot digunakan untuk komunikasi dengan Telegram API. Library requests membantu melakukan HTTP request jika integrasi mengambil data dari sistem lain.
Membuat Script Python Telegram Alert
Script berikut mengirim pesan alert sederhana ke Telegram menggunakan bot token dan chat ID.
from telegram import Bot
BOT_TOKEN = "MASUKKAN_TOKEN_BOT"
CHAT_ID = "MASUKKAN_CHAT_ID"
bot = Bot(token=BOT_TOKEN)
message = ""
message += "ALERT NETWORK\n"
message += "Switch core mengalami packet loss tinggi\n"
message += "Status: Warning"
bot.send_message(
chat_id=CHAT_ID,
text=message
)
print("Alert terkirim")
Ketika script dijalankan, Telegram bot mengirim pesan ke chat tujuan. Format pesan dapat dikembangkan dengan menambahkan informasi hostname, IP address, severity, dan waktu kejadian.
Mendapatkan Telegram Chat ID
Telegram membutuhkan Chat ID sebagai tujuan pengiriman pesan. Chat ID dapat diperoleh dengan mengirim pesan ke bot lalu membaca response Telegram API.
https://api.telegram.org/botTOKEN/getUpdates
Response JSON akan menampilkan informasi chat termasuk ID pengguna atau grup.
- User ID: Digunakan untuk alert pribadi engineer.
- Group ID: Digunakan untuk notifikasi tim network operation.
- Channel ID: Digunakan untuk broadcast alert monitoring.
Integrasi LibreNMS dengan Telegram Bot
LibreNMS memiliki sistem alert yang dapat menjalankan notifikasi ketika kondisi perangkat berubah. Integrasi Telegram dapat dilakukan melalui alert transport atau webhook.
Contoh skenario monitoring:
- Interface Down: Switch kehilangan koneksi port uplink.
- High CPU Usage: Router mengalami beban CPU tinggi.
- High Memory Usage: Perangkat network mendekati batas penggunaan RAM.
- Device Down: Perangkat tidak merespons monitoring SNMP.
Contoh Format Alert Network
🚨 NETWORK ALERT
Device: SW-CORE-JKT-01
IP: 10.10.10.1
Status: DOWN
Severity: Critical
Time: 14:30:22
Format pesan yang jelas membantu engineer melakukan troubleshooting tanpa membuka dashboard monitoring terlebih dahulu.
Pengembangan Bot untuk Kebutuhan Production
Bot sederhana dapat dikembangkan menjadi sistem alert production dengan beberapa peningkatan.
- Environment Variable: Simpan token Telegram menggunakan file
.envatau secret manager. - Logging: Simpan aktivitas bot untuk audit dan troubleshooting.
- Error Handling: Tangani kegagalan koneksi Telegram API.
- Message Template: Buat format alert standar agar mudah dibaca.
- Multiple Channel: Pisahkan alert network, server, dan security.
Keuntungan Menggunakan Telegram Alert untuk Network Monitoring
- Respons Lebih Cepat: Engineer menerima gangguan langsung melalui perangkat mobile.
- Kolaborasi Tim: Grup Telegram memudahkan koordinasi saat incident.
- Biaya Rendah: Tidak membutuhkan platform notification tambahan.
- Fleksibel: Python mudah dikembangkan sesuai kebutuhan infrastruktur.
Kesimpulan
Membuat bot Telegram untuk alert perangkat network menggunakan Python dan BotFather memberikan sistem notifikasi yang cepat, fleksibel, dan mudah dikembangkan.
Kombinasi LibreNMS, Python, dan Telegram membantu tim IT meningkatkan monitoring switch, router, dan infrastruktur jaringan. Langkah berikutnya adalah menghubungkan bot dengan sistem alert production, menambahkan keamanan token, serta membuat standar format notifikasi agar proses troubleshooting lebih efisien.
Tanggapan & Diskusi Teknis0
Punya studi kasus, pertanyaan arsitektur, atau pandangan lain terkait topik ini? Mari bertukar wawasan secara konstruktif.
Memuat tanggapan diskusi...
