Cara Membuat Bot Telegram menggunakan Python

Best Koding.Com | Cara Membuat Bot Telegram menggunakan Python - Untuk menyiapkan bot baru, Anda perlu berbicara dengan BotFather.

 Best Koding.ComCara Membuat Bot Telegram menggunakan Python - Untuk menyiapkan bot baru, Anda perlu berbicara dengan BotFather. Tidak, dia bukan manusia – dia juga bot, dan dia adalah bos dari semua bot Telegram.



Table of Contents

Cara Membuat Bot Telegram menggunakan Python

Cara Mendapatkan Token Bot Anda

  1. Cari @botfather di Telegram.



  2. Mulai percakapan dengan BotFather dengan mengklik tombol Start.
  3. Ketik /newbot, dan ikuti petunjuk untuk menyiapkan bot baru. BotFather akan memberi Anda token yang akan Anda gunakan untuk mengautentikasi bot Anda dan memberikan akses ke API Telegram.

Catatan: Pastikan Anda menyimpan token dengan aman. Siapapun yang memiliki akses token Anda dapat dengan mudah memanipulasi bot Anda.

Cara kerja Lingkungan Pengodean Anda

Mari siapkan lingkungan pengkodean. Meskipun ada berbagai pustaka yang tersedia untuk membuat bot Telegram, kami akan menggunakan pustaka pyTelegramBotAPI . Ini adalah implementasi Python yang sederhana namun dapat diperluas ke Telegram Bot API dengan kemampuan sinkron dan asinkron.

Instal pustaka pyTelegramBotAPI menggunakan pip:

pip install pyTelegramBotAPI

Selanjutnya, buka editor kode favorit Anda dan buat .env file untuk menyimpan token Anda seperti di bawah ini:

export BOT_TOKEN=your-bot-token-here

Setelah itu, jalankan source .env perintah untuk membaca variabel lingkungan dari .env file tersebut.

Cara Membuat Bot Telegram Pertama Anda

Semua API implementasi disimpan dalam satu kelas bernama TeleBot. Ini menawarkan banyak cara untuk mendengarkan pesan masuk serta fungsi seperti send_message(), send_document(), dan lainnya untuk mengirim pesan.

Buat bot.py file baru dan rekatkan kode berikut di sana:

import os

import telebot

BOT_TOKEN = os.environ.get('BOT_TOKEN')

bot = telebot.TeleBot(BOT_TOKEN)


Pada kode di atas, kami menggunakan os library untuk membaca variabel lingkungan yang tersimpan di sistem kami.

Jika Anda ingat, kami mengekspor variabel lingkungan yang dipanggil BOT_TOKEN di langkah sebelumnya. Nilai BOT_TOKEN dibaca dalam variabel yang disebut BOT_TOKEN. Selanjutnya, kami menggunakan TeleBotkelas untuk membuat instance bot dan meneruskannya BOT_TOKEN.

Kami kemudian perlu mendaftarkan penangan pesan. Penangan pesan ini berisi filter yang harus dilewati pesan. Jika sebuah pesan melewati filter, fungsi yang dituju akan dipanggil dan pesan yang masuk diberikan sebagai argumen.

Mari kita tentukan penangan pesan yang menangani masuk /start dan /hello perintah.

_@bot.message_handler(commands=['start', 'hello'])
def send_welcome(message):
    bot.reply_to(message, "Howdy, how are you doing?")

Nama apa pun dapat diterima untuk fungsi yang didekorasi oleh penangan pesan, tetapi hanya dapat memiliki satu parameter (pesan).

 Mari tambahkan penangan lain yang mengembalikan semua pesan teks yang masuk ke pengirim.

@bot.message_handler(func=lambda msg: True)
def echo_all(message):
    bot.reply_to(message, message.text)

Kode di atas menggunakan lambda ekspresi untuk menguji pesan. Karena kita perlu menggemakan semua pesan, kita selalu kembali Truedari lambdafungsi. 

 Anda sekarang memiliki bot sederhana yang merespons /start dan /hello perintah dengan pesan statis dan menggemakan semua pesan terkirim lainnya. Tambahkan yang berikut ke akhir file Anda untuk meluncurkan bot:

bot.infinity_polling()
Itu dia! Kami sudah menyiapkan bot Telegram. Mari jalankan file Python dan buka Telegram untuk menguji bot. Cari bot menggunakan nama penggunanya jika Anda tidak dapat menemukannya. 

Anda dapat mengujinya dengan mengirimkan perintah seperti /hello dan /start dan teks acak lainnya.

Catatan: Semua penangan pesan diuji dalam urutan yang dideklarasikan dalam sumber file.

Untuk informasi selengkapnya tentang penggunaan pustaka pyTelegramBotAPI, Anda dapat merujuk ke dokumentasinya .

Sampai sekarang, bot berhenti bekerja segera setelah kami menghentikan aplikasi Python kami. Agar selalu berjalan, Anda dapat menggunakan bot di platform seperti Heroku, Render, dan sebagainya.

Berikut tautan ke repo GitHub untuk proyek ini - jangan ragu untuk memeriksanya.

Anda juga dapat menambahkan lebih banyak fungsi ke bot dengan menjelajahi API Telegram .