انتقل إلى المحتوى

إدارة المستخدمين

النموذج المحوره المستخدم

مستخدم واحد = توكن اشتراك واحد = وصول لجميع الاتصالات الواردة المُعيَّنة عبر جميع العقد. لا حاجة لحسابات منفصلة لكل بروتوكول.


العمليات الأساسية (CRUD)

إنشاء مستخدم

المستخدمون → مستخدم جديد

الحقل الوصف
اسم المستخدم معرّف فريد
حدّ البيانات سقف الحركة (بايت) — 0 = غير محدود
انتهاء الصلاحية تاريخ انتهاء الاشتراك
حدّ الأجهزة أقصى عدد أجهزة متزامنة
استراتيجية إعادة التعيين none / daily / weekly / monthly
الحالة active / disabled / limited
الاتصالات الواردة الاتصالات المسموحة (اختر واحداً أو أكثر)
ملاحظة ملاحظة للمسؤول فقط

العمليات الجماعية

الإجراء الوصف
إنشاء جماعي المستخدمون → إضافة جماعية — حدد العدد أو ارفع CSV
تحديد متعدد حدد عدة مستخدمين بمربعات الاختيار → طبّق الإجراء
إجراءات جماعية تفعيل، تعطيل، حذف، تمديد، إعادة تعيين الحركة
استيراد المستخدمون → استيراد — من قاعدة بيانات 3x-ui أو Marzban

الحصص والحدود

حدّ البيانات

تعيين سقف حركة لكل مستخدم. عند تجاوزه، تتغير حالة المستخدم إلى limited ويُطلق حدث user.limited.

حدّ الأجهزة

أقصى عدد اتصالات متزامنة (عناوين IP مميزة). يتولى التنفيذ نظام حدّ IP.

انتهاء الصلاحية

ينتهي المستخدمون في التاريخ المحدد. يُطلق النظام حدث user.expiry_warning قبل 3 أيام وحدث user.expired عند الانتهاء.

استراتيجية إعادة التعيين

الاستراتيجية السلوك
none لا يُعاد التعيين أبداً — الحركة تتراكم للأبد
daily إعادة تعيين عند منتصف الليل UTC
weekly إعادة تعيين كل إثنين عند منتصف الليل UTC
monthly إعادة تعيين في الأول من كل شهر عند منتصف الليل UTC

تسليم الاشتراك

رابط الاشتراك

يحصل كل مستخدم على رابط اشتراك فريد:

https://panel.example.com/sub/{token}

تُكتشف صيغة الاستجابة تلقائياً من User-Agent العميل، أو تُفرض بـ ?format=:

الصيغة المعامل المخرجات
Base64 ?format=base64 روابط مشفرة بـ base64 متوافقة مع V2Ray
Clash ?format=clash إعداد Clash بصيغة YAML
sing-box ?format=singbox إعداد sing-box بصيغة JSON
Xray JSON ?format=xray JSON خام لعميل Xray/V2Ray
Outline ?format=outline روابط ss:// لـ Shadowsocks لتطبيق Outline
روابط نصية ?format=links روابط مشاركة بنمط V2rayN، سطر لكل رابط

مضيفات الاشتراك

تجاوزات لكل اتصال وارد تغيّر ما يعلنه الاشتراك — بدون لمس إعداد النواة الحيّة.

الحقل الوصف
الاسم المعروض اسم العرض (يدعم متغيرات القالب)
العنوان المضيف/IP المُعلَن (مثل نطاق CDN)
المنفذ تجاوز المنفذ (0 = وراثة)
SNI اسم خادم TLS
المضيف ترويسة HTTP Host
المسار مسار WS/HTTPUpgrade/gRPC
ALPN مفصولة بفواصل (مثل h2,http/1.1)
البصمة بصمة uTLS (مثل chrome)
الأمان inbound_default، none، tls، أو reality
السماح بغير الآمن تخطي التحقق من الشهادة
Mux تفعيل تعدد الإرسال
التجزئة مواصفات تجزئة TLS (مثل 1,40-60,30-50)
الأولوية الترتيب داخل الاتصال الوارد (الأقل يُعرض أولاً)

متغيرات القالب — تُعرض لكل مستخدم:

المتغير يُوسَّع إلى
{USERNAME} اسم المستخدم
{SERVER_IP} عنوان العقدة
{SERVER_PORT} المنفذ المُعلَن
{PROTOCOL} بروتوكول الاتصال الوارد
{NETWORK} نوع النقل
{SECURITY} أمان النقل
{REMARK} الاسم المعروض المحدد

Tip

استخدم مضيفات الاشتراك لوضع اتصال وارد واحد خلف عدة نطاقات CDN، كل منها بـ SNI ومسار مختلف — كل ذلك من تعريف مضيف واحد باستخدام متغيرات القالب.


بوابة الخدمة الذاتية

رابط المستخدم: /portal/login

يسجّل المستخدمون الدخول بتوكن اشتراكهم ويصلون إلى:

الميزة الوصف
لوحة معلومات إحصائيات الاستخدام، البيانات/الوقت المتبقي، الأجهزة النشطة
الخطط تصفح وشراء خطط الاشتراك (من متجر الموزّع)
التذاكر فتح تذاكر دعم، الرد على رسائل المسؤول
الإحالة عرض/مشاركة رمز الإحالة، رؤية المكافآت المكتسبة
رمز QR المسح لاستيراد الاشتراك في تطبيقات الهاتف

متجر الخدمة الذاتية

الرابط: /sub/{token}/shop

يُعدّ كل موزّع خططه الخاصة وطرق الدفع. يرى المستخدمون فقط عروض موزّعهم:

  1. يتصفح المستخدم الخطط المتاحة
  2. يختار خطة وطريقة دفع (ZarinPal، تحويل بطاقة، أو عملات رقمية)
  3. يُكمل الدفع (أو يرفع الإيصال)
  4. يُنفَّذ الطلب تلقائياً (ZarinPal) أو بعد موافقة المسؤول (بطاقة/عملات رقمية)

انظر الخطط والمدفوعات للتفاصيل الكاملة.


الاشتراكات العائلية/الجماعية

المستخدمون → المجموعات العائلية

اسمح للمستخدمين بمشاركة حصة بيانات:

  1. أنشئ مجموعة عائلية بحدّ بيانات مشترك
  2. أضف مستخدمين حاليين كأعضاء
  3. حركة كل عضو تُسحب من الحصة المشتركة
  4. سقف اختياري لكل عضو ضمن الحصة المشتركة
الحقل الوصف
الاسم اسم المجموعة
المالك الحساب الرئيسي
حدّ البيانات الحصة المشتركة الإجمالية
أقصى أعضاء الحدّ (افتراضي: 5)
حصة العضو سقف لكل عضو ضمن الحصة

الحصة الذكية (Smart Quota)

تقليل تدريجي للسرعة بدلاً من قطع المستخدمين فجأة عند حدّهم.

اضبط المستويات كـ JSON:

[
  { "threshold_pct": 80, "action": "warn", "speed_limit": 0 },
  { "threshold_pct": 95, "action": "throttle", "speed_limit": 524288 },
  { "threshold_pct": 100, "action": "disable" }
]
  • عند 80% → تحذير المستخدم (حدث إشعار)
  • عند 95% → تقييد السرعة إلى 512 كيلوبايت/ثانية
  • عند 100% → تعطيل الحساب

Info

تُضبط الحصة الذكية لكل خطة أو عالمياً. إعدادات الخطة تتجاوز الافتراضي العام.


نظام الإحالة

المستخدمون → الإحالات

الإعداد الوصف الافتراضي
مفعّل تشغيل/إيقاف الإحالات معطّل
نوع المكافأة data (جيجابايت إضافية) أو days (وقت إضافي) data
مقدار المكافأة المقدار لكل إحالة 1 جيجابايت
أقصى إحالات الحدّ لكل مستخدم (0 = غير محدود) 0
يتطلب دفع مكافأة فقط للإحالات المدفوعة معطّل
مكافأة الطرفين مكافأة المُحيل + المستخدم الجديد نعم

يصل المستخدمون لرمز الإحالة عبر البوابة. عندما يسجّل صديق باستخدام الرمز، يُكافأ الطرفان.


قوالب الإعدادات

تخصيص مخرجات Clash/sing-box التي يتلقاها المستخدمون في اشتراكهم:

  • إضافة قواعد توجيه مخصصة (حظر الإعلانات، حركة محلية مباشرة)
  • تكوين إعدادات DNS
  • تعيين استراتيجيات مجموعة البروكسي (url-test، fallback، load-balance)
  • قوالب لكل مستخدم أو عالمية

الروابط العميقة ورموز QR

النظام → الروابط العميقة

إنشاء روابط اشتراك عميقة لإعداد التطبيق بلمسة واحدة:

الإعداد الوصف
الرابط الأساسي الرابط العام للوحة التحكم
مخطط التطبيق مخطط URL للتطبيقات الأصلية
تضمين الاسم إضافة معرّف الخادم للرابط
شعار QR شعار مخصص في مركز رمز QR

الاستيراد من لوحات أخرى

المستخدمون → استيراد

ترحيل المستخدمين من:

  • 3x-ui — قدّم مسار ملف قاعدة البيانات
  • Marzban — قدّم سلسلة اتصال قاعدة البيانات أو ملف التصدير

يُعيّن المستورد المستخدمين، مع الحفاظ على أسماء المستخدمين وحدود الحركة وتواريخ الانتهاء.