بوت تيليجرام بلغة جافا: من أين تبدأ وكيف لا تستسلم في منتصف الطريق
هل سبق لك أن أردت كتابة بوت تيليجرام خاص بك، لكنك اعتقدت أن الأمر صعب للغاية؟ أسارع إلى إسعادك: إنشاء بوت تيليجرام بلغة جافا هي مهمة يمكن حتى للمبتدئين التعامل معها. لا سحر، فقط خطة واضحة وقليل من الكود.
في هذا الدليل، سنقطع الطريق بأكمله من تسجيل البوت في تيليجرام إلى نشر التطبيق النهائي. ستتعلم كيفية ربط مكتبة TelegramBots، ومعالجة الأوامر، وإرسال الرسائل، وتجنب الأخطاء النموذجية. في النهاية - قالب جاهز يمكنك تكييفه مع مهامك.
لماذا جافا تحديداً؟ هذه اللغة توفر الاستقرار والأداء وعدداً هائلاً من الحلول الجاهزة. بالنسبة لـ بوت تيليجرام بلغة جافا لا تحتاج إلى تثبيت عشرات التبعيات - كل شيء يتسع في مشروع Maven/Gradle واحد. هيا بنا!
الخطوة 1: تسجيل البوت والحصول على التوكن
قبل كتابة الكود، يجب "ولادة" البوت. يتم ذلك من خلال البوت الرئيسي في تيليجرام - BotFather.
قم بتشغيل BotFather في تيليجرام وأرسل الأمر:
/newbotثم اتبع التعليمات: اختر اسماً (سيظهر للمستخدمين) واسم مستخدم (يجب أن ينتهي بـ _bot). بعد الإنشاء الناجح، ستحصل على توكن - سلسلة طويلة من النوع:
1234567890:ABCdefGHIjklmNOPqrstUVwxyz-1234567هام: التوكن هو مفتاح البوت الخاص بك. لا تظهره لأي شخص، ولا تقم بتحميله إلى المستودعات العامة. من الأفضل تخزينه في متغيرات البيئة أو ملفات التكوين.
الخطوة 2: إنشاء المشروع وربط التبعيات
سنستخدم Maven - هذا مريح ومعياري لمشاريع جافا. إذا كنت تفضل Gradle - المبدأ هو نفسه، فقط أعد كتابة التبعيات حسب تنسيقك.
قم بإنشاء مشروع جافا عادي في بيئة التطوير الخاصة بك (IntelliJ IDEA، Eclipse أو NetBeans) وافتح ملف pom.xml. أضف إليه التبعية التالية:
<dependency> <groupId>org.telegram</groupId> <artifactId>telegrambots</artifactId> <version>6.9.7.1</version></dependency>هذه المكتبة - TelegramBots - هي الأكثر شيوعاً لإنشاء البوتات بلغة جافا. تدعم جميع الوظائف الأساسية: إرسال الرسائل والصور والأزرار والعمل مع وضع Inline و Webhooks.
بعد إضافة التبعية، قم بتشغيل mvn clean install أو قم بتحديث المشروع في بيئة التطوير لتحميل المكتبة.
الخطوة 3: كتابة أول بوت - الفئة الأساسية
قم بإنشاء فئة ترث من TelegramLongPollingBot. هذه الفئة ستكون مسؤولة عن استقبال التحديثات من خوادم تيليجرام. إليك الهيكل الأدنى:
import org.telegram.telegrambots.bots.TelegramLongPollingBot;import org.telegram.telegrambots.meta.api.objects.Update;import org.telegram.telegrambots.meta.exceptions.TelegramApiException;
public class MySimpleBot extends TelegramLongPollingBot {
@Override public String getBotUsername() { return "YourBotUsername"; // بدون @ }
@Override public String getBotToken() { return "YOUR_TOKEN_HERE"; }
@Override public void onUpdateReceived(Update update) { // هنا سنقوم بمعالجة الرسائل if (update.hasMessage() && update.getMessage().hasText()) { String messageText = update.getMessage().getText(); long chatId = update.getMessage().getChatId(); System.out.println("تم استلام رسالة: " + messageText + " من الدردشة: " + chatId); } }}حتى الآن، البوت يقوم فقط بتسجيل الرسائل الواردة. دعنا نضيف إجراء رد.
الخطوة 4: إرسال الرد - البوت يبدأ في التحدث
لكي يرد البوت، نستخدم الفئة SendMessage. سنضيف معالجة الأمر