Dalam era digital saat ini, banyak institusi pendidikan yang menggunakan aplikasi pesan instan untuk menyampaikan informasi kepada siswa dan orang tua. Salah satu aplikasi yang populer adalah Telegram. Di artikel ini, kita akan membahas cara membuat bot Telegram sederhana yang dapat digunakan untuk memberikan notifikasi info sekolah menggunakan bahasa pemrograman Python.
Prerequisites
Sebelum kita mulai, pastikan Anda telah memenuhi syarat berikut:
- Memiliki akun Telegram
- Menginstal Python pada komputer Anda (minimal versi 3.6)
- Menginstal beberapa pustaka Python yang dibutuhkan
Langkah 1: Siapkan Bot di Telegram
Langkah pertama adalah membuat bot di Telegram:
- Buka aplikasi Telegram dan cari kontak bernama BotFather.
- Kirimkan pesan dengan perintah
/newbot
. - Ikuti instruksi untuk memberikan nama dan username untuk bot Anda.
- Setelah selesai, BotFather akan memberikan token API. Simpan token ini dengan baik, karena akan digunakan untuk mengakses bot Anda nanti.
Langkah 2: Instal Pustaka yang Diperlukan
Untuk mempermudah pemrograman bot Telegram, kita akan menggunakan pustaka python-telegram-bot
. Instal pustaka ini dengan menggunakan pip:
pip install python-telegram-bot
Langkah 3: Buat Skrip Python
Setelah semuanya siap, kita akan mulai menulis kode untuk bot kita.
Buatlah file baru bernama bot.py
dan tambahkan kode berikut:
import logging
from telegram import Update
from telegram.ext import Updater, CommandHandler, CallbackContext
# Aktifkan logging untuk memudahkan debugging
logging.basicConfig(format='%(asctime)s - %(name)s - %(levelname)s - %(message)s', level=logging.INFO)
logger = logging.getLogger(__name__)
# Fungsi untuk mengirim pesan Notifikasi Info Sekolah
def start(update: Update, context: CallbackContext) -> None:
update.message.reply_text('Selamat datang! Saya Bot Info Sekolah. Ketik /info untuk mendapatkan notifikasi.')
def info(update: Update, context: CallbackContext) -> None:
# Pastikan Anda bisa menggantikan isi berikut dengan informasi yang relevan
message = "Hari ini ada pengumuman penting:\n1. Ujian Tengah Semester pada 20 November.\n2. Rapat Orang Tua pada 25 November."
update.message.reply_text(message)
def main() -> None:
# Ganti 'YOUR_TOKEN' dengan token bot yang Anda dapatkan dari BotFather
updater = Updater("YOUR_TOKEN")
dispatcher = updater.dispatcher
# Daftarkan handler untuk perintah
dispatcher.add_handler(CommandHandler("start", start))
dispatcher.add_handler(CommandHandler("info", info))
# Mulai bot
updater.start_polling()
# Jalankan sampai Anda menghentikannya
updater.idle()
if __name__ == '__main__':
main()
Penjelasan Kode:
- Logging: Digunakan untuk membantu dalam debugging.
- Fungsi
start
: Merespons ketika pengguna mengirimkan perintah/start
. - Fungsi
info
: Mengirimkan notifikasi info sekolah ketika perintah/info
dikirim oleh pengguna. - Fungsi
main
: Tempat di mana bot dijalankan dan perintah-perintah didaftarkan.
Langkah 4: Jalankan Bot
Setelah Anda selesai menulis kode, saatnya menjalankan bot Anda. Pertama, buka terminal dan navigasikan ke direktori di mana Anda menyimpan file bot.py
, kemudian jalankan perintah berikut:
python bot.py
Jika semuanya berjalan lancar, bot Anda sekarang sudah aktif! Cobalah membuka aplikasi Telegram, cari bot Anda menggunakan username yang sudah Anda buat, dan kirimkan perintah /start
untuk memulai.
Langkah 5: Mengembangkan Fungsionalitas
Setelah mendapatkan bot dasar yang berfungsi, Anda bisa mengembangkan fungsionalitasnya lebih lanjut. Berikut beberapa ide pengembangan:
- Notifikasi Jadwal Pelajaran: Tambahkan command untuk mengirim jadwal pelajaran harian.
- Pengumuman Kegiatan Ekstrakurikuler: Tambahkan command untuk informasi kegiatan ekstrakurikuler.
- Pemberitahuan Ujian: Rencanakan untuk mengirim pesan otomatis berdasarkan jadwal ujian.
Contoh Mengirim Notifikasi Secara Otomatis
Anda bisa menggunakan modul schedule
untuk mengatur notifikasi secara otomatis. Instal modul ini dengan perintah berikut:
pip install schedule
Kemudian, Anda dapat memperbarui skrip bot untuk menggunakan jadwal:
import schedule
import time
def job():
# Mengirim notifikasi secara otomatis
message = "Jangan lupa sekolah besok, ada ujian hari Rabu!"
# Kirim pesan ke semua pengguna yang berlangganan di sini
schedule.every().day.at("10:30").do(job)
while True:
schedule.run_pending()
time.sleep(1)
Kesimpulan
Dengan mengikuti langkah-langkah di atas, Anda telah berhasil membuat bot Telegram sederhana untuk notifikasi info sekolah menggunakan Python. Anda dapat memperluas fungsi bot ini mengikuti kebutuhan sekolah, seperti menambah menu untuk jadwal pelajaran, pengumuman kegiatan, dan lainnya.
Bot Telegram ini bisa sangat berguna untuk mendukung komunikasi yang lebih efisien antara sekolah dan orang tua. Selamat mencoba dan semoga sukses!