Spaces:
Running
Running
File size: 4,044 Bytes
8da9d7a |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 |
# نظام العمل في الخلفية
## نظرة عامة
يوفر هذا النظام إمكانية تشغيل التطبيق كخدمة خلفية دون إظهار واجهات تفاعلية إلا عند الحاجة. مناسب للخوادم والأجهزة التي تعمل على مدار الساعة.
## المكونات الجديدة
### 1. خدمة العمل في الخلفية (`background_service.py`)
- تدير جميع الخدمات الأساسية في الخلفية
- توفر HTTP API للتحكم عن بُعد
- فحص دوري وإعادة تشغيل الخدمات المتوقفة
- نظام سجلات شامل
### 2. أيقونة شريط النظام (`system_tray.py`)
- تحكم سريع من شريط النظام
- إظهار/إخفاء الواجهة التفاعلية حسب الحاجة
- مراقبة حالة النظام في الوقت الفعلي
### 3. المشغل الموحد (`launcher.py`)
- واجهة موحدة لجميع أوضاع التشغيل
- تثبيت تلقائي للاعتماديات
- خيارات تشغيل متعددة
## طرق التشغيل
### التشغيل مع أيقونة شريط النظام (موصى به)
```bash
python launcher.py --tray
```
### التشغيل التفاعلي (مع واجهة)
```bash
python launcher.py --interactive
```
### التشغيل بدون واجهة (للخوادم)
```bash
python launcher.py --headless
```
### عرض حالة النظام
```bash
python launcher.py --status
```
### إيقاف النظام
```bash
python launcher.py --stop
```
## التحكم عبر HTTP API
الخدمة توفر HTTP API على المنفذ 8888:
### فحص الحالة
```bash
curl http://localhost:8888/status
```
### بدء الخدمات
```bash
curl -X POST http://localhost:8888/start
```
### إيقاف الخدمات
```bash
curl -X POST http://localhost:8888/stop
```
### إظهار الواجهة التفاعلية
```bash
curl -X POST http://localhost:8888/show-ui
```
### إخفاء الواجهة التفاعلية
```bash
curl -X POST http://localhost:8888/hide-ui
```
## الاعتماديات الإضافية
للتشغيل مع أيقونة شريط النظام:
```bash
pip install pystray Pillow
```
أو استخدم:
```bash
python launcher.py --install-deps
```
## التشغيل التلقائي
### Windows
```bash
python control.py --enable
```
### Linux (systemd)
إنشاء ملف خدمة:
```bash
sudo nano /etc/systemd/system/distributed-tasks.service
```
محتوى الملف:
```ini
[Unit]
Description=Distributed Task System
After=network.target
[Service]
Type=simple
User=your-username
WorkingDirectory=/path/to/your/project
ExecStart=/usr/bin/python3 launcher.py --headless
Restart=always
RestartSec=10
[Install]
WantedBy=multi-user.target
```
تفعيل الخدمة:
```bash
sudo systemctl enable distributed-tasks.service
sudo systemctl start distributed-tasks.service
```
### macOS
```bash
python control.py --enable
```
## المزايا
1. **العمل في الخلفية**: النظام يعمل دون إزعاج المستخدم
2. **تحكم مرن**: إظهار الواجهة عند الحاجة فقط
3. **مراقبة تلقائية**: إعادة تشغيل الخدمات المتوقفة
4. **تحكم عن بُعد**: HTTP API للتحكم من أي مكان
5. **سجلات شاملة**: تتبع جميع الأحداث والأخطاء
6. **دعم منصات متعددة**: Windows, Linux, macOS
## الاستكشاف والإصلاح
### فحص السجلات
```bash
tail -f logs/background_service.log
```
### فحص حالة الخدمات
```bash
python launcher.py --status
```
### إعادة تشغيل النظام
```bash
python launcher.py --stop
python launcher.py --tray
```
## التخصيص
يمكن تخصيص الخدمة عبر تعديل:
- منافذ الشبكة في `background_service.py`
- قائمة الخدمات المُدارة
- فترات الفحص الدوري
- مسارات السجلات
|