يُعد إنشاء روبوت تليجرام (Telegram Bot) نقطة انطلاق ممتازة لأي شخص يرغب في استكشاف عالم الأتمتة والتفاعل البرمجي مع منصة تليجرام. في هذا المقال، سنتعلم كيفية بناء روبوت "Echo Bot" بسيط باستخدام لغة بايثون ومكتبة
ما هو روبوت Echo Bot؟
روبوت Echo Bot هو أبسط أنواع الروبوتات، حيث يقوم ببساطة بإعادة إرسال نفس الرسالة التي يتلقاها من المستخدم. على سبيل المثال، إذا أرسلت له "مرحباً"، فإنه سيرد عليك بـ "مرحباً". هذا يساعد في فهم كيفية استقبال الرسائل والرد عليها برمجياً.
المتطلبات الأساسية
قبل البدء، ستحتاج إلى توفير الآتي:
1. بايثون 3.x: تأكد من تثبيت بايثون على جهازك. يمكنك التحقق من ذلك بكتابة
2. pip: مدير حزم بايثون، وعادة ما يأتي مثبتاً مع بايثون.
3. توكن (Token) لروبوت تليجرام: وهو مفتاح فريد لروبوتك، تحصل عليه من BotFather.
الخطوة 1: الحصول على توكن الروبوت من BotFather
BotFather هو الروبوت الرسمي من تليجرام الذي يساعدك في إنشاء وإدارة روبوتاتك.
1. افتح تطبيق تليجرام وابحث عن
2. ابدأ محادثة معه واكتب الأمر
3. سيطلب منك BotFather اختيار اسم لروبوتك (مثلاً: "My First Echo Bot").
4. بعد ذلك، سيطلب منك اختيار اسم مستخدم (Username) لروبوتك، والذي يجب أن ينتهي بـ
5. بعد إدخال اسم المستخدم، سيقوم BotFather بإنشاء روبوتك ويزودك بـ "HTTP API Token" الخاص به. احفظ هذا التوكن جيداً، فهو مفتاح الوصول لروبوتك. سيبدو التوكن شيئاً مثل
الخطوة 2: إعداد بيئة العمل وتثبيت مكتبة
افتح الطرفية (Terminal أو Command Prompt) وقم بتثبيت المكتبة باستخدام
الخطوة 3: كتابة كود الروبوت
الآن، قم بإنشاء ملف بايثون جديد (مثلاً
شرح الكود:
1.
2.
3.
*
*
*
*
*
4.
*
5.
*
*
6.
*
*
*
*
الخطوة 4: تشغيل الروبوت
بعد حفظ الملف، افتح الطرفية وانتقل إلى المجلد الذي حفظت فيه الملف، ثم قم بتشغيل الكود:
أو إذا كان لديك بايثون 2 و 3 مثبتين:
سيقوم الروبوت بالبدء والاستماع للرسائل. الآن، افتح تليجرام وابحث عن اسم المستخدم الخاص بروبوتك الذي أنشأته (مثلاً
الخطوات التالية
لقد نجحت في بناء وتشغيل أول روبوت تليجرام لك! هذا مجرد بداية. يمكنك الآن البناء على هذا الأساس لإضافة المزيد من الميزات، مثل:
أتمنى أن يكون هذا الدليل قد فتح لك آفاقاً جديدة في عالم تطوير روبوتات تليجرام!
python-telegram-bot. وظيفة هذا الروبوت هي إعادة إرسال أي رسالة نصية يتلقاها، مما يجعله مثالاً تعليمياً ممتازاً للمبتدئين.ما هو روبوت Echo Bot؟
روبوت Echo Bot هو أبسط أنواع الروبوتات، حيث يقوم ببساطة بإعادة إرسال نفس الرسالة التي يتلقاها من المستخدم. على سبيل المثال، إذا أرسلت له "مرحباً"، فإنه سيرد عليك بـ "مرحباً". هذا يساعد في فهم كيفية استقبال الرسائل والرد عليها برمجياً.
المتطلبات الأساسية
قبل البدء، ستحتاج إلى توفير الآتي:
1. بايثون 3.x: تأكد من تثبيت بايثون على جهازك. يمكنك التحقق من ذلك بكتابة
python --version أو python3 --version في الطرفية.2. pip: مدير حزم بايثون، وعادة ما يأتي مثبتاً مع بايثون.
3. توكن (Token) لروبوت تليجرام: وهو مفتاح فريد لروبوتك، تحصل عليه من BotFather.
الخطوة 1: الحصول على توكن الروبوت من BotFather
BotFather هو الروبوت الرسمي من تليجرام الذي يساعدك في إنشاء وإدارة روبوتاتك.
1. افتح تطبيق تليجرام وابحث عن
@BotFather.2. ابدأ محادثة معه واكتب الأمر
/newbot.3. سيطلب منك BotFather اختيار اسم لروبوتك (مثلاً: "My First Echo Bot").
4. بعد ذلك، سيطلب منك اختيار اسم مستخدم (Username) لروبوتك، والذي يجب أن ينتهي بـ
bot (مثلاً: MyFirstEcho_bot).5. بعد إدخال اسم المستخدم، سيقوم BotFather بإنشاء روبوتك ويزودك بـ "HTTP API Token" الخاص به. احفظ هذا التوكن جيداً، فهو مفتاح الوصول لروبوتك. سيبدو التوكن شيئاً مثل
1234567890:ABCDEFGHIJKLMN_OPQRSTUVWXYZabcdefghijk.الخطوة 2: إعداد بيئة العمل وتثبيت مكتبة
python-telegram-botافتح الطرفية (Terminal أو Command Prompt) وقم بتثبيت المكتبة باستخدام
pip:
Bash:
محتوای بلوک کدها در دسترس شما نیست. برای مشاهده بلوک کدها، وارد انجمن شوید یاثبت نام کنید
الخطوة 3: كتابة كود الروبوت
الآن، قم بإنشاء ملف بايثون جديد (مثلاً
echo_bot.py) والصق الكود التالي فيه:
Python:
محتوای بلوک کدها در دسترس شما نیست. برای مشاهده بلوک کدها، وارد انجمن شوید یاثبت نام کنید
شرح الكود:
1.
import logging: لتسجيل الأحداث والأخطاء.2.
from telegram import Update: يمثل تحديثًا من تليجرام (مثل رسالة جديدة).3.
from telegram.ext import Application, CommandHandler, MessageHandler, filters, ContextTypes: هذه هي المكونات الأساسية لبناء الروبوت:*
Application: الكائن الرئيسي الذي يدير الروبوت.*
CommandHandler: لمعالجة الأوامر التي تبدأ بـ / (مثل /start).*
MessageHandler: لمعالجة أنواع معينة من الرسائل (مثل النصوص، الصور، المستندات).*
filters: لتصفية أنواع الرسائل التي نريد معالجتها.*
ContextTypes: لتوفير أنواع السياق للاستخدام المتزامن (async).4.
start(update, context): هذه دالة غير متزامنة (async) يتم استدعاؤها عندما يرسل المستخدم الأمر /start.*
update.message.reply_text(...): ترسل ردًا نصيًا إلى المستخدم.5.
echo(update, context): هذه دالة غير متزامنة يتم استدعاؤها عندما يرسل المستخدم رسالة نصية عادية.*
update.message.text: يحتوي على نص الرسالة المرسلة من المستخدم.*
update.message.reply_text(update.message.text): تعيد إرسال نفس النص إلى المستخدم.6.
main(): الدالة الرئيسية التي تقوم بتهيئة وتشغيل الروبوت:*
application = Application.builder().token("YOUR_BOT_TOKEN").build(): ينشئ كائن Application باستخدام التوكن الخاص بك. تأكد من استبدال "YOUR_BOT_TOKEN" بالتوكن الفعلي الخاص بك!*
application.add_handler(CommandHandler("start", start)): يضيف معالجًا للأمر /start، وعند تلقيه سيتم استدعاء دالة start.*
application.add_handler(MessageHandler(filters.TEXT & ~filters.COMMAND, echo)): يضيف معالجًا للرسائل النصية. filters.TEXT يضمن أن الروبوت يستجيب للرسائل النصية فقط، و~filters.COMMAND يتجاهل الأوامر التي تبدأ بـ /.*
application.run_polling(allowed_updates=Update.ALL_TYPES): يبدأ الروبوت في الاستماع للتحديثات (الرسائل، الأوامر، إلخ) من تليجرام. allowed_updates=Update.ALL_TYPES يسمح بمعالجة جميع أنواع التحديثات.الخطوة 4: تشغيل الروبوت
بعد حفظ الملف، افتح الطرفية وانتقل إلى المجلد الذي حفظت فيه الملف، ثم قم بتشغيل الكود:
Bash:
محتوای بلوک کدها در دسترس شما نیست. برای مشاهده بلوک کدها، وارد انجمن شوید یاثبت نام کنید
أو إذا كان لديك بايثون 2 و 3 مثبتين:
Bash:
محتوای بلوک کدها در دسترس شما نیست. برای مشاهده بلوک کدها، وارد انجمن شوید یاثبت نام کنید
سيقوم الروبوت بالبدء والاستماع للرسائل. الآن، افتح تليجرام وابحث عن اسم المستخدم الخاص بروبوتك الذي أنشأته (مثلاً
@MyFirstEcho_bot).- ابدأ محادثة مع الروبوت واضغط على زر "Start" أو أرسل الأمر
/start. يجب أن يرد عليك الروبوت برسالة الترحيب. - أرسل أي رسالة نصية أخرى (مثل "كيف حالك؟"). يجب أن يرد الروبوت بنفس الرسالة.
الخطوات التالية
لقد نجحت في بناء وتشغيل أول روبوت تليجرام لك! هذا مجرد بداية. يمكنك الآن البناء على هذا الأساس لإضافة المزيد من الميزات، مثل:
- معالجة أنواع مختلفة من الرسائل (صور، فيديوهات، مستندات).
- إنشاء أوامر مخصصة للقيام بمهام محددة.
- التفاعل مع واجهات برمجة تطبيقات (APIs) خارجية لجلب البيانات (مثل الطقس، الأخبار).
- استخدام لوحات المفاتيح المخصصة (Custom Keyboards) أو لوحات المفاتيح المضمنة (Inline Keyboards).
أتمنى أن يكون هذا الدليل قد فتح لك آفاقاً جديدة في عالم تطوير روبوتات تليجرام!