Tutorial Membuat Bot Telegram Sederhana untuk Notifikasi Info Sekolah dengan Python

3 min read 24-08-2024
Tutorial Membuat Bot Telegram Sederhana untuk Notifikasi Info Sekolah dengan Python

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:

  1. Buka aplikasi Telegram dan cari kontak bernama BotFather.
  2. Kirimkan pesan dengan perintah /newbot.
  3. Ikuti instruksi untuk memberikan nama dan username untuk bot Anda.
  4. 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:

  1. Notifikasi Jadwal Pelajaran: Tambahkan command untuk mengirim jadwal pelajaran harian.
  2. Pengumuman Kegiatan Ekstrakurikuler: Tambahkan command untuk informasi kegiatan ekstrakurikuler.
  3. 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!