TGViewer
| کانال ربات تلگرام | | کانال ربات تلگرام | @developixrobot · 1.24K subscribers
Post #13 1.68K
‏🤖 دریافت داده‌ها (update) از تلگرام: Webhooks vs Long Polling

‏🗂 ربات‌های تلگرامی به طور کلی به دو دسته تقسیم میشن:

‏◀️ ربات‌هایی که نیازی به دریافت آپدیت ندارند.
‏◀️ ربات‌هایی که نیازمند دریافت از تلگرام هستند.


‏📱 برای هر دو دسته میشه مثال‌هایی ارائه داد:

‏◀️ تصور کنید یک ربات طراحی شده که هر شب در ساعت مشخصی، پیام خاصی رو به کاربرانی ارسال می‌کنه. این ربات نیازی به دریافت آپدیت از تلگرام نداره، چون عملکرد اون مستقل از تعامل با کاربرانه.
‏◀️ اما حالا رباتی رو تصور کنید که منتظره. منتظر کاربری که به عنوان مثال دستور معروف /start رو براش ارسال کنه تا به اون خوش‌آمد بگه. این ربات نیازمند دریافت آپدیت هست، چون عملکرد اون مبتنی بر واکنش کاربران میشه.

‏💡 به این واکنش‌ها یا دستورات کاربران، آپدیت (update) میگیم؛ یعنی همون "واکنش کاربر".

‏🤔 حالا یک سوال مهم مطرح میشه، ربات‌های تلگرامی از چه راه‌هایی می‌تونند به این آپدیت‌ها دسترسی پیدا کنند؟

‏🗂 دو روش اصلی برای این کار وجود داره:

‏◀️ روش Long Polling
‏◀️ روش استفاده از Webhook

‏ℹ️ در این پست، قصد داریم بررسی کنیم که کدوم یک از این دو روش برای شما میتونه مناسب‌تر باشه. اما قبل از مقایسه، لازمه هر دو روش رو به خوبی درک کنیم.


‏📶 روش اول: Long Polling

‏ℹ️ در این روش، فرض میکنیم تلگرام تمامی آپدیت‌های مربوط به ربات ما رو جایی نگه می‌داره تا ربات بتونه اونها رو دریافت کنه و ازش بگیره. حالا ربات ما به طور مداوم از تلگرام درخواست می‌کنه که "آیا آپدیت جدیدی برای من ثبت شده یا نه؟"

‏🎙 اگر آپدیت جدیدی وجود داشته باشه، تلگرام اون رو در اختیار ربات قرار میده و ربات اون رو پردازش میکنه. و باز برای آپدیت های بعدی درخواست میده.
‏🎙 و اگر آپدیتی وجود نداشته باشه، ربات دوباره همون درخواست رو ارسال می‌کند و این چرخه در هر صورت ادامه پیدا می‌کند.

‏💡 به عبارت دیگه، در روش Long Polling، ربات به صورت ۲۴ ساعته و مداوم به تلگرام درخواست میده تا آپدیت‌های جدید رو دریافت کنه. این عمل میتونه از طریق Bot API و متد getUpdates انجام بشه یا مستقیماً از طریق تعامل با MTProto و متد getDifference صورت بگیره.


‏⬇️ روش دوم: استفاده از Webhook

‏ℹ️ در این روش، دیگه نیازی نیست که ربات به طور مداوم از تلگرام درخواست آپدیت کنه. تلگرام خودش آپدیت‌ها رو برای ربات ارسال می‌کنه. برای این کار، ما نیازمند این هستیم یک وب‌سرور راه‌اندازی کنیم و webhook provider رو جوری تنظیم کنیم تا آپدیت‌ها رو برای این وب‌سرور ارسال کنه. این تنظیم در BotAPI از طریق متد setWebhook انجام میشه.

‏💡 به بیان ساده‌تر، در روش استفاده از Webhook، تلگرام وظیفه ارسال آپدیت‌ها رو به عهده میگیره و ربات فقط باید منتظر دریافت آپدیت‌ها باشه.


‏🍔مقایسه Long Polling و Webhook در BotAPI

‏ℹ️ سهولت استفاده
‏◀️ اگر دنبال ساده‌ترین روش باشید، بدون شک Long Polling انتخاب مناسبی‌تری میتونه باشه. تنها کاری که باید انجام بشه، ارسال درخواست به تلگرام برای دریافت آپدیت‌ها رو در قالب یک آرایه‌ست. این روش حتی روی دستگاه شخصی خودتون هم قابل پیاده‌سازی و اجراست و نیازی به داشتن یک hosting عمومی https ندارید.

‏ℹ️ سرعت و عملکرد
‏◀️ اگر سرعت برای شما اهمیت داره، Webhook گزینه بهتری میتونه باشه و همونطور که توضیح داده شد، در این روش آپدیت‌ها توسط تلگرام به ربات ارسال میشن. این ویژگی باعث میشه استفاده از Webhook برای ربات‌های بزرگ، ربات های پرترافیک و ربات هایی که آپدیت های زیادی دریافت می‌کنند مناسب‌تر باشه.


‏💡در نهایت، هر دو روش کاربردی هستند و بسته به پروژه شما می‌تونند به خوبی عمل کنند.

✍️ *ژنرال*

💎 Channel: @DevelopixRobot
  • 👍 8
  • ❤ 4
  • 🔥 3
More from @developixrobot
  1. Sep 18, 2026🔥 پروژه: پچ‌رایت؛ Playwright کم‌تر قابل‌ردیابی پچ‌رایت یک فورک از کتابخانهٔ Playwright بر…
  2. Sep 16, 2026🚀 ‏LaraGram Brain منتشر شد! از این به بعد برای ساخت ربات‌های تلگرام با فریم‌ورک LaraG…
  3. Sep 1, 2026خیلی وقت‌ها ربات لینک می‌فرستد، اما پیش‌نمایش بزرگ صفحه کل کل چت را شلوغ می‌کند 😅 مخصوصاً…
  4. Aug 27, 2026💠 نسخه جدید کتابخانه GrammY منتشر شده است 🔸 ارتقا از نسخه 1.45.1 به 1.46.0 🔖 #grammy, #…
  5. Aug 26, 2026💠 نسخه جدید کتابخانه آیوگرام (Aiogram) منتشر شده است 🔸 ارتقا از نسخه 3.30.0 به 3.31.0 🔖…
  6. Aug 24, 2026🔥 پروژه: ‏TikTok Live Connector برای ربات‌ها کتابخانه Node.js ‏TikTok Live Connec…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →