MadelineProto چه فرقی با ربات معمولی دارد
ربات معمولی با Bot API کار می کند: تلگرام پیام را به آدرس شما می فرستد و اسکریپت جواب می دهد. MadelineProto پروتکل MTProto را مستقیم پیاده می کند و به جای ربات می تواند با حساب کاربری هم کار کند. این یعنی اتصال پایدار با تلگرام و پروسه ای که زنده می ماند و داده نشست را روی دیسک نگه می دارد.
به همین دلیل این هاست جدا از پلن عادی تلگرام است. تنظیمات آن برای MadelineProto آماده شده و محدودیت پروسه و اتصال بالاتری دارد. سرورها در هلند و آلمان هستند و PHP و سی پنل در اختیار شماست.
قبل از خرید این سوال ها را جواب دهید
همه پروژه های تلگرامی به MadelineProto نیاز ندارند. اگر فقط پیام دریافت می کنید و جواب می دهید، Bot API ساده تر و سبک تر است. مقاله MadelineProto یا Bot API این مقایسه را کامل تر آورده است.
- آیا باید فایل بزرگ تر از حد مجاز ربات ها را بفرستید یا بگیرید؟
- آیا کارتان به خواندن پیام های یک کانال یا گروه با حساب کاربری نیاز دارد؟
- آیا ربات باید پیام ها را بدون وب هوک و به شکل لحظه ای بخواند؟
- آیا حاضرید نسخه PHP و افزونه های لازم را خودتان در سی پنل کنترل کنید؟
نصب را به این ترتیب انجام دهید
از مدیریت نسخه PHP در سی پنل شروع کنید و نسخه ای را بگذارید که نسخه MadelineProto شما پشتیبانی می کند. با php -v در ترمینال مطمئن شوید. بعد کد را در یک پوشه خارج از public_html بگذارید تا فایل نشست از وب در دسترس نباشد.
اولین اجرا را از ترمینال انجام دهید، نه از مرورگر. ورود با شماره و کد تایید همان جا انجام می شود و خطاها مستقیم دیده می شوند. راهنمای کامل در نصب MadelineProto روی سی پنل آمده است.
فایل نشست مثل رمز عبور است. هر کس آن را داشته باشد می تواند به حساب دسترسی پیدا کند. مجوز آن را محدود کنید، آن را در مخزن گیت نگذارید و نسخه پشتیبان آن را جدا نگه دارید.
روی هاست اشتراکی، راه معمول این است که اسکریپت با Cron Jobs هر چند دقیقه یک بار بررسی کند که پروسه اصلی زنده است یا نه و اگر نبود دوباره راه بیندازد. برای این کار یک فایل قفل بسازید که دو نمونه همزمان بالا نیایند. بدون قفل ممکن است دو پروسه با یک نشست وصل شوند و تلگرام نشست را باطل کند.
بعد از هر بار تنظیم، چند ساعت لاگ را نگاه کنید. اگر پروسه مرتب قطع می شود، قبل از ارتقای پلن ببینید مصرف رم و I/O در سی پنل به سقف می رسد یا نه. جزئیات تنظیم کران را در راه اندازی کران جاب ببینید.
یک مثال واقعی از برآورد
فرض کنید یک ابزار داریم که چند کانال را با حساب کاربری زیر نظر می گیرد و پیام های جدید را در دیتابیس MySQL ذخیره می کند. بار اصلی آن اتصال دائمی است، نه پردازش. اگر تعداد کانال ها کم است، هاست مدلاین کافی است. اگر پروژه رشد کرد و باید ده ها حساب را همزمان مدیریت کنید، منابع هر پروسه جمع می شود و باید به سرور جدا فکر کنید.
پیش از هر چیز، با یک حساب آزمایشی و یک کانال کوچک ابزار را چند روز اجرا کنید. این کار نشان می دهد مشکلی در نشست، محدودیت نرخ تلگرام یا قطع شدن پروسه وجود دارد یا نه.
اشتباه های رایج هنگام راه اندازی
رایج ترین اشتباه این است که پوشه نشست داخل public_html ساخته می شود. اگر مجوزها درست نباشد، فایل ها از راه آدرس مستقیم قابل دانلودند. پوشه را بیرون از ریشه وب بسازید و مجوز آن را فقط برای کاربر خودتان باز بگذارید.
اشتباه دوم اجرای همزمان همان اسکریپت از مرورگر و از ترمینال است. هر دو به نشست نوشتن می خواهند و با هم تداخل می کنند. یک روش را انتخاب کنید و بقیه را غیرفعال کنید. اشتباه سوم این است که بعد از تغییر نسخه PHP، کتابخانه ها را دوباره نصب نمی کنند و با خطاهای افزونه مواجه می شوند. بعد از هر تغییر نسخه، composer install را دوباره اجرا کنید و php -m را برای افزونه های لازم نگاه کنید.
برای نگهداری، با ابزارهای سی پنل خودتان پشتیبان بگیرید و یک نسخه از فایل نشست را هم جداگانه ذخیره کنید، چون بازسازی نشست از اول نیازمند ورود دوباره با کد تایید است.
چه زمانی این محصول مناسب نیست
اگر فقط یک ربات ساده با وب هوک دارید، هاست ربات تلگرام ارزان تر و کم دردسر تر است. اگر به اجرای چندین پروسه دائمی، کنترل systemd یا نصب نرم افزار سیستمی نیاز دارید، سرور ابری هلند با دسترسی کامل مناسب تر است. توجه کنید که کار با حساب کاربری تلگرام قوانین خود تلگرام را دارد و مسئولیت آن با شماست.
مقاله های مرتبط
آخرین بروزرسانی متن: