Telegram · دليل

كيفية استضافة بوت Telegram

آخر تحديث October 11, 2026 5 دقائق قراءة

في هذه الصفحة
  1. الخطوة 1: أنشئ البوت عبر BotFather
  2. Polling أم webhooks؟
  3. الخطوة 2أ: بوت بلغة Python (python-telegram-bot)
  4. الخطوة 2ب: بوت بلغة JavaScript (grammY)
  5. قيود Telegram وقواعده للبوتات
  6. استضافة بوتات Telegram على HytHost
  7. الأسئلة الشائعة

لا يرد بوت Telegram إلا ما دام كوده قيد التشغيل. إذا بنيته على حاسوبك المحمول فسيتوقف عن الرد لحظة دخول الحاسوب في وضع السكون — لذلك يحتاج كل بوت عاجلًا أم آجلًا إلى مكان يبقى قيد التشغيل دائمًا.

يغطي هذا الدليل المسار كاملًا: إنشاء البوت عبر BotFather، والاختيار بين polling وwebhooks، ومثالًا عمليًا بلغة Python وآخر بلغة JavaScript، والقيود والقواعد التي يضعها Telegram، وكيفية إبقاء البوت متصلًا 24/7.

الخطوة 1: أنشئ البوت عبر BotFather

  1. افتح @BotFather في Telegram وأرسل /newbot.
  2. أعطِ البوت اسمًا للعرض، ثم اسم مستخدم: من 5 إلى 32 حرفًا، بأحرف لاتينية وأرقام وشرطات سفلية، وينتهي بـ bot — مثل my_shop_helper_bot.
  3. يرد BotFather بـالرمز (token)، وشكله مثل 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11. من يملكه يتحكم في بوتك، لذا أبقه خارج الكود ولا تشاركه أبدًا. إذا تسرّب، أرسل /token إلى BotFather للحصول على رمز جديد.

أمران آخران من BotFather يستحقان المعرفة: /setcommands يضيف قائمة الأوامر التي يراها المستخدمون عند كتابة /، و/setprivacy يتحكم فيما يراه البوت داخل المجموعات. وضع الخصوصية مفعّل افتراضيًا، فلا يستقبل البوت في المجموعة إلا الأوامر الموجهة إليه والردود على رسائله — ما لم تجعله مشرفًا.

Polling أم webhooks؟

يتلقى البوت رسائله من Telegram بإحدى طريقتين — ولا يمكن الجمع بينهما في الوقت نفسه:

Long pollingWebhook
طريقة العمليسأل البوت Telegram باستمرار عن الرسائل الجديدة عبر اتصال واحد مفتوحيرسل Telegram كل تحديث إلى عنوان HTTPS الخاص بك
المتطلباتاتصال صادر بالإنترنت فقطنطاق وشهادة صالحة والمنفذ 443 أو 80 أو 88 أو 8443
الأنسب لـمعظم البوتات تقريبًا، والأسهل في الاستضافةالبوتات شديدة الانشغال أو منصات serverless

ابدأ بـpolling. لا يحتاج إلى نطاق ولا شهادة ولا منفذ مفتوح، وتدعمه كل المكتبات. إذا سبق تعيين webhook على الرمز، فاستدعِ deleteWebhook أولًا — لا يعمل polling ما دام هناك webhook نشط.

تعمل بوتات polling على استضافة البوتات من HytHost دون أي نطاق أو منفذ مفتوح تحتاج إلى إعداده — Python أو Node.js ابتداءً من €0.89/شهريًا.

عرض خطط استضافة البوتات

الخطوة 2أ: بوت بلغة Python (python-telegram-bot)

يتطلب python-telegram-bot 22 الإصدار Python 3.10 أو أحدث. ثبّته عبر pip install python-telegram-bot وأنشئ bot.py:

import os
from telegram import Update
from telegram.ext import Application, CommandHandler, ContextTypes, MessageHandler, filters

async def start(update: Update, context: ContextTypes.DEFAULT_TYPE) -> None:
    await update.message.reply_text("Hi! Send me a message and I will echo it.")

async def echo(update: Update, context: ContextTypes.DEFAULT_TYPE) -> None:
    await update.message.reply_text(update.message.text)

def main() -> None:
    application = Application.builder().token(os.environ["TELEGRAM_TOKEN"]).build()
    application.add_handler(CommandHandler("start", start))
    application.add_handler(MessageHandler(filters.TEXT & ~filters.COMMAND, echo))
    application.run_polling(allowed_updates=Update.ALL_TYPES)

if __name__ == "__main__":
    main()

aiogram 3 هو الخيار الشائع الآخر في Python، ويتطلب كذلك Python 3.10 أو أحدث.

الخطوة 2ب: بوت بلغة JavaScript (grammY)

grammY هو إطار عمل Telegram لـ Node.js الذي تجري صيانته بنشاط. شغّل npm install grammy وأنشئ bot.js:

const { Bot } = require("grammy");

const bot = new Bot(process.env.TELEGRAM_TOKEN);
bot.command("start", (ctx) => ctx.reply("Welcome! Up and running."));
bot.on("message:text", (ctx) => ctx.reply(ctx.message.text));

process.once("SIGINT", () => bot.stop());
process.once("SIGTERM", () => bot.stop());
bot.start();

تستخدم الشروحات القديمة Telegraf، الذي لم يصدر له أي إصدار منذ فبراير 2024؛ أما للبوت الجديد فـ grammY هو الخيار الأكثر أمانًا.

قيود Telegram وقواعده للبوتات

القيود وفق الأسئلة الشائعة للبوتات لدى Telegram:

  • نحو رسالة واحدة في الثانية في المحادثة الواحدة، و20 رسالة في الدقيقة في المجموعة، ونحو 30 رسالة في الثانية إجمالًا.
  • الملفات: يمكن للبوت إرسال ما يصل إلى 50 MB وتنزيل ما يصل إلى 20 MB.
  • لا يجوز أن تعمل بطريقة polling إلا نسخة واحدة من البوت في الوقت نفسه. تتلقى النسخة الثانية Conflict: terminated by other getUpdates request — استخدم رمزًا منفصلًا للاختبار.

القواعد: تحظر شروط Telegram لمطوري البوتات الرسائل المزعجة والرسائل غير المرغوب فيها والتحايل على حدود المعدل. يحتاج البوت إلى سياسة خصوصية (تُطبَّق سياسة Telegram القياسية إن لم تكتب سياستك الخاصة) ويجب أن يحذف بيانات المستخدم عند طلبه. أتمتة حساب شخصي بدلًا من بوت — ما يُعرف بـ userbot — أمر مختلف تمامًا، ويحظر Telegram الحسابات المستخدمة للإغراق بالرسائل أو الإزعاج.

استضافة بوتات Telegram على HytHost

تشغّل خطط استضافة البوتات لدينا بوتات Telegram كما تشغّل بوتات Discord:

  1. اختر خطة وبيئة التشغيل — Python لـ python-telegram-bot أو aiogram، وNode.js لـ grammY. اختر Python 3.10 أو أحدث، أو إصدارًا حاليًا من Node.js، في تبويب Startup.
  2. ارفع الكود عبر مدير الملفات أو SFTP، مع requirements.txt أو package.json.
  3. ضع الرمز في ملف .env أو في متغير بيئة، لا في الكود.
  4. شغّله. مع polling لا يحتاج البوت إلى نطاق ولا منفذ مفتوح؛ وتعيد لوحة التحكم تشغيله إذا تعطّل.

ما تسمح به قواعدنا: البوتات المبنية على Bot API الرسمي برمز من BotFather. غير مسموح: الـ userbots التي تؤتمت حسابًا شخصيًا، والرسائل الجماعية غير المرغوب فيها، وجمع بيانات المستخدمين أو المجموعات (scraping)، والبوتات التي تنزّل الوسائط وتعيد تمريرها دون امتلاك الحقوق عليها. يُعلَّق أي بوت يخالف هذه القواعد.

تتضمن الخطط قاعدة بيانات MySQL ونسخًا احتياطية. هل تصنع بوت Discord أيضًا؟ راجع كيفية صنع بوت Discord.

أبقِ بوت Telegram متصلًا 24/7 دون حاسوبك: استضافة بوتات Python أو Node.js ابتداءً من €0.89/شهريًا، مع إعادة التشغيل التلقائي.

عرض خطط استضافة البوتات
الأسئلة الشائعة

الأسئلة المتكررة

يمكنك تشغيله على حاسوبك مجانًا، لكنه سينقطع كلما دخل الحاسوب في وضع السكون أو أُعيد تشغيله. غالبًا ما توقف الخطط السحابية المجانية التطبيقات الخاملة مؤقتًا أو تحدّ من استخدامها. لبوت يبقى متصلًا، تبقى استضافة مدفوعة صغيرة الخيار الموثوق.

Polling لمعظم البوتات تقريبًا: لا يحتاج إلى نطاق ولا شهادة ولا منفذ مفتوح. تناسب webhooks البوتات شديدة الانشغال أو منصات serverless، وتحتاج إلى HTTPS على المنفذ 443 أو 80 أو 88 أو 8443. لا يمكن للرمز الواحد استخدام الطريقتين معًا.

أرسل /token إلى @BotFather واختر البوت للحصول على رمز جديد، ثم حدّثه في كل مكان يعمل فيه البوت. احفظ الرمز في متغير بيئة أو ملف .env، ولا تضعه أبدًا في كود تشاركه.

هناك نسختان من البوت تعملان بطريقة polling بالرمز نفسه، مثلًا واحدة على حاسوبك وأخرى على الخادم. أوقف إحداهما، واستخدم بوتًا ورمزًا منفصلين للاختبار.

القليل جدًا. يعمل بوت Python أو Node.js النموذجي الذي يرد على الأوامر عادةً بلا مشاكل على 512 MB؛ أما البوتات التي تعالج الصور أو تحتفظ ببيانات كبيرة في الذاكرة فتحتاج إلى أكثر.

بوت Telegram الخاص بك، متصل 24/7

تشغّل استضافة البوتات من HytHost بوت Telegram المكتوب بـ Python أو Node.js مع إعادة تشغيل تلقائية وقاعدة بيانات MySQL ونسخ احتياطية — ابتداءً من €0.89/شهريًا.

Live chat 8 AM – 11 PM (Chișinău time) · tickets answered during business hours

هل كان هذا الدليل مفيدًا؟