Cara Membuat Bot Telegram Sederhana untuk Pengingat Jadwal Posyandu dengan Python

3 min read 24-08-2024
Cara Membuat Bot Telegram Sederhana untuk Pengingat Jadwal Posyandu dengan Python

Telegram adalah aplikasi pesan yang populer dan memungkinkan pengguna membuat bot untuk berbagai keperluan, termasuk pengingat jadwal kegiatan. Dalam artikel ini, kita akan belajar bagaimana cara membuat bot Telegram sederhana untuk mengingatkan pengguna mengenai jadwal Posyandu menggunakan bahasa pemrograman Python. Mari kita mulai!

Apa itu Bot Telegram?

Bot Telegram adalah program yang bisa berinteraksi dengan pengguna melalui pesan. Bot ini dapat memberikan informasi, melakukan tugas otomatis, dan memberikan pengingat kepada pengguna. Dalam konteks Posyandu, bot ini akan membantu memberi tahu jadwal imunisasi, pemeriksaan kesehatan, dan lainnya.

Langkah-langkah Membuat Bot Telegram

1. Membuat Bot di Telegram

Langkah pertama adalah membuat bot di Telegram dengan bantuan BotFather:

  1. Buka aplikasi Telegram, lalu cari dan buka obrolan dengan BotFather.
  2. Ketik /newbot dan kirimkan pesan tersebut.
  3. Ikuti instruksi untuk memberikan nama dan username untuk bot Anda. Username harus diakhiri dengan kata “bot”.
  4. Setelah selesai, Anda akan mendapatkan token API yang diperlukan untuk mengakses bot.

2. Persiapkan Lingkungan Python

Anda perlu memastikan bahwa Python sudah terinstall di sistem Anda. Anda dapat memeriksanya dengan perintah:

python --version

Jika Python belum terinstall, Anda dapat mengunduh dan menginstall dari situs resmi Python.

3. Instalasi Library yang Diperlukan

Kami akan menggunakan library python-telegram-bot untuk berinteraksi dengan bot Telegram. Anda perlu menginstalnya menggunakan pip:

pip install python-telegram-bot

4. Membuat Skrip Python untuk Bot

Setelah semua siap, Anda dapat membuat skrip Python untuk bot Anda. Buat file baru, misalnya posyandu_bot.py, dan tulis kode berikut:

import logging
from telegram import Update
from telegram.ext import Updater, CommandHandler, CallbackContext

# Konfigurasi logger
logging.basicConfig(format='%(asctime)s - %(name)s - %(levelname)s - %(message)s', level=logging.INFO)
logger = logging.getLogger(__name__)

# Token bot yang didapat dari BotFather
TOKEN = 'YOUR_API_TOKEN_HERE'

# Fungsi untuk memulai bot
def start(update: Update, context: CallbackContext) -> None:
    update.message.reply_text('Selamat datang di Bot Pengingat Jadwal Posyandu!')

# Fungsi untuk mengingatkan jadwal
def reminder(update: Update, context: CallbackContext) -> None:
    schedule = "Jadwal Posyandu: Setiap hari Senin dan Kamis, pukul 08.00 WIB"
    update.message.reply_text(schedule)

# Fungsi utama untuk mengatur bot
def main() -> None:
    updater = Updater(TOKEN)
    dispatcher = updater.dispatcher

    # Menambahkan command handler
    dispatcher.add_handler(CommandHandler("start", start))
    dispatcher.add_handler(CommandHandler("reminder", reminder))

    # Mulai polling
    updater.start_polling()
    updater.idle()

if __name__ == '__main__':
    main()

Gantilah YOUR_API_TOKEN_HERE dengan token yang Anda dapatkan dari BotFather.

5. Jalankan Bot

Setelah kode selesai ditulis, Anda dapat menjalankan skrip dengan perintah:

python posyandu_bot.py

Bot Anda kini berjalan dan sudah bisa menerima komand dari pengguna.

6. Menggunakan Bot

Buka aplikasi Telegram, cari bot yang telah Anda buat, dan kirimkan pesan /start untuk melihat pesan sambutan dari bot.

Kemudian, Anda dapat mengetikkan /reminder untuk melihat pengingat jadwal Posyandu.

Menambahkan Fitur Pengingat

Anda mungkin ingin menambahkan fitur pengingat otomatis yang mengirim pesan pada jadwal tertentu. Untuk ini, Anda bisa menggunakan library apscheduler. Install library tersebut dengan perintah:

pip install apscheduler

Setelah terinstal, Anda bisa mengubah kode bot seperti berikut:

from apscheduler.schedulers.background import BackgroundScheduler

# Fungsi untuk mengirim pengingat
def send_reminder(context: CallbackContext):
    context.bot.send_message(chat_id=context.job.context, text="Jangan lupa! Jadwal Posyandu hari ini!")

# Fungsi untuk menambahkan pengingat
def set_reminder(update: Update, context: CallbackContext) -> None:
    chat_id = update.message.chat_id
    context.job_queue.run_daily(send_reminder, time=datetime.time(hour=8, minute=0), context=chat_id)
    update.message.reply_text('Pengingat telah disetel untuk setiap hari pada jam 08:00 WIB.')

# Tambahkan command handler untuk set_reminder
dispatcher.add_handler(CommandHandler("set_reminder", set_reminder))

Dengan menambahkan fungsi tersebut, pengguna dapat mengatur pengingat harian yang akan mengingatkan mereka pada waktu yang telah ditentukan.

Kesimpulan

Kini Anda telah berhasil membuat bot Telegram sederhana untuk mengingatkan jadwal Posyandu menggunakan Python. Dengan bot ini, Anda dapat memberikan informasi yang berguna kepada masyarakat mengenai jadwal imunisasi dan acara kesehatan lainnya. Anda bisa mengembangkan lebih lanjut bot ini dengan menambahkan fitur-fitur lain sesuai kebutuhan.

Selamat mencoba!