Créer un chatbot en JavaScript : guide pas à pas pour débutants

Formateur Python en ligne pour débutants

Apprenez Python facilement sans surcharge théorique. Résolvez des tâches pratiques avec vérification automatique et écrivez du code directement dans le navigateur.

Start Course

Pas juste "bonjour, le monde" : votre premier chatbot vivant en JavaScript

\n\n

Les 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\n

Dans 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\n

Prêts ? Alors ouvrez votre éditeur préféré, installez Node.js, et c'est parti !

\n\n

De 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
\n\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\n

Avant d'écrire du code, nous devons "créer" le bot. Cela se fait via le bot principal de Telegram — @BotFather.

\n\n
    \n
  1. Ouvrez Telegram et trouvez BotFather.
  2. \n
  3. Tapez la commande /newbot.
  4. \n
  5. Inventez un nom (par exemple, MyFirstJBot) et un nom d'utilisateur (doit obligatoirement se terminer par bot, par exemple my_first_js_bot).
  6. \n
  7. 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.
  8. \n
\n\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\n

Créons un dossier pour le projet et initialisons npm :

\n\n
mkdir my-telegram-bot\ncd my-telegram-bot\nnpm init -y
\n\n

Maintenant, installons la bibliothèque node-telegram-bot-api — c'est le package le plus populaire pour créer un chatbot sur node.js :

\n\n
npm install node-telegram-bot-api
\n\n

Prêt. Créez maintenant un fichier bot.js et ouvrez-le dans votre éditeur.

\n\n

Étape 3. Écrire le "squelette" du bot

\n\n

Commençons par le plus simple — le bot répondra à la commande /start et répétera tout message de l'utilisateur.

\n\n
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\n

Lançons :

\n\n
node 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\n

Les 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\n

Créons une simple base de connaissances sous forme d'objet :

\n\n
const 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                

Blogs

Book Recommendations