Panduan Membuat Bot Telegram Sederhana untuk Notifikasi Harga Komoditas Menggunakan Python

3 min read 24-08-2024
Panduan Membuat Bot Telegram Sederhana untuk Notifikasi Harga Komoditas Menggunakan Python

Telegram telah menjadi salah satu aplikasi perpesanan paling populer dengan beragam fitur, salah satunya adalah kemampuan untuk membuat bot. Bot Telegram dapat membuat Anda lebih efisien dalam mendapatkan informasi tertentu, seperti harga komoditas. Dalam artikel ini, kita akan membahas langkah demi langkah cara membuat bot Telegram sederhana yang memberikan notifikasi harga komoditas dengan menggunakan Python.

Apa yang Anda Butuhkan?

Sebelum memulai, pastikan Anda memiliki beberapa hal berikut:

  1. Akun Telegram: Anda memerlukan akun Telegram untuk membuat bot dan menerima notifikasi.
  2. Token Bot: Anda perlu membuat bot dan mendapatkan token dari BotFather.
  3. Python: Pastikan Python sudah terinstall di komputer Anda.
  4. Library Python: Anda akan membutuhkan beberapa library, seperti python-telegram-bot dan requests.

Langkah 1: Membuat Bot Telegram

  1. Buka Telegram dan cari pengguna dengan nama BotFather.
  2. Mulai percakapan dengan BotFather dan ketik /start.
  3. Ketik /newbot untuk membuat bot baru.
  4. Ikuti instruksi untuk memberikan nama dan username untuk bot Anda. Setelah selesai, BotFather akan memberikan token API yang akan digunakan untuk mengakses bot Anda. Simpan token ini.

Langkah 2: Menginstall Library yang Diperlukan

Untuk dapat menggunakan bot kita, Anda perlu menginstall beberapa library yang dibutuhkan. Buka terminal atau command prompt dan jalankan perintah berikut:

pip install python-telegram-bot requests

Langkah 3: Menyiapkan API untuk Mendapatkan Harga Komoditas

Kita akan menggunakan API untuk mendapatkan harga komoditas. Sebagai contoh, Anda bisa menggunakan API dari Alpha Vantage, Quandl, atau sumber lain yang memberikan data harga komoditas. Anda dapat mendaftar dan mendapatkan API key dari penyedia layanan tersebut.

Berikut contoh endpoint API yang bisa digunakan untuk mendapatkan harga komoditas:

https://www.alphavantage.co/query?function=TIME_SERIES_DAILY&symbol=COMMODITY_SYMBOL&apikey=YOUR_API_KEY

Gantilah COMMODITY_SYMBOL dengan simbol komoditas yang Anda inginkan dan YOUR_API_KEY dengan kunci API Anda.

Langkah 4: Membuat Script Python untuk Bot Telegram

Buat file Python baru, misalnya bot.py, dan isi dengan kode berikut:

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

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

# Token bot Anda
TOKEN = 'YOUR_BOT_TOKEN'

# Fungsi untuk mendapatkan harga komoditas
def get_commodity_price(symbol):
    url = f'https://www.alphavantage.co/query?function=TIME_SERIES_DAILY&symbol={symbol}&apikey=YOUR_API_KEY'
    response = requests.get(url)
    data = response.json()
    # Ambil harga penutupan dari hari terakhir
    last_day = next(iter(data['Time Series (Daily)']))
    closing_price = data['Time Series (Daily)'][last_day]['4. close']
    return closing_price

# Fungsi start command
def start(update: Update, context: CallbackContext) -> None:
    update.message.reply_text('Selamat datang di Bot Notifikasi Harga Komoditas!')

# Fungsi untuk mengirimkan harga komoditas
def price(update: Update, context: CallbackContext) -> None:
    if context.args:
        symbol = context.args[0]
        try:
            price = get_commodity_price(symbol)
            update.message.reply_text(f'Harga penutupan {symbol} adalah ${price}')
        except Exception as e:
            logger.error(e)
            update.message.reply_text('Terjadi kesalahan dalam mendapatkan harga. Pastikan simbol komoditas benar.')
    else:
        update.message.reply_text('Silakan berikan simbol komoditas setelah perintah, contohnya: /price AAPL')

# Fungsi main untuk menjalankan bot
def main():
    updater = Updater(TOKEN)

    updater.dispatcher.add_handler(CommandHandler('start', start))
    updater.dispatcher.add_handler(CommandHandler('price', price))

    updater.start_polling()
    updater.idle()

if __name__ == '__main__':
    main()

Gantilah YOUR_BOT_TOKEN dengan token bot yang Anda dapatkan dari BotFather dan YOUR_API_KEY dengan API key dari penyedia layanan harga komoditas.

Langkah 5: Menjalankan Bot

Setelah Anda selesai menulis kode di atas, sekarang saatnya menjalankan bot. Buka terminal, navigasikan ke folder tempat Anda menyimpan bot.py, dan jalankan perintah berikut:

python bot.py

Bot Anda kini sudah berjalan! Sekarang buka Telegram, cari bot Anda dan kirimkan perintah /start untuk memulai. Anda bisa menggunakan perintah /price diikuti simbol komoditas untuk mendapatkan harga terkini. Contoh:

/price GOLD

Langkah 6: Menambahkan Fitur Notifikasi (Opsional)

Anda juga bisa mengembangkan proyek ini dengan menambahkan fitur notifikasi harga secara berkala atau menggunakan Webhook jika Anda ingin memberikan notifikasi secara real-time. Anda bisa menggunakan library tambahan seperti schedule untuk menjadwalkan pengiriman notifikasi.

Penutup

Dalam tutorial ini, Anda telah belajar bagaimana membuat bot Telegram sederhana yang memberikan notifikasi harga komoditas menggunakan Python. Anda bisa mengembangkannya lebih lanjut dengan menambahkan lebih banyak fitur atau mengintegrasikan lebih banyak data. Selamat mencoba, dan semoga sukses!