Pas juste "bonjour, le monde" : votre premier chatbot vivant en JavaScript
\n\nLes chatbots ne sont plus un simple jouet pour geeks. Aujourd'hui, c'est un outil de travail : du support technique à la vente de pizzas. Et si vous pensez que pour créer un bot, il faut connaître le C++ ou Python, — je m'empresse de vous rassurer. Créer un chatbot en JavaScript — c'est réalisable, rapide et incroyablement captivant.
\n\nDans cet article, nous n'allons pas aborder la théorie sèche. Nous allons prendre et assembler un véritable telegram bot javascript, qui répondra aux questions, mémorisera les utilisateurs et fera même des blagues. Ensuite, je vous montrerai comment le transformer facilement en chatbot pour site web.
\n\nPrêts ? Alors ouvrez votre éditeur préféré, installez Node.js, et c'est parti !
\n\nDe quoi avons-nous besoin ?
\n\n- \n
- Node.js (version 16+) — l'environnement d'exécution. Téléchargeable sur le site officiel. \n
- N'importe quel éditeur de code — VS Code, WebStorm ou même le Bloc-notes (mais je ne le recommande pas). \n
- De la patience et une tasse de café — JavaScript fera le reste. \n
Comme plateforme de test, nous prendrons Telegram — il a une API simple et une tonne de documentation. Plus tard, vous pourrez adapter le code pour Discord, Slack ou votre propre site.
\n\nÉtape 1. Enregistrer le bot et obtenir le token
\n\nAvant d'écrire du code, nous devons "créer" le bot. Cela se fait via le bot principal de Telegram — @BotFather.
\n\n- \n
- Ouvrez Telegram et trouvez BotFather. \n
- Tapez la commande
/newbot. \n - Inventez un nom (par exemple, MyFirstJBot) et un nom d'utilisateur (doit obligatoirement se terminer par
bot, par exemple my_first_js_bot). \n - Obtenez le token — une longue chaîne de caractères du type
123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11. C'est le mot de passe de votre bot. \n
Conservez le token dans un endroit sûr. Si vous le perdez, vous devrez créer un nouveau bot.
\n\nÉtape 2. Configuration du projet et installation des dépendances
\n\nCréons un dossier pour le projet et initialisons npm :
\n\nmkdir my-telegram-bot\ncd my-telegram-bot\nnpm init -y\n\nMaintenant, installons la bibliothèque node-telegram-bot-api — c'est le package le plus populaire pour créer un chatbot sur node.js :
\n\nnpm install node-telegram-bot-api\n\nPrêt. Créez maintenant un fichier bot.js et ouvrez-le dans votre éditeur.
Étape 3. Écrire le "squelette" du bot
\n\nCommençons par le plus simple — le bot répondra à la commande /start et répétera tout message de l'utilisateur.
const TelegramBot = require('node-telegram-bot-api');\n\nconst token = 'VOTRE_TOKEN_ICI';\nconst bot = new TelegramBot(token, { polling: true });\n\nbot.onText(/\\/start/, (msg) => {\n const chatId = msg.chat.id;\n bot.sendMessage(chatId, `Bonjour, ${msg.from.first_name} ! Je suis ton premier chatbot en JavaScript. En quoi puis-je t'aider ?`);\n});\n\nbot.on('message', (msg) => {\n const chatId = msg.chat.id;\n const text = msg.text;\n\n // Ignorer les commandes pour ne pas dupliquer la réponse\n if (text.startsWith('/')) return;\n\n bot.sendMessage(chatId, `Tu as écrit : "${text}". Et moi, je suis un bot écho !`);\n});\n\n\nLançons :
\n\nnode bot.js\n\nÉcrivez au bot dans Telegram — il répondra. Félicitations ! Vous venez de créer un chatbot en JavaScript. Oui, pour l'instant il est stupide, mais ce n'est que le début.
\n\nÉtape 4. Ajouter de la logique : un simple bot FAQ
\n\nLes bots écho deviennent vite ennuyeux. Faisons en sorte que le bot réponde à des questions spécifiques. Cela ressemble déjà à un véritable chatbot pour site web.
\n\nCréons une simple base de connaissances sous forme d'objet :
\n\nconst faq = {\n 'comment ça va': 'Super ! Et toi ?',\n 'que sais-tu faire': 'Je peux répondre à des questions simples et raconter des blagues.',\n 'raconte une blague': 'Un