١٠. الإشعارات¶
نصيحة
Webhooks موقّعة بـ X-Vortex-Signature: sha256=... — اضبط secret في env.
Event Bus¶
جميع أحداث النطاق تمر عبر الحافلة الداخلية:
| الحدث | متى |
|---|---|
user.created |
إنشاء مستخدم |
user.deleted |
حذف مستخدم |
user.limited |
تجاوز حد الحركة |
user.expired |
انتهى |
user.reset |
إعادة تعيين الحركة |
user.ip_limit |
مشاركة الحساب |
user.expiry_warning |
3 أيام قبل الانتهاء |
node.down |
العقدة غير قابلة للوصول |
node.up |
تعافت العقدة |
Webhook¶
Payload¶
{
"type": "user.limited",
"time": "2026-06-17T12:00:00Z",
"user_id": "uuid",
"username": "john",
"message": "User john exceeded data limit"
}
التوقيع¶
Header: X-Vortex-Signature: sha256=<hex>
Telegram Notifier¶
تُرسل الأحداث إلى محادثة المسؤول.
Telegram Bot (تفاعلي — Admin)¶
بوت مع long-polling:
| الأمر | الإجراء |
|---|---|
/status |
حالة العقد |
/users |
إحصائيات المستخدمين |
/node <name> |
تفاصيل العقدة |
/limit <user> |
تحديد المستخدم |
Telegram User Bot¶
المستخدمون النهائيون يصادقون برمز الاشتراك:
| الأمر | الإجراء |
|---|---|
/start |
مساعدة |
/login <token> |
ربط الحساب |
/usage |
الاستخدام الحالي |
/sub |
رابط الاشتراك |
Auto-Backup إلى Telegram/S3¶
Settings → Auto Backup
- جدولة (cron-like)
- الوجهة: مستند Telegram أو S3 bucket
- الملف: نسخ احتياطي JSON transactional
SSE (UI)¶
بالإضافة إلى webhooks، الواجهة تشترك في نفس الحافلة عبر SSE — toasts وتحديث تلقائي.