Milad Mobaseri
$ cat azadcenter-bot.json

ربات آزاد سنتر: پلتفرم دانشجویی در تلگرام

توسعه ربات تلگرامی

ربات دانشجوهای دانشگاه آزاد کازرون: جزوه و نمونه‌سوال، ارزیابی اساتید، پیشنهاد هوشمند و پرداخت آنلاین. بیش از ۱٬۵۰۰ کاربر، کامل داخل تلگرام.

ربات آزاد سنتر: پلتفرم دانشجویی در تلگرام — 1/7
توسعه ربات تلگرامیپروژه‌ی شخصی

معرفی پروژه

توی دانشگاه، اطلاعات مهم همیشه پراکنده بود: جزوه‌ها توی ده‌ها گروه، شماره‌ی استادها و واحدها دست‌به‌دست، و هر ترم همون سؤال‌ها از اول پرسیده می‌شد. آزاد سنتر برای حل همین مشکل ساخته شد: یه ربات تلگرامی که دانشجوی دانشگاه آزاد کازرون هر چیزی لازم داره رو با یه پیام ازش بگیره.

کتابخونه‌ای که خود دانشجوها می‌سازن. جزوه و نمونه‌سوال بر اساس رشته دسته‌بندی شدن، و هر دانشجویی می‌تونه فایل خودش رو با یه ویزارد مرحله‌به‌مرحله آپلود کنه. هیچ فایلی بدون تأیید ادمین منتشر نمی‌شه، و از هر فروش ۸۵٪ به کیف پول آپلودکننده می‌ره. فایل‌های پولی هم با محافظت از کپی تحویل داده می‌شن.

جستجویی که زبون دانشجو رو می‌فهمه. دانشجو معمولاً کلمه‌ی کلیدی نمی‌نویسه؛ می‌نویسه «جزوه فیزیک ۲ دکتر فلانی برای پایان‌ترم». جستجوی فارسی ربات کلمه‌های بی‌اثر رو کنار می‌ذاره، غلط تایپی رو تحمل می‌کنه و «فیزیک ۲» رو هیچ‌وقت با «فیزیک ۱» قاطی نمی‌کنه. اگه هم چیزی پیدا نشه، اون جستجو ثبت می‌شه تا محتوای کم‌وکسری تأمین بشه و بعداً به همون دانشجو خبر داده بشه.

پیشنهاد و ارزیابی، بر پایه‌ی داده‌ی واقعی. بخش «مخصوص تو» از روی اینکه هم‌رشته‌ای‌ها چی دانلود کردن، جزوه پیشنهاد می‌ده. ارزیابی اساتید هم طوری طراحی شده که قابل‌اعتماد باشه: فقط حساب‌های تأییدشده می‌تونن نظر بدن، نظر کسی که با اون استاد درس داشته وزن بیشتری داره، و هجوم ناگهانی نظر خودکار برای بررسی نگه داشته می‌شه.

همراه دانشجوها، حتی توی گروه. ربات توی گروه دانشجویی هم کار می‌کنه: کسی بپرسه «شماره‌ی امور خوابگاه»، همون لحظه جواب می‌ده، و تبلیغ‌های تکراری رو هم خودکار تشخیص می‌ده و پاک می‌کنه. یه اقتصاد امتیازی به اسم «الماس»، کنار کوییز، قرعه‌کشی و مسابقه، باعث می‌شه دانشجوها به‌جای مصرف‌کننده‌ی صرف، توی ساختن محتوا هم مشارکت کنن.

همه‌ی این‌ها رو یه پنل مدیریت کامل داخل خود تلگرام اداره می‌کنه: صف بررسی فایل‌ها، مدیریت کاربرها و محتوا، پیام همگانی، ساخت مسابقه بدون کدنویسی و گزارش روزانه‌ی خودکار. ربات از ۱۴۰۲ فعاله و نسخه‌ی ۴ با بازنویسی کامل منتشر شده.

نکات کلیدی

  • بیش از ۱٬۵۰۰ کاربر و بیش از ۲٬۸۰۰ دانلود
  • جستجوی فازی فارسی که جمله‌ی کامل رو می‌فهمه
  • ارزیابی اساتید با وزن‌دهی اعتماد و ضد تقلب
  • پیشنهاد هوشمند از روی رفتار واقعی کاربرها
  • پرداخت اتمیک زرین‌پال و درآمد ۸۵٪ برای آپلودکننده
  • پنل مدیریت کامل داخل تلگرام

پیاده‌سازی فنی

ربات با Python و aiogram 3 کاملاً async نوشته شده. کارهای دیتابیس توی یه thread pool جدا اجرا می‌شن و pool اتصال MySQL سقف و صف انتظار داره، تا event loop زیر بار هیچ‌وقت بلاک نشه. بازی‌های گروهی برای هزاران کلیک هم‌زمان طراحی شدن: پاسخ‌ها اول توی حافظه ثبت و بعد دسته‌ای ذخیره می‌شن.

هر جا پای پول یا امتیاز وسطه، منطق اتمیکه. پرداخت زرین‌پال با یه ماشین حالت پیاده شده که هیچ سفارشی رو دو بار تحویل نمی‌ده، و اگه ربات وسط پرداخت ری‌استارت بشه، یه watcher مبتنی بر دیتابیس تحویل رو کامل می‌کنه. هر تغییر موجودی الماس هم توی یه دفتر کل (Ledger) ثبت می‌شه و قابل ردیابیه.

جستجو بر پایه‌ی یکسان‌سازی متن فارسی و rapidfuzz ساخته شده، و پیشنهادها با collaborative filtering (شباهت کسینوسی) زیر ۵۰ میلی‌ثانیه محاسبه می‌شن. ماژول‌های حساس self-test دارن، و یه شبیه‌ساز end-to-end سناریوهای واقعی رو با چند کاربر از مسیر واقعی ربات اجرا می‌کنه. اجرا روی VPS لینوکس با systemd، بکاپ روزانه‌ی خودکار، و مانیتورینگ کندی انجام می‌شه.