Di era digital seperti sekarang, pengingat pembayaran tagihan menjadi salah satu kebutuhan penting. Dengan memanfaatkan teknologi bot, kita dapat membuat pengingat yang otomatis untuk membantu kita mengingat tenggat pembayaran. Dalam artikel ini, kita akan membahas langkah-langkah membuat bot Telegram sederhana menggunakan bahasa pemrograman Python.
Apa itu Bot Telegram?
Bot Telegram adalah akun Telegram yang dioperasikan oleh perangkat lunak daripada secara manual oleh pengguna. Bot ini dapat melakukan berbagai tugas, mulai dari menjawab pertanyaan, mengirim pesan otomatis, hingga mengingatkan pengguna tentang sesuatu, seperti pembayaran tagihan.
Persyaratan
Sebelum kita mulai membuat bot, ada beberapa hal yang perlu disiapkan:
- Akun Telegram: Pastikan Anda memiliki akun Telegram.
- Token Bot Telegram: Anda perlu membuat bot melalui BotFather dan mendapatkan token.
- Python: Pastikan Python sudah terinstal di komputer Anda.
- Library Python: Kita akan menggunakan
python-telegram-bot
untuk berinteraksi dengan API Telegram danschedule
untuk menjadwalkan pengingat.
Langkah-langkah Membuat Bot Telegram
1. Membuat Bot di Telegram
- Buka aplikasi Telegram dan cari pengguna
@BotFather
. - Mulai percakapan dengan mengirimkan perintah
/start
. - Gunakan perintah
/newbot
untuk membuat bot baru. - Ikuti instruksi untuk memberikan nama dan username untuk bot Anda.
- Setelah bot dibuat, Anda akan menerima token API. Catat token ini, karena akan kita gunakan di langkah berikutnya.
2. Menginstal Library yang Diperlukan
Buka terminal atau command prompt dan jalankan perintah berikut untuk menginstal library yang diperlukan:
pip install python-telegram-bot schedule
3. Membuat Script Python
Buat file Python baru, misalnya bot_pengingat.py
, dan buka file tersebut dengan text editor. Masukkan kode berikut:
import logging
from telegram import Update
from telegram.ext import Updater, CommandHandler, CallbackContext
import schedule
import time
import threading
# Menyiapkan logging
logging.basicConfig(format='%(asctime)s - %(name)s - %(levelname)s - %(message)s',
level=logging.INFO)
logger = logging.getLogger(__name__)
# Token yang didapat dari BotFather
TOKEN = 'YOUR_TELEGRAM_BOT_TOKEN'
chat_id = None
# Fungsi untuk mengingatkan pengguna tentang tagihan
def pengingat_tagihan(context: CallbackContext):
context.bot.send_message(chat_id=chat_id, text='Ingat! Pembayaran tagihan Anda jatuh tempo hari ini.')
# Fungsi untuk memulai bot
def start(update: Update, context: CallbackContext) -> None:
global chat_id
chat_id = update.message.chat_id
update.message.reply_text('Halo! Saya adalah bot pengingat tagihan. Saya akan mengingatkan Anda tentang pembayaran tagihan.')
# Fungsi untuk mengatur waktu pengingat
def set_reminder(update: Update, context: CallbackContext) -> None:
waktu = context.args[0] if context.args else None
if waktu:
schedule.every().day.at(waktu).do(pengingat_tagihan, context)
update.message.reply_text(f'Saya akan mengingatkan Anda tentang pembayaran tagihan setiap hari pada jam {waktu}.')
t = threading.Thread(target=scheduler)
t.start()
else:
update.message.reply_text('Silakan masukkan waktu dalam format HH:MM (24 jam). Contoh: 15:00')
# Fungsi untuk menjalankan scheduler
def scheduler():
while True:
schedule.run_pending()
time.sleep(1)
def main():
updater = Updater(TOKEN)
dispatcher = updater.dispatcher
dispatcher.add_handler(CommandHandler('start', start))
dispatcher.add_handler(CommandHandler('setreminder', set_reminder))
updater.start_polling()
updater.idle()
if __name__ == '__main__':
main()
4. Menjalankan Bot
Pastikan Anda telah mengganti YOUR_TELEGRAM_BOT_TOKEN
dengan token yang Anda dapatkan dari BotFather. Setelah itu, jalankan script Python tersebut dengan perintah:
python bot_pengingat.py
5. Menggunakan Bot
- Buka aplikasi Telegram dan cari bot yang telah Anda buat.
- Mulai percakapan dengan bot dan kirimkan perintah
/start
. - Kirimkan perintah
/setreminder HH:MM
untuk mengatur waktu pengingat. Contohnya:/setreminder 15:00
untuk mengingatkan pada pukul 15:00 setiap hari.
Penjelasan Kode
-
Library yang Digunakan:
python-telegram-bot
: Digunakan untuk berinteraksi dengan API Telegram.schedule
: Digunakan untuk menjadwalkan pengingat.
-
Fungsi
pengingat_tagihan(context)
: Mengirimkan pesan pengingat kepada pengguna jika waktu yang telah ditentukan tiba. -
Fungsi
start(update, context)
: Dijalankan saat pengguna memulai bot, untuk menyimpanchat_id
. -
Fungsi
set_reminder(update, context)
: Mengatur waktu pengingat berdasarkan input pengguna. -
Fungsi
scheduler()
: Menjalankan scheduler untuk memeriksa dan menjalankan tugas yang terjadwal.
Kesimpulan
Dengan mengikuti langkah-langkah di atas, Anda sudah berhasil membuat bot Telegram sederhana untuk pengingat pembayaran tagihan menggunakan Python. Bot ini dapat membantu Anda memastikan bahwa Anda tidak melewatkan tenggat pembayaran yang penting.
Anda juga dapat mengembangkan bot ini lebih lanjut dengan menambahkan fitur lain, seperti pengingat untuk berbagai tagihan, antarmuka yang lebih baik, atau database untuk menyimpan informasi tentang tagihan. Selamat mencoba!