Êtes-vous prêt à créer un bot Telegram sans vous soucier de la gestion des serveurs ? Avec Cloudflare Workers, vous pouvez déployer votre bot en quelques minutes, en tirant parti d'une plateforme puissante et évolutive qui prend en charge tout le gros du travail. Dans ce guide, nous vous guiderons tout au long du processus - de la configuration de votre environnement de développement au déploiement d'un bot Telegram entièrement fonctionnel - le tout en utilisant un modèle simple et facile à suivre en TypeScript. Allons-y et rendons votre bot opérationnel.
Cloudflare Workers est une plateforme sans serveur qui permet aux développeurs d'exécuter du code JavaScript, TypeScript ou Python en périphérie, à proximité de vos utilisateurs, avec une latence minimale. En tirant parti de cette plate-forme, vous pouvez déployer un bot Telegram qui est non seulement ultra-rapide mais également hautement évolutif. Pas besoin de gérer des serveurs, de gérer la mise à l'échelle ou de gérer une infrastructure complexe - Cloudflare s'occupe de tout pour vous.
Plongeons maintenant dans le processus.
Avant de commencer à construire, vous devrez installer Wrangler, l'outil en ligne de commande de Cloudflare pour gérer les Workers :
npm install wrangler
Conseil : Si npm n'est pas installé, vous pouvez facilement l'obtenir en téléchargeant et en installant Node.js depuis nodejs.org.
Une fois Wrangler configuré, accédez au répertoire dans lequel vous souhaitez que vos fichiers de travail résident. Exécutez la commande suivante pour créer votre travailleur :
npm create cloudflare@latest MY_WORKER_NAME
Remplacez MY_WORKER_NAME par votre nom préféré pour le travailleur. Si c'est la première fois que vous utilisez Wrangler, il vous demandera de vous connecter à votre compte Cloudflare et de vous authentifier via une fenêtre de navigateur. Suivez simplement les instructions.
Lorsque vous êtes invité à saisir le modèle, sélectionnez Modèle à partir d'un dépôt GitHub et saisissez :
https://github.com/m-sarabi/cloudflare-telegram-bot
Puis sélectionnez Typescript lorsque cela vous est demandé.
Assurez-vous d'aller sur ce référentiel et donnez-lui une étoile ⭐️ s'il vous plaît.
Lors de l'installation, il vous sera demandé si vous souhaitez utiliser Git pour le contrôle de version et si vous souhaitez déployer votre travailleur immédiatement. Je suggère de sélectionner Non pour les deux, en attendant que nous ayons tout configuré.
Vous devriez voir le message : SUCCÈS Application créée avec succès !
Ensuite, nous allons configurer les variables d'environnement dans le fichier wrangler.toml dans le répertoire de votre projet. Ajoutez donc ces lignes au fichier :
[vars] SECRET = "<SECRET>" TOKEN = "<API_TOKEN>"
Après avoir défini ces variables, exécutez cette commande dans le répertoire de votre projet :
npm run cf-typegen
Cette commande régénère le fichier worker-configuration.d.ts, reflétant vos variables nouvellement définies.
Maintenant, passons à la partie amusante - coder le bot ! Dans cet exemple, nous allons créer ceci :
Scénario : Lorsqu'un utilisateur envoie la commande /start, le bot affiche un message avec un bouton. En appuyant sur le bouton, le bot le supprime et envoie un message de suivi.
Toutes les fonctions du gestionnaire de mise à jour se trouvent dans le répertoire src/Telegram/handlers.
Nous allons commencer par répondre à la commande /start avec un message et un bouton en ligne. Modifiez src/Telegram/handlers/handleMessage.ts comme ceci :
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' }] ] } }); } }
Cet extrait de code envoie un message avec un bouton de clavier intégré à l'aide de la méthode tg.sendMessage.
Lorsque l'utilisateur appuie sur le bouton en ligne, nous voulons que le bot accuse réception de cette action. Modifiez 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.' }); } } }
Ce code écoute la requête de données accept_rules et, en cas de correspondance, supprime le bouton en ligne et envoie un message de suivi à l'aide de la méthode tg.editMessageReplyMarkup.
Une fois la logique de votre bot en place, il est temps de déployer votre travailleur et de le connecter à Telegram via un webhook.
Une fois déployé et enregistré, vous pouvez interagir avec votre bot sur Telegram. Commencez par cliquer sur Démarrer (ou envoyer /start), et vous devriez voir le message de bienvenue avec le bouton en ligne.
Créer et déployer des robots Telegram n'a jamais été aussi simple grâce à Cloudflare Workers. En suivant ce guide, vous avez exploité la puissance de la technologie sans serveur pour créer un bot non seulement évolutif et rapide, mais également facile à entretenir.
Que vous construisiez un bot simple pour un usage personnel ou que vous déployiez quelque chose de plus complexe pour une entreprise, ce modèle fournit une base solide. Bon codage !
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!