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:
- Akun Telegram: Anda memerlukan akun Telegram untuk membuat bot dan menerima notifikasi.
- Token Bot: Anda perlu membuat bot dan mendapatkan token dari BotFather.
- Python: Pastikan Python sudah terinstall di komputer Anda.
- Library Python: Anda akan membutuhkan beberapa library, seperti
python-telegram-bot
danrequests
.
Langkah 1: Membuat Bot Telegram
- Buka Telegram dan cari pengguna dengan nama BotFather.
- Mulai percakapan dengan BotFather dan ketik
/start
. - Ketik
/newbot
untuk membuat bot baru. - 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!