بازگشت به پروژه‌ها
ربات‌های تلگرام پروژه شاخص

Sender Bot — سامانه هوشمند انتقال و مدیریت محتوای تلگرام

سیستم خودکار برای مدیریت و انتقال محتوا بین کانالهای تلگرام، پاکسازی تبلیغات و لینکهای اضافی، اصلاح کانفیگهای VPN و کنترل کامل از طریق پنل تلگرامی.

Python 3.12 Telethon (MTProto) AsyncIO Bot Pool Architecture Content Regex Sanitizer Dynamic Hot-Reload Queue Persistence Telegram Inline Admin Panel
Sender Bot — سامانه هوشمند انتقال و مدیریت محتوای تلگرام cover
**Sender Bot** یک سیستم خودکار برای مدیریت و انتقال محتوا بین کانالهای تلگرام است. فرض کنید چند کانال مختلف دارید که مرتباً در آنها محتوا منتشر میشود و میخواهید مطالب منتخب آنها را به کانال خودتان منتقل کنید؛ اما نمیخواهید هر پست را دستی کپی کنید، تبلیغات و لینکهای اضافی را پاک کنید یا هر بار تنظیمات سیستم را از طریق سرور تغییر دهید. Sender Bot تمام این کارها را به صورت خودکار انجام میدهد. این سیستم **کانالهای مشخصشده را به صورت ۲۴ ساعته بررسی میکند، پیامهای جدید را دریافت میکند، محتوای اضافی و تبلیغاتی را حذف میکند، در صورت نیاز اطلاعات کانفیگهای VPN را اصلاح میکند و در نهایت محتوای آمادهشده را به کانالهای مقصد ارسال میکند.** تمام تنظیمات نیز از طریق یک **پنل مدیریتی داخل تلگرام** قابل کنترل است؛ بنابراین مدیر سیستم برای تغییر فیلترها، اضافه کردن کانال جدید یا مشاهده وضعیت ارسالها، نیازی به ورود به سرور و اجرای دستورات ترمینال ندارد. --- ### این ربات دقیقاً چه کاری انجام میدهد؟ به زبان ساده، روند کار Sender Bot این است: **کانالهای منبع → دریافت محتوا → پاکسازی و بررسی → اصلاح محتوا → ارسال به کانال مقصد** مثلاً یک کانال منبع چنین پیامی منتشر میکند: > 🔥 کانفیگ جدید > VLESS://... > 🔗 @SourceChannel > تبلیغات و لینکهای اضافی... Sender Bot میتواند این پیام را دریافت کند، بخشهای اضافی مانند تبلیغات، لینکها یا آیدی کانال منبع را حذف کند، اطلاعات کانفیگ را مرتب و نامگذاری کند و سپس نسخه تمیزشده را در کانال مقصد منتشر کند. در نتیجه، مدیر کانال مقصد لازم نیست این کارها را به صورت دستی انجام دهد.

صورت مسئله و نیاز سازمان (The Problem)

مدیریت دستی چندین کانال میتواند خیلی سریع خستهکننده و زمانبر شود. تصور کنید مدیر یک شبکه از کانالها هستید و باید هر روز: 1. چندین کانال را بررسی کنید. 2. پستهای جدید را پیدا کنید. 3. مطالب موردنظر را کپی کنید. 4. تبلیغات و لینکهای اضافی را حذف کنید. 5. کانفیگها را اصلاح کنید. 6. محتوا را در کانال خودتان منتشر کنید. 7. این کار را برای دهها یا صدها پست تکرار کنید. Sender Bot این فرآیند را به یک **خط تولید خودکار محتوا** تبدیل میکند: **دریافت → بررسی → پاکسازی → اصلاح → صفبندی → ارسال** در نتیجه، مدیر بیشتر روی مدیریت و تصمیمگیری تمرکز میکند و کارهای تکراری توسط سیستم انجام میشوند.

راه‌حل و قابلیت‌های سامانه (The Solution)

### 📡 دریافت خودکار محتوا سیستم کانالهای منبع مشخصشده را به صورت مداوم بررسی میکند و به محض انتشار محتوای جدید، آن را دریافت و برای پردازش آماده میکند. این محتوا میتواند شامل: * پیام متنی * عکس و ویدیو * فایل و سند * کانفیگهای VPN * سایر رسانههای تلگرام باشد. --- ### 🧹 پاکسازی خودکار محتوا محتوای دریافتشده قبل از انتشار میتواند طبق قوانین تعریفشده پاکسازی شود. برای مثال سیستم میتواند: * لینکهای اضافی را حذف کند * آیدی کانالهای دیگر را حذف کند * هشتگهای مشخص را حذف کند * کلمات خاصی را فیلتر کند * تبلیغات مشخص را حذف کند * بعضی نوع فایلها را مسدود کند بنابراین محتوای نهایی میتواند با قوانین و سبک کانال مقصد هماهنگ باشد. --- ### 🔑 مدیریت خودکار کانفیگهای VPN یکی از قابلیتهای اختصاصی این پروژه، پردازش کانفیگهای VPN است. اگر در یک پیام چند کانفیگ مانند **VLESS، VMess، Trojan یا Shadowsocks** وجود داشته باشد، سیستم میتواند آنها را شناسایی و استخراج کند. همچنین امکان تغییر نام یا **Remark** کانفیگها وجود دارد. برای مثال: **قبل:** `VLESS://...# تبلیغات کانال X` **بعد:** `VLESS://...# Vortex` بدون اینکه اطلاعات اصلی اتصال کانفیگ تغییر کند. --- ### 🚀 ارسال خودکار به چند کانال Sender Bot میتواند محتوا را از چند منبع دریافت کرده و بر اساس تنظیمات، آن را به یک یا چند کانال مقصد ارسال کند. برای هر کانال میتوان تنظیمات جداگانهای مانند: * منبع محتوا * مقصد * نوع محتوای مجاز * فیلترها * فاصله بین ارسالها * ساعات مجاز فعالیت را تعیین کرد. --- ### ⏰ کنترل زمان ارسال لازم نیست محتوا در هر ساعتی منتشر شود. برای هر کانال میتوان مشخص کرد که سیستم چه زمانی اجازه ارسال داشته باشد. مثلاً: **فعالیت از ساعت ۸ صبح تا ۱۱ شب** همچنین میتوان برای جلوگیری از ارسال پشتسرهم، بین پیامها فاصله زمانی مشخص یا تصادفی تعیین کرد. --- ### 💾 از بین نرفتن پیامها هنگام قطعی پیامهایی که در صف ارسال قرار گرفتهاند، در سیستم ذخیره میشوند. بنابراین اگر برای مدتی اینترنت یا سرور قطع شود، پیامهای در انتظار ارسال از بین نمیروند و سیستم میتواند پس از بازگشت سرویس، ارسال آنها را ادامه دهد. --- ### 📱 مدیریت کامل از داخل تلگرام یکی از بخشهای مهم Sender Bot، پنل مدیریت تلگرامی آن است. مدیر سیستم میتواند مستقیماً از داخل تلگرام: * کانال منبع اضافه یا حذف کند * کانال مقصد را مدیریت کند * فیلترهای محتوا را تغییر دهد * کلمات ممنوع را مدیریت کند * قوانین ارسال را تغییر دهد * صف ارسال را بررسی کند * وضعیت سیستم را مشاهده کند و بسیاری از تنظیمات را بدون ورود به سرور تغییر دهد. حتی بسیاری از تغییرات بدون نیاز به **Restart کردن برنامه** اعمال میشوند.

جریان کار و نحوه عملکرد سیستم (System Flow)

در پشت این رابط ساده، Sender Bot از یک معماری ماژولار و غیرهمزمان استفاده میکند. ### Bot Pool برای مدیریت حجم بالای پیامهای متنی، سیستم میتواند از چند Bot مستقل استفاده کرده و بار ارسال را میان آنها توزیع کند. این ساختار کمک میکند محدودیتهای نرخ ارسال تلگرام بهتر مدیریت شوند و ارسال حجم بالای پیامها پایدارتر باشد. ### Hybrid Forwarding برای انواع مختلف محتوا، مسیر ارسال یکسان نیست. سیستم با توجه به نوع پیام میتواند از مسیر مناسب استفاده کند؛ برای مثال پیامهای متنی از Bot Pool عبور کنند و فایلها و رسانههای حجیم از طریق کلاینت MTProto مدیریت شوند. ### Persistent Queue پیامها قبل از ارسال وارد صف میشوند و وضعیت صف روی دیسک ذخیره میشود. بنابراین در صورت قطع موقت سرویس یا شبکه، پیامهای در انتظار ارسال قابل بازیابی هستند. ### Hot Reload تغییر بعضی تنظیمات سیستم بدون توقف سرویس امکانپذیر است. برای مثال مدیر میتواند یک کلمه جدید به لیست فیلتر اضافه کند و تغییرات بدون Restart کامل برنامه اعمال شوند. ### AsyncIO + Telethon هسته سیستم با **Python، AsyncIO و Telethon** ساخته شده تا بتواند تعداد زیادی رویداد و پیام را به صورت همزمان مدیریت کند. --- ### یک مثال واقعی فرض کنید شما صاحب یک کانال هستید و میخواهید محتوای چند کانال دیگر را در کانال خودتان منتشر کنید. یکی از کانالهای منبع این پیام را منتشر میکند: > 🚀 کانفیگ جدید VLESS > > VLESS://... > > 🔥 بهترین کانفیگها در @OtherChannel > 🔗 لینک تبلیغاتی > #VPN #Free Sender Bot میتواند پیام را دریافت کند و طبق قوانین شما: * تبلیغات را حذف کند * آیدی کانال منبع را حذف کند * هشتگهای غیرضروری را حذف کند * کانفیگ VLESS را شناسایی کند * نام کانفیگ را با برند شما جایگزین کند * پیام را وارد صف ارسال کند * در زمان تعیینشده آن را در کانال شما منتشر کند تمام این فرآیند بدون دخالت دستی مدیر انجام میشود.
01 ๐Ÿ“ก

۱. رصد کانال‌های مبدأ

شنود رویدادها و دریافت آنی پیام‌ها، فایل‌ها و پست‌ها از چندین کانال منبع با کلاینت قدرتمند Telethon.

02 ๐Ÿงน

۲. پالایش محتوا و پاک‌سازی

حذف خودکار لینک‌ها، منشن‌ها، هشتگ‌ها، کلمات لیست سیاه و اعمال فیلتر بر اساس نوع محتوا و پسوند فایل.

03 ๐Ÿ”‘

۳. استخراج و ری‌برندینگ VPN

استخراج پروتکل‌های VLESS، VMess، Trojan و Shadowsocks و تغییر خودکار ریمارک کانفیگ با نام برند کاربر.

04 ๐Ÿ’พ

۴. صف پایدار و زمان‌بندی

ذخیره‌سازی پیام‌ها در دیسک، اعمال پنجره زمانی مجاز (ساعات کاری) و تعیین تاخیرهای اختصاصی هر کانال.

05 ๐Ÿš€

۵. ارسال ترکیبی با Bot Pool

توزیع پیام‌های متنی میان استخر بات‌ها برای مهار کامل FloodWait و ارسال مدیا و فایل‌های سنگین با یوزربات.

چالش‌های فنی و نحوه حل آن‌ها (Challenges & Solutions)

دور زدن محدودیت‌های سخت‌گیرانه نرخ ارسال تلگرام (FloodWait Prevention)

صورت چالش

ارسال مکرر پیام‌ها به ویژه در ساعات پیک از یک حساب واحد یا یک ربات، بلافاصله منجر به خطاهای FloodWait (تا چند ساعت انتظار اجباری) یا مسدود شدن اکانت می‌شد.

راهکار پیاده‌شده

طراحی معماری Bot Pool مجهز به الگوریتم توزیع چرخشی (Round-Robin) و تشخیص وضعیت بار هر ربات. در کنار آن، تزریق تاخیرهای شناور و تصادفی برای شبیه‌سازی رفتار انسانی در نظر گرفته شد.

دستاورد: حذف ۱۰۰٪ قطعی‌های ناشی از FloodWait و توانایی انتشار هزاران پست در طول شبانه‌روز بدون کوچک‌ترین ریسک.

مدیریت و اعمال تغییرات سیستمی بدون توقف پایپلاین (Zero-Downtime Hot-Reload)

صورت چالش

در اتوماسیون‌های کانال، اعمال یک فیلتر کلمه جدید یا اضافه کردن یک کانال مبدأ معمولاً نیازمند ریستارت اسکریپت بود که باعث از دست رفتن رویدادهای زنده می‌شد.

راهکار پیاده‌شده

توسعه ماژول اختصاصی Hot-Reload و مانیتورینگ تغییرات فایل‌های کانفیگ YAML/JSON به صورت Non-blocking، همگام با توسعه یک بات ادمین با منوهای دکمه‌ای اینلاین در تلگرام جهت اعمال آنی تغییرات در حافظه و دیسک.

دستاورد: دسترسی ۱۰۰٪ بدون وقفه و امکان مدیریت کامل سیستم از طریق گوشی موبایل ادمین بدون نیاز به دسترسی SSH به سرور.

پارس کردن دقیق پروتکل‌های ارتباطی VPN و بازنویسی متادیتا

صورت چالش

پیام‌های حاوی کانفیگ‌های VLESS، VMess و Trojan اغلب دارای متون به هم ریخته، هدرهای تبلیغاتی و ریمارک‌های طولانی بودند که تفکیک و ری‌برند کردن استاندارد آن‌ها چالش‌برانگیز بود.

راهکار پیاده‌شده

طراحی ماژول تجزیه‌کننده تخصصی (VPN Config Parser) که پارامترهای هر پروتکل را جدا کرده، کاراکترهای خراب را اصلاح و بخش پس از هش (#) را به صورت استاندارد با آیدی برند و کانال جدید جایگزین می‌کند.

دستاورد: انتشار خودکار کانفیگ‌های کاملاً استاندارد، سالم و نشان‌دار با هویت کانال کاربر بدون دخالت دست.

دستاوردها و نتایج کلیدی (Results & Impact)

* **Sender Bot در اصل یک سیستم اتوماسیون برای مدیریت و انتشار محتوای تلگرام است.** * به جای اینکه مدیر دائماً بین کانالهای مختلف جابهجا شود و محتوا را دستی دریافت، ویرایش و منتشر کند، سیستم این فرآیند را به صورت خودکار انجام میدهد. * تمرکز اصلی پروژه روی سه موضوع است: **اتوماسیون انتشار محتوا + پاکسازی هوشمند + مدیریت آسان از داخل تلگرام** * در کنار این قابلیتها، معماری سیستم برای **پایداری، پردازش حجم بالای پیام و مدیریت محدودیتهای ارسال تلگرام** طراحی شده است.