پرش به مطلب اصلی

کلاس Client – هسته اصلی کتابخانه Rubika

کلاس Client نقطه شروع و هسته مرکزی برای ساخت ربات یا کلاینت در کتابخانه Rubika است. این کلاس با ترکیب ماژول‌های Network، Methods، SessionManager و سیستم هندلینگ رویدادها، یک ساختار قدرتمند و منعطف برای تعامل با API روبیکا فراهم می‌کند.

ساختار کلی

class Client extends Methods {
// Properties & Methods
}

ورودی سازنده

constructor(
private session: ClientTypes.SessionType,
public platform: ClientTypes.PlatformType = "Web",
public timeout: number = 5000,
)
  • session: توکن یا رشته نشست برای احراز هویت در روبیکا
  • platform: پلتفرم کلاینت (مثلاً Web, Android)
  • timeout: زمان انتظار برای درخواست‌های شبکه (میلی‌ثانیه)

ویژگی‌ها و اجزای اصلی کلاس

ویژگینوعتوضیح
initializebooleanوضعیت اولیه‌سازی کلاینت (پیش‌فرض: false)
keyBuffer | undefinedکلید عمومی برای رمزنگاری ارتباطات
privateKeystring | undefinedکلید خصوصی کاربر
auth / decode_authstring | undefinedتوکن‌های احراز هویت رمزنگاری شده
sessionDbSessionManagerمدیریت ذخیره و بازیابی نشست‌ها
networkNetworkمدیریت درخواست‌های HTTP و WebSocket
pluginsRubPlugin[]لیست پلاگین‌های فعال شده
errorMiddlewaresErrorMiddleware[]میان‌افزارهای مدیریت خطا
userGuidstring | undefinedشناسه یکتای کاربر در روبیکا
handlersContextMapثبت‌کننده هندلرهای رویدادها (message, chat, error, ...)
loggerLogger<Client>سیستم لاگ‌گیری هوشمند با پشتیبانی از middleware

وظایف کلاس

1. ارتباط با API روبیکا

کلاس network برای ارسال درخواست به API ربات‌ها استفاده می‌شود. مانند دریافت پیام، پاسخ‌دهی، و مدیریت فایل‌ها.

2. سیستم رویدادها (Handler)

هر نوع پیام، مانند message, chat, error, activities, notifications ، می‌تواند مجموعه‌ای از هندلرها داشته باشد که با دریافت پیام یا ارور اجرا می‌شوند.


نتیجه‌گیری

کلاس Bot یکی از ارکان اصلی Rubika است و پایه‌ای برای ساخت ربات‌های پیشرفته روی پلتفرم روبیکا فراهم می‌کند. با استفاده از این کلاس، توسعه‌دهنده‌ها می‌توانند سریعاً یک ربات با قابلیت‌های مختلف ایجاد کنند.