ليس مجرد "مرحباً بالعالم": أول روبوت محادثة حي لك بلغة JavaScript
\n\nلم تعد روبوتات المحادثة مجرد لعبة للمهووسين. اليوم هي أداة عمل: من الدعم الفني إلى بيع البيتزا. وإذا كنت تعتقد أن إنشاء روبوت يتطلب معرفة C++ أو Python، فأنا أسارع لإسعادك. إنشاء روبوت محادثة بلغة JavaScript أمر حقيقي وسريع وممتع بشكل لا يصدق.
\n\nفي هذه المقالة، لن ننظر إلى النظرية الجافة. سنأخذ ونبني telegram bot javascript كاملاً سيجيب على الأسئلة، ويتذكر المستخدمين، بل ويمزح. ثم سأريك كيف يمكن تحويله بسهولة إلى روبوت محادثة للموقع.
\n\nهل أنت مستعد؟ إذن افتح محررك المفضل، ثبّت Node.js، وانطلق!
\n\nماذا نحتاج؟
\n\n- \n
- Node.js (الإصدار 16+) — بيئة التشغيل. يمكن تنزيله من الموقع الرسمي. \n
- أي محرر أكواد — VS Code، WebStorm أو حتى المفكرة (لكني لا أوصي بذلك). \n
- الصبر وفنجان قهوة — الباقي سيفعله JavaScript. \n
كمنصة للاختبار، سنستخدم Telegram — لديه API بسيط وكثير من الوثائق. لاحقاً يمكنك تكييف الكود لـ Discord أو Slack أو موقعك الخاص.
\n\nالخطوة 1. تسجيل البوت والحصول على التوكن
\n\nقبل كتابة الكود، نحتاج إلى "ولادة" البوت. يتم ذلك عبر البوت الرئيسي في Telegram — @BotFather.
\n\n- \n
- افتح Telegram وابحث عن BotFather. \n
- اكتب الأمر
/newbot. \n - اختر اسماً (مثلاً، MyFirstJBot) واسم مستخدم (يجب أن ينتهي بـ
bot، مثلاً my_first_js_bot). \n - احصل على التوكن — سلسلة طويلة مثل
123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11. هذه كلمة مرور البوت الخاص بك. \n
احفظ التوكن في مكان آمن. إذا فقدته، سيتعين عليك إنشاء بوت جديد.
\n\nالخطوة 2. إعداد المشروع وتثبيت التبعيات
\n\nلننشئ مجلداً للمشروع ونبدأ npm:
\n\nmkdir my-telegram-bot\ncd my-telegram-bot\nnpm init -y\n\nالآن سنقوم بتثبيت مكتبة node-telegram-bot-api — هذه هي الحزمة الأكثر شهرة لإنشاء روبوت محادثة على node.js:
\n\nnpm install node-telegram-bot-api\n\nتم. الآن أنشئ ملف bot.js وافتحه في المحرر.
الخطوة 3. كتابة "الهيكل العظمي" للبوت
\n\nلنبدأ بأبسط شيء — البوت سيرد على الأمر /start ويكرر أي رسالة من المستخدم.
const TelegramBot = require('node-telegram-bot-api');\n\nconst token = 'توكنك_هنا';\nconst bot = new TelegramBot(token, { polling: true });\n\nbot.onText(/\\/start/, (msg) => {\n const chatId = msg.chat.id;\n bot.sendMessage(chatId, `مرحباً، ${msg.from.first_name}! أنا أول روبوت محادثة لك بلغة JavaScript. كيف يمكنني المساعدة؟`);\n});\n\nbot.on('message', (msg) => {\n const chatId = msg.chat.id;\n const text = msg.text;\n\n // تجاهل الأوامر لتجنب تكرار الرد\n if (text.startsWith('/')) return;\n\n bot.sendMessage(chatId, `لقد كتبت: "${text}". وأنا بوت الصدى!`);\n});\n\n\nنشغل:
\n\nnode bot.js\n\nاكتب للبوت في Telegram — سيرد. تهانينا! لقد أنشأت للتو روبوت محادثة بلغة JavaScript. نعم، إنه غبي حالياً، لكن هذه مجرد البداية.
\n\nالخطوة 4. إضافة المنطق: بوت أسئلة شائعة بسيط
\n\nبوتات الصدى سرعان ما تصبح مملة. دعنا نجعل البوت يرد على أسئلة محددة. هذا يشبه بالفعل روبوت محادثة حقيقي للموقع.
\n\nلننشئ قاعدة معرفة بسيطة على شكل كائن:
\n\nconst faq = {\n 'كيف حالك': 'بخير! وأنت؟',\n 'ماذا تستطيع أن تفعل': 'أستطيع الإجابة على أسئلة بسيطة وسرد النكات.',\n 'احك لي نكتة': 'يمشي