پرش به محتویات

مستندات فنی API

مرجع فنی کلاس‌ها، متدها و توابع خروجی ارائه‌شده توسط کتابخانه v2socks.


کلاس V2Socks

کلاس اصلی جهت مدیریت و راه‌اندازی نمونه‌های پروکسی محلی SOCKS5.

سازنده کلاس (Constructor)

V2Socks(config_link: str, port: int = None, verbose: bool = False)
  • config_link: رشته پیوند کانفیگ V2Ray (مانند VLESS/VMess/Trojan).
  • port: پورت اختیاری برای اختصاص به پروکسی محلی. در صورت وارد نکردن یا None بودن، یک پورت خالی به صورت خودکار انتخاب می‌شود.
  • verbose: فعال‌سازی نمایش لاگ‌های پروسه شروع هسته Xray در خروجی ترمینال.

متدها (Methods)

  • start(): اعتبارسنجی کانفیگ، دانلود خودکار هسته Xray (در صورت نبودن) و شروع اجرای پروسه در پس‌زمینه.
  • stop(): متوقف کردن پروسه پس‌زمینه و پاک‌سازی فایل‌های کانفیگ موقت JSON.
  • port() -> int: بازگرداندن پورت محلی فعال شده پروکسی.
  • is_alive() -> bool: بررسی زنده بودن پروسه پس‌زمینه هسته Xray.
  • delay(target="https://www.google.com", timeout=5.0) -> float: اندازه‌گیری تاخیر زمانی پروکسی به آدرس مشخص‌شده بر حسب میلی‌ثانیه.
  • export_config() -> dict: خروجی گرفتن از کل ساختار جیسون کانفیگ تولید شده برای Xray.

ویژگی‌ها (Properties)

  • host: آدرس هاست محلی شنود پروکسی (همیشه "127.0.0.1" است).
  • socks_url: آدرس رشته کامل پروکسی ساکس ۵ (مثال: "socks5://127.0.0.1:10808").

متدهای کلاس (Class Methods)

  • V2Socks.set_core_path(path: str): تنظیم مسیر دستی و سراسری فایل اجرایی هسته Xray در سیستم.
  • V2Socks.is_active(port: int) -> bool: بررسی اینکه آیا کلاینت فعالی روی پورت مورد نظر ثبت شده و در حال اجرا است یا خیر.

توابع مدیریت هسته (Core Functions)

توابع کمکی جهت بررسی وضعیت نسخه‌ها و بروزرسانی دستی هسته Xray.

  • check_updates() -> dict: استعلام آخرین نسخه پایدار از API گیت‌هاب هسته Xray. خروجی دیکشنری شامل فیلدهای:
  • "has_update": مقدار بولی وجود نسخه جدید.
  • "latest_version": تگ آخرین نسخه گیت‌هاب.
  • "local_version": نسخه محلی نصب‌شده روی سیستم.
  • update_core(version: str = None) -> str: پاک‌سازی فایل اجرایی قبلی و دانلود نسخه درخواستی یا آخرین نسخه پایدار منتشر شده گیت‌هاب در صورت None بودن.