یکی از مهم ترین و حساس ترین مراحل در راه اندازی هر ربات تلگرام، اتصال فایل سورس به سرورهای تلگرام از طریق وب هوک (Set Webhook) است. وب هوک در واقع پلی است که پیام های ارسالی کاربران در تلگرام را بلافاصله به فایل اجرایی ربات شما روی هاست تحویل می دهد و پاسخ ربات را به کاربر برمی گرداند.
بسیاری از کاربران و توسعه دهندگان پس از آپلود سورس ربات روی هاست، با خطاهایی مانند کار نکردن ربات، عدم پاسخ گویی دکمه ها یا ارورهای امنیتی SSL مواجه می شوند. در این مقاله آموزشی کاربردی، به صورت گام به گام یاد می گیرید که چگونه وبهوک ربات تلگرام را به درستی ست کنید، چگونه وضعیت اتصال را بررسی کنید و خطاهای رایج را در چند دقیقه برطرف نمایید.
وب هوک (Webhook) تلگرام چیست و چگونه کار می کند؟
برای دریافت پیام ها از تلگرام دو روش وجود دارد: روش پایش مداوم (Polling) و روش وب هوک (Webhook). در اکثر سورس های نوشته شده با زبان PHP، روش وب هوک به کار می رود. در این روش، شما آدرس اینترنتی فایل ربات خود روی هاست را به تلگرام معرفی می کنید؛ از آن لحظه به بعد، به محض اینکه کاربری به ربات پیام دهد، سرور تلگرام به صورت آنی آن پیام را به هاست شما ارسال می کند.
پیش نیازهای اصلی قبل از ست کردن وبهوک تلگرام
قبل از اینکه دستور ست کردن وبهوک را اجرا کنید، حتما موارد زیر را روی هاست خود بررسی فرمایید:
- فعال بودن گواهی SSL (پروتکل HTTPS): تلگرام به هیچ عنوان آدرس های ناامن (HTTP) را برای وبهوک قبول نمی کند. مطمئن شوید SSL هاست شما فعال است و علامت قفل در کنار آدرس سایت دیده می شود.
- پشتیبانی از نسخه مناسب PHP: اکثر سورس های مدرن به PHP نسخه 8.1 یا بالاتر نیاز دارند.
- مسیر دقیق فایل اصلی ربات: فایل اجرایی ربات معمولا با نام هایی مانند
index.php،bot.phpیاrun.phpدر هاست قرار دارد.
آموزش گام به گام ست کردن دستی وبهوک تلگرام (روش مرورگر)
برای ست کردن دستی وب هوک، کافی است از دستور استاندارد API تلگرام در نوار آدرس مرورگر خود استفاده کنید:
فرمول کلی دستور به شکل زیر است:
https://api.telegram.org/bot<TOKEN>/setWebhook?url=<BOT_URL>
در فرمول بالا:
- به جای
<TOKEN>، توکن ربات خود را که از BotFather دریافت کرده اید قرار دهید (دقت کنید عبارتbotقبل از توکن باید بماند). - به جای
<BOT_URL>، آدرس دقیق فایل ربات خود روی هاست را با پیشوند https وارد کنید.
یک مثال واقعی:
https://api.telegram.org/bot123456789:ABCdefGhIJKlmNoPQRsT/setWebhook?url=https://yourdomain.com/bot.php
پس از فشردن کلید اینتر در مرورگر، اگر همه چیز درست باشد پیامی با فرمت JSON دریافت می کنید:
{"ok":true,"result":true,"description":"Webhook was set"}
مشاهده عبارت "ok":true به این معنی است که وبهوک با موفقیت متصل شده است.
چگونه سلامت و وضعیت وبهوک ربات را بررسی کنیم؟
اگر ربات شما پیام ها را دریافت نمی کند یا مطمئن نیستید وبهوک فعال است یا خیر، می توانید از متد getWebhookInfo استفاده کنید:
https://api.telegram.org/bot<TOKEN>/getWebhookInfo
خروجی این دستور اطلاعات بسیار مهمی به شما می دهد:
url: آدرسی که در حال حاضر به عنوان وبهوک ست شده است.has_custom_certificate: وضعیت گواهی امنیتی.pending_update_count: تعداد پیام هایی که در صف منتظر پاسخ سرور شما هستند (اگر این عدد بزرگ باشد، یعنی هاست شما در پردازش پیام ها کند است).last_error_message: متن آخرین خطایی که تلگرام هنگام ارسال پیام به هاست شما دریافت کرده است.
روش آسان تر و سریع: استفاده از ربات تلگرام وبهوکیو (WebhookioBot@)
اگر نمی خواهید هر بار آدرس های طولانی API تلگرام را در مرورگر تایپ کنید یا نگران اشتباه در وارد کردن توکن و لینک وبهوک هستید، بهترین و امن ترین ابزار برای شما ربات تلگرام وبهوکیو (WebhookioBot@) است.
وبهوکیو یک دستیار کاملا رایگان، تخصصی و فوق العاده سریع برای تمام توسعه دهندگان و دارندگان ربات های تلگرام است که تمام عملیات های مربوط به وب هوک را در قالب دکمه های شیشه ای و با چند کلیک ساده انجام می دهد.
امکانات و قابلیت های کلیدی ربات وبهوکیو:
- ✅ ست کردن آسان وبهوک (Set Webhook): تنها با ارسال توکن و آدرس فایل، وبهوک شما فورا متصل و تایید می شود.
- ✅ حذف سریع وبهوک (Delete Webhook): پاک کردن کامل آدرس قبلی برای انتقال بدون دردسر ربات به هاست دیگر.
- ✅ حذف آپدیت های در حال انتظار (Drop Pending Updates): پاکسازی پیام های انباشته شده و هنگ کرده در صف تلگرام برای بالا آمدن سریع ربات.
- ✅ بررسی لحظه ای وضعیت وبهوک (Get Webhook Info): مشاهده متن آخرین ارورها، آی پی سرور و تعداد پیام های در انتظار.
- ✅ محیط امن و مطمئن: پردازش آنی، کاربری بسیار راحت و حفظ کامل امنیت توکن های شما.
حل خطاهای رایج هنگام ست نشدن وبهوک تلگرام
۱. خطای SSL Certificate Error
اگر تلگرام خطای گواهی SSL داد، یعنی یا روی دامنه شما گواهی امنیتی نصب نیست، یا از گواهی های خودامضا نامعتبر استفاده کرده اید. نصب گواهی رایگان لیتس انکریپت از طریق سی پنل یا کلودفلر این مشکل را حل می کند.
۲. خطای Wrong Response Code 404 یا 500
این خطا نشان می دهد تلگرام آدرس فایل شما را پیدا نکرده (۴۰۴) یا کدهای داخل فایل PHP دارای ارور برنامه نویسی و دیتابیس هستند (۵۰۰). حتما مطمئن شوید فایل در مسیر درستی از هاست (پوشه public_html) آپلود شده است.
۳. خطای Bad Webhook: IP is Banned
در صورتی که هاست شما به دفعات مکرر خطای قطعی دهد، تلگرام موقتا ارتباط با سرور را محدود می کند. استفاده از هاست های پایدار و ضد فیلتر مخصوص ربات تلگرام بهترین راه حل برای جلوگیری از این مشکل است.
سوالات متداول درباره ست کردن وبهوک تلگرام
چرا بعد از ست شدن وبهوک ربات پاسخی نمی دهد؟
ست شدن وبهوک فقط به معنای تایید آدرس توسط تلگرام است. اگر ربات پاسخی نمی دهد، علت آن خطای اتصال دیتابیس، ارور در فایل های پی اچ پی یا عدم فعال سازی دکمه ها در کدهای سورس است.
چگونه وبهوک قبلی را حذف کنیم؟
با ارسال دستور deleteWebhook در مرورگر می توانید وبهوک قبلی را به طور کامل پاک کنید.
نتیجه گیری
ست کردن وب هوک گام نهایی برای به جریان انداختن زندگی در رگ های ربات تلگرام شماست. با رعایت استانداردهای SSL و دقت در مسیردهی فایل ها، می توانید اتصالی پایدار و بدون وقفه ایجاد کنید. اگر به دنبال تجربه ای بی دغدغه و راه اندازی آسان در چند دقیقه هستید، محصولات آماده و تست شده سورس یو با راه انداز هوشمند، بهترین همراه شما در این مسیر خواهند بود.
سورس های کاملا بهینه و سازگار با وبهوک و هاست
تمام سورس های فروشگاه سورس یو بر اساس آخرین متدهای رسمی وبهوک تلگرام برنامه نویسی شده اند و بدون هیچ خطایی روی انواع هاست های لینوکسی فعال می شوند: