Rumah >hujung hadapan web >tutorial js >Meletakkan Bot Telegram Anda pada Cloudflare Workers: Panduan Langkah demi Langkah
Adakah anda bersedia untuk membina bot Telegram tanpa perlu bersusah payah mengurus pelayan? Dengan Cloudflare Workers, anda boleh menggunakan bot anda dalam beberapa minit, memanfaatkan platform yang berkuasa dan berskala yang menguruskan semua beban berat. Dalam panduan ini, kami akan memandu anda melalui keseluruhan proses - daripada menyediakan persekitaran pembangunan anda kepada menggunakan bot Telegram yang berfungsi sepenuhnya - semuanya menggunakan templat yang ringkas dan mudah diikuti dalam TypeScript. Mari selami dan aktifkan bot anda.
Cloudflare Workers ialah platform tanpa pelayan yang membolehkan pembangun menjalankan kod JavaScript, TypeScript atau Python di tepi, dekat dengan pengguna anda, dengan kependaman yang minimum. Dengan memanfaatkan platform ini, anda boleh menggunakan bot Telegram yang bukan sahaja sepantas kilat tetapi juga sangat berskala. Tidak perlu mengurus pelayan, mengendalikan penskalaan atau berurusan dengan infrastruktur yang kompleks - Cloudflare menguruskan segala-galanya untuk anda.
Sekarang mari kita selami prosesnya.
Sebelum kami mula membina, anda perlu memasang wrangler, alat baris arahan Cloudflare untuk mengurus Pekerja:
npm install wrangler
Petua: Jika anda tidak memasang npm, anda boleh mendapatkannya dengan mudah dengan memuat turun dan memasang Node.js daripada nodejs.org.
Setelah wrangler disediakan, navigasi ke direktori tempat anda mahu fail pekerja anda disimpan. Jalankan arahan berikut untuk mencipta pekerja anda:
npm create cloudflare@latest MY_WORKER_NAME
Ganti MY_WORKER_NAME dengan nama pilihan anda untuk pekerja tersebut. Jika ini kali pertama anda menggunakan wrangler, ia akan menggesa anda untuk menyambung ke akaun Cloudflare anda dan membuat pengesahan melalui tetingkap penyemak imbas-ikut sahaja arahannya.
Apabila digesa untuk templat, pilih Templat daripada repo GitHub dan masukkan:
https://github.com/m-sarabi/cloudflare-telegram-bot
Kemudian pilih Typescript apabila ditanya.
Pastikan anda pergi ke repositori ini dan berikan Bintang ⭐️ sila.
Semasa persediaan, anda akan ditanya sama ada anda mahu menggunakan Git untuk kawalan versi dan jika anda ingin menggunakan pekerja anda dengan segera. Saya cadangkan memilih Tidak untuk kedua-duanya, menangguhkan sehingga kami telah mengkonfigurasi segala-galanya.
Anda sepatutnya melihat mesej: SUCCESS Aplikasi berjaya dibuat!
Seterusnya, kami akan menyediakan pembolehubah persekitaran dalam fail wrangler.toml dalam direktori projek anda. Jadi tambahkan baris ini pada fail:
[vars] SECRET = "<SECRET>" TOKEN = "<API_TOKEN>"
Selepas menetapkan pembolehubah ini, jalankan arahan ini di dalam direktori projek anda:
npm run cf-typegen
Arahan ini menjana semula fail worker-configuration.d.ts, mencerminkan pembolehubah anda yang baru ditetapkan.
Sekarang, mari kita masuk ke bahagian yang menyeronokkan - mengekodkan bot! Dalam contoh ini kita akan mencipta ini:
Senario: Apabila pengguna menghantar arahan /start, bot memaparkan mesej dengan butang. Selepas menekan butang, bot mengalih keluarnya dan menghantar mesej susulan.
Semua fungsi pengendali kemas kini berada dalam direktori src/Telegram/pengendali.
Kami akan mulakan dengan membalas arahan /start dengan mesej dan butang sebaris. Ubah suai src/Telegram/handlers/handleMessage.ts seperti:
import { tg } from '../lib/methods'; export async function handleMessage(message: tgTypes.Message) { const messageText = message.text; const chatId = message.chat.id; if (messageText === '/start') { await tg.sendMessage({ text: 'Welcome to my bot! Press the button to accept my rules!', chat_id: chatId, reply_markup: { inline_keyboard: [ [{ text: 'I Accept', callback_data: 'accept_rules' }] ] } }); } }
Coretan kod ini menghantar mesej dengan butang papan kekunci sebaris menggunakan kaedah tg.sendMessage.
Apabila pengguna menekan butang sebaris, kami mahu bot mengakui tindakan ini. Ubah suai src/Telegram/handlers/handleCallbackQuery.ts:
import { tg } from '../lib/methods'; export async function handleCallbackQuery(callbackQuery: tgTypes.CallbackQuery) { const data = callbackQuery.data; const messageId = callbackQuery.message?.message_id; const chatId = callbackQuery.message?.chat.id; if (messageId && chatId) { if (data === 'accept_rules') { await tg.editMessageReplyMarkup({ chat_id: chatId, message_id: messageId, reply_markup: undefined }); await tg.sendMessage({ chat_id: chatId, text: 'Thanks for accepting my rules.' }); } } }
Kod ini mendengar pertanyaan data accept_rules dan pada perlawanan mengalih keluar butang sebaris dan menghantar mesej susulan menggunakan kaedah tg.editMessageReplyMarkup.
Dengan logik bot anda disediakan, sudah tiba masanya untuk menggunakan pekerja anda dan menyambungkannya ke Telegram melalui webhook.
Setelah digunakan dan didaftarkan, anda boleh berinteraksi dengan bot anda di Telegram. Mulakan dengan mengklik Mula (atau hantar /mula), dan anda akan melihat mesej alu-aluan dengan butang sebaris.
Membina dan menggunakan bot Telegram tidak pernah semudah ini terima kasih kepada Cloudflare Workers. Dengan mengikuti panduan ini, anda telah memanfaatkan kuasa teknologi tanpa pelayan untuk mencipta bot yang bukan sahaja berskala dan pantas tetapi juga mudah diselenggara.
Sama ada anda membina bot ringkas untuk kegunaan peribadi atau menggunakan sesuatu yang lebih kompleks untuk perniagaan, templat ini menyediakan asas yang kukuh. Selamat mengekod!
Atas ialah kandungan terperinci Meletakkan Bot Telegram Anda pada Cloudflare Workers: Panduan Langkah demi Langkah. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!