
Bot multifungsi ini dapat melakukan sedikit dari segalanya! Ini adalah poked, URL lebih pendek dan bahkan membuat Anda bosan jika Anda tidak tahu apa yang harus dilakukan. Itu dikembangkan di saluran Twitch saya secara langsung dengan tujuan semua belajar berbagai teknik, fungsi dan implementasi ide hanya dalam satu proyek. Selain itu, tidak mengumpulkan data dari pengguna yang berinteraksi dengannya di telegram, hanya merespons dengan permintaan yang dibuat.
Di bawah ini Anda dapat melihat API dan teknologi mana yang digunakan dalam proyek, instruksi untuk menginstal paket yang diperlukan dan penggunaan aplikasi. Proyek ini telah selesai dan ditempatkan untuk bekerja di cloud, memastikan bahwa setiap orang dapat merenggut kapan saja. Cukup tambahkan @bittoinlivebot di telegram dan bersenang -senang!
Platform yang digunakan untuk menjalankan bot di cloud adalah Heroku, karena cepat, sederhana dan efisien. Menggunakan platform ini tidak wajib untuk bot bot dan eksekusi cloud, karena dapat berjalan secara lokal di mesin Anda atau platform lain dapat digunakan, seperti AWS, Google, antara lain.
Daftar API yang digunakan dalam pengembangan bot:
Sumber: Daftar API Publik di GitHub
Paket Python utama yang digunakan dalam pengembangan bot
Versi Python yang digunakan dalam proyek: Python 3.8
Untuk menginstal paket yang digunakan dalam proyek ini dan mereplikasi di mesin Anda atau membuat yang lain berdasarkan ini, beberapa informasi diperlukan untuk diselesaikan! Pertama, jika Anda ingin mereplikasi di botnya sendiri, Anda harus membuat bot Anda di telegram, menggunakan obrolan @BotFather . Dalam obrolan ini Anda dapat membuat bot, mengedit perintah, menambahkan deskripsi, dll. Tetapi yang paling penting, untuk mereplikasi proyek, itu adalah menyimpan Token API yang dihasilkan dalam pembuatannya. Token ini dapat ditempatkan di file bot.py di proyek, dalam variabel bot_token , sehingga semua fitur berjalan langsung ke bot Anda.
Ada dua cara untuk menginstal semua yang diperlukan untuk menjalankan kode, Anda harus memilih yang paling Anda temukan. Melalui requirements.txt atau Pipenv . Konfigurasi bot di cloud tidak akan dibahas di sini, karena dokumentasi platform itu sendiri (Heroku) memiliki langkah demi langkah untuk menjalankan kode di sana, tetapi perlu dicatat bahwa setidaknya salah satu dari metode instalasi paket ini diperlukan untuk konfigurasi lingkungan di cloud serta di komputer Anda.
Menginstal dengan persyaratan.txt sederhana, karena Anda hanya perlu menginstal PIP pada mesin dan menjalankan perintah berikut:
pip install requirments.txt
Keuntungan menginstal cara ini cepat, sederhana dan mudah. Namun, perlu dicatat bahwa metode ini hanya memastikan bahwa perpustakaan utama yang digunakan dalam proyek dipasang di versi yang benar, tetapi bukan anak perusahaan mereka. Mulai sekarang beberapa tahun mungkin salah untuk itu, tetapi Anda tidak perlu khawatir.
Untuk menginstal paket menggunakan PIPENV sederhana, pertama -tama pastikan PIPENV diinstal pada mesin Anda, dengan perintah berikut:
pip install pipenv
Kemudian instal paket melalui file pipfile.lock, dengan perintah:
pipenv install --ignore-pipfile
Dengan semua yang diinstal, Anda hanya perlu menjalankan perintah Pipenv Shell di dalam folder proyek dan segera setelah berada di dalam lingkungan virtual dengan semua yang diinstal, itu menjalankan kode secara normal.
pipenv shell
python main.py

Dalam topik ini akan dijelaskan bagaimana proyek disusun, antara file dan bagaimana kode terhubung, sehingga semua orang memahami dan dapat memodifikasi cara yang diperlukan. Cara menerapkannya sudah dijelaskan dalam dokumentasi perpustakaan itu sendiri, sehingga fokusnya akan pada cara yang diatur dalam proyek ini. Dalam gambar berikut adalah mungkin untuk mengamati bagaimana file disusun dan dari sini kita akan memasukkan koneksi di antara mereka (folder IMG IMG diabaikan karena hanya berisi gambar yang digunakan dalam readme ini).

Proyek ini dapat dibagi menjadi tiga bagian:
Seluruh organisasi bot dan kode fungsionalitas berada dalam funcs/ . File Python main.py hanya berisi pembuatan objek kelas bot yang ada di dalam bot.py untuk melakukan eksekusi bot dengan run() .
Setiap fungsionalitas yang dibuat untuk proyek ini memiliki kelasnya sendiri, class Pokedex() , class Bored() dan class Urlshort() . Agar kode tetap teratur dan mudah untuk pemeliharaan, setiap perintah yang ada di bot penuh sesak dalam metode kelas. Di bagian penggunaan bot Anda harus mencatat bahwa nama -nama metode tersebut sama dengan nama -nama perintah bot sendiri, sehingga tidak ada kebingungan mengenai implementasi setiap hal. Karena beberapa API digunakan untuk pengumpulan data bot, maka setiap kelas juga memiliki URL dasar, untuk memisahkan setiap API dengan baik dan mengatur permintaan dan kekhasan masing -masing. Contoh implementasi perintah dapat dilihat di bawah, dengan perintah bot paling dasar, menggunakan fungsi send_message() dengan teks tertulis, untuk orang sendiri yang memanggil perintah.
def start ( self , update , context ):
context . bot . send_message ( chat_id = update . effective_chat . id , text = "Bem vindo ao bot da transmissão (Ao vivo, não de covid) n Acesse twitch.tv/bittoin para mais informações!" ) Terakhir kami memiliki kelas utama bot, dalam file bot.py , yang penting semua kelas fungsionalitas yang disebutkan sebelumnya, membuat objek kelas masing -masing dan menggunakan metode untuk mengelola perintah yang diimplementasikan dan digunakan dalam obrolan bot online. Setelah kami memiliki objek kelas fungsionalitas kami, kami membuat penangan, di mana metode yang akan dipanggil oleh bot dan perintahnya akan dilewati, seperti yang dapat dilihat di bawah ini:
pokedex_handler = CommandHandler ( 'pokedex' , self . pokedex . pokedex ) Argumen pertama adalah nama perintah yang akan dipanggil dalam obrolan dan yang kedua metode yang akan dipanggil saat dioperasikan. Setelah itu kami menggunakan dispatcher Bot, yang bertanggung jawab untuk mengelola dan membuat semua penangan yang dibuat berfungsi untuk menanggapi semua permintaan pengguna dan memelihara organisasi panggilan internal.
self . dispatcher . add_handler ( pokedex_handler ) Di akhir proses kami memiliki eksekusi bot itu sendiri, dengan semua fiturnya ditambahkan ke dispatcher dan sedang menunggu penyelesaian.
# Inicia a execução do bot
self . updater . start_polling ()
# Roda o bot até apertar CTRL + C ou receber um SIGNAL
self . updater . idle ()Jika ada kesalahan dalam eksekusi proyek yang terkait dengan permintaan yang melibatkan kesalahan dalam terjemahan, akses tautan ini dengan solusi.
sample/ memiliki file sample.py dan inlineKeyboard.py . Sample.py memiliki tes pertama yang dilakukan pada bot di awal langsung untuk menguji bagaimana fungsi perpustakaan telegram untuk pekerjaan Python untuk menemukan dan memvalidasi beberapa properti. Anda mungkin memperhatikan bahwa karena semuanya hanya dalam satu file, itu berantakan dan sulit untuk dipisahkan, sehingga organisasi funcs/ telah diadopsi. Dalam inlineKeyboard.py contoh diambil langsung dari dokumentasi perpustakaan, dengan tujuan pengujian tombol/tombol pada obrolan telegram untuk mengimplementasikan fungsi API bosan.
Instalasi paket telah dijelaskan sebelumnya di bagian instalasi, sehingga fokusnya akan pada file Procfile . Procfile adalah apa yang akan dieksekusi di cloud melalui platform Heroku. Ini adalah file sederhana dan berisi perintah sederhana:
Pekerja: Python Main.py
Perintah ini hanya mengalokasikan instance server di cloud (pekerja) untuk menjalankan bot kami melalui file main.py , yang mengaktifkan eksekusi.

Berikut ini terdaftar semua fitur yang dibahas selama kehidupan tertulis dan diisi. Masing -masing topik ini diimplementasikan dan diuji secara langsung. Idenya adalah bahwa selama kehidupan publik membantu menciptakan fitur, menentukan persyaratan dan bagaimana pada akhirnya.

Pada bagian ini akan ditunjukkan hasil yang diperoleh dengan bot dan penggunaan kasus untuk setiap fungsionalitas. Nikmati dan tambahkan bot ke telegram dan tes juga! Cari saja @BittoinLiveBot dan mulailah mengetik perintah pada obrolan.
Jika Anda ingin melihat demonstrasi yang lengkap dan lebih banyak dijelaskan tentang cara kerja semuanya, kunjungi Instagram saya atau saluran YouTube saya yang akan memiliki video di IGTV/Channel dengan segalanya dan sedikit lagi!
/start Perintah /start hanya menampilkan pesan selamat datang.


Di sini semua perintah fungsionalitas Pokédex disajikan.
/pokedex nome_pokemon 
/pokedex numero_pokemon 
/habilidades nome_num_pokemon 
/moves nome_num_pokemon 

Di sini semua perintah dari URL fungsionalitas pendek disajikan.
/url link 

Di sini semua perintah alat yang membawa Anda dari kebosanan disajikan di sini.
/bored 
/participantes num_participantes 