مساعد الإعداد (ذكاء اصطناعي) — تهيئة الحساب

وكيل Biz1 Onboarding AI — مرجع كامل

آخر تحديث: 2026-05-31

مساعد الإعداد لـ **تكوين المؤسسة الجديدة**: دردشة موجهة + أوامر **مجمعة بنص حر** (حقول، مجلدات، علامات، وحدات، بريد إلكتروني).

1. مكان التواجد

| المكون | الموقع |

|-------|----------|

| المنطق | `include_file/biz1_agent_onboarding.php` |

| متحكم API | `application/controllers/Onboarding.php` |

| واجهة المستخدم المنبثقة (Modal UI) | `application/views/include/onboarding_agent_modal.php` |

| تضمين التذييل (Footer include) | `application/views/include/footer.php` |

| إعادة فتح الإعدادات | `application/views/new-design/setting.php` → **مساعد الإعداد (AI)** |

| التكوين | تضمين `config.php` + المسارات في `application/config/routes.php` |

| SQL | `sql/onboarding_agent_columns.sql` |

2. من يمكنه استخدامه

| التحقق | الوظيفة |

|-------|----------|

| الوصول | `biz1_onboarding_can_access()` → نفس `biz1_agent_can_manage_settings()` |

| مسموح به | **مالك المؤسسة** أو **member_admin** (مدير) |

| الفتح التلقائي | **الحساب الرئيسي فقط** (`biz1_onboarding_is_main_account`) و `onboarding_completed = 0` |

| إعادة الفتح في أي وقت | رابط قائمة الإعدادات (حتى بعد الاكتمال) |

الأمان

- جميع عمليات الكتابة تستخدم `biz1_onboarding_session_org_id()` و `biz1_onboarding_session_user_id()` من الجلسة فقط - `biz1_onboarding_validate_context()` قبل كل استدعاء API - يتم إعادة تحميل المؤسسة من قاعدة البيانات عبر معرف الجلسة — لا يتم ذلك أبدًا من POST/AI JSON

3. مسارات API

| الطريقة | المسار | الإجراء |

|--------|-------|--------|

| GET | `dashboard/onboarding/status` | الوصول، التسميات، الفتح التلقائي، حالة OAuth |

| POST | `dashboard/onboarding/message` | دور الدردشة |

| POST | `dashboard/onboarding/apply` | تأكيد المعاينة المجمعة المعلقة |

| POST | `dashboard/onboarding/complete` | وضع علامة على إتمام عملية الإعداد |

| POST | `dashboard/onboarding/check_email` | التحقق من اتصال SMTP/Gmail/365 |

4. قاعدة البيانات (`settings_of_user`)

لكل `user_id` لـ **مالك المؤسسة**:

| العمود | الغرض |

|--------|---------|

| `onboarding_completed` | 1 = المستخدم نقر على "لقد انتهيت" (يوقف الفتح التلقائي) |

| `onboarding_step` | تقدم المعالج (اختياري) |

| `onboarding_business_type` | مثال: عيادة، تجزئة |

| `onboarding_business_description` | نص حر |

| `onboarding_draft` | مسودة JSON (اختياري) |

| `onboarding_email_provider` | gmail / 365 / smtp |

| `onboarding_email_connected` | 1 بعد التحقق من الاتصال |

-- راجع sql/onboarding_agent_columns.sql للتعديل الكامل

5. أوضاع التفاعل

5.1 موجه (دردشة)

يصف المستخدم العمل بلغة طبيعية ← يقترح الذكاء الاصطناعي الوحدات، المجلدات، والخطوات التالية باستخدام الكتالوج الثابت `biz1_onboarding_business_catalog()`:

| المفتاح | الوحدات المقترحة | أمثلة على المجلدات |

|-----|-------------------|-----------------|

| `clinic` | appointment, whatsapp, payment | New leads, Active patients, Archive |

| `retail` | order, whatsapp, payment | Leads, Customers, VIP |

| `services` | Work_Flow, whatsapp | Leads, Projects, Done |

| `general` | whatsapp | Leads, Customers |

5.2 نص حر مجمع (متقدم)

محلل حتمي `biz1_onboarding_parse_bulk_block()` — لا يتطلب ذكاء اصطناعي للهيكل:

create fields
Budget, תקציב, number
Priority, עדיפות, select, High, Medium, Low

create folders
New leads
Active clients, לקוחות פעילים

create tags
VIP
Hot lead

create statuses
In progress
Waiting

enable modules appointment whatsapp payment

connect email gmail

**الخطوات:** تحليل ← تحقق ← توضيح الصفوف غير الصالحة فقط ← معاينة ← المستخدم **تطبيق**

الجلسة المعلقة: `$_SESSION['biz1_onboarding_pending']`

6. تنسيق سطر الحقل

english_name, hebrew_name, type[, option1, option2, ...]

الأنواع المسموح بها: `text`, `tel`, `email`, `number`, `radio`, `radio_custom`, `checkbox`, `select`, `date`, `textarea`, `link`, `title`

- يتطلب `select` خيارات (فاصلة في نفس السطر أو توضيح لاحق) - يتم تخزينه في JSON `user_detail.extra_fields` (نفس إعدادات → الحقول)

7. منفذو التطبيق

| نوع التجميع | الوظيفة | الهدف |

|-----------|----------|--------|

| الحقول | `biz1_onboarding_apply_field()` | `user_detail.extra_fields` |

| المجلدات | `biz1_onboarding_apply_folder()` | `insert_folders()` |

| العلامات | `biz1_onboarding_apply_tag()` | جدول `tags` |

| الحالات | `biz1_onboarding_apply_status()` | JSON `custom_customer_status` |

| الوحدات | `biz1_onboarding_apply_modules()` | JSON `user_detail.module` |

8. تدفق ربط البريد الإلكتروني

1. المستخدم: "ربط البريد الإلكتروني" أو يختار شريحة المزود (Gmail / 365 / SMTP) 2. الوكيل يعرض التعليمات (`biz1_onboarding_email_instructions()`) 3. أزرار واجهة المستخدم: - **ربط Gmail** → `gmailApi/othenticate.php` (OAuth، نفس الإعدادات) - **ربط Microsoft 365** → عنوان URL لـ OAuth مع `oauth_state` المشتق من الجلسة - **SMTP** → يوجه المستخدم إلى الإعدادات → نموذج البريد الإلكتروني 4. **التحقق من الاتصال** → يقرأ `smtp_settings` لمعرف المؤسسة في الجلسة

9. اللغات (EN / HE / AR)

| العنصر | التنفيذ |

|------|----------------|

| تسميات واجهة المستخدم | `biz1_onboarding_ui_label()` — العنوان، الأزرار، العنصر النائب |

| أخطاء النظام | `biz1_onboarding_msg()` |

| ردود الذكاء الاصطناعي | المطالبة: الرد بلغة المستخدم |

| RTL | Modal `dir="rtl"` عندما تكون `lang` هي `he` أو `ar` |

| بيانات ثنائية اللغة | أسطر الحقول: `name_en` + `name_he`؛ أسماء المجلدات تدعم `en, he` في سطر واحد |

تسمية قائمة الإعدادات: - EN: Setup assistant (AI) - HE: עוזר הגדרה (AI) - AR: مساعد الإعداد (ذكاء اصطناعي)

10. سلوك واجهة المستخدم

| الإجراء | التأثير |

|--------|--------|

| الفتح التلقائي | ~1.2 ثانية بعد تحميل الصفحة إذا كان `auto_open` من الحالة |

| رابط الإعدادات | `window.biz1OnboardingOpen()` / الفئة `biz1-onboarding-open-settings` |

| إرسال | POST message → فقاعة + توضيح/معاينة/إعداد البريد الإلكتروني |

| تطبيق | POST apply → تشغيل التجميع المعلق |

| لقد انتهيت | يضبط `onboarding_completed=1`، يغلق النافذة المنبثقة |

| مسح الدردشة | يعيد تعيين السجل + واجهة المستخدم المعلقة |

11. ملاحظات النشر

تم النشر إلى بيئة التطوير: 2026-05-31 نمط النسخ الاحتياطي: `backup/onboarding-deploy-*/*.bck` على الخادم

الملفات التي تم تغييرها عند النشر: - `config.php`, `routes.php`, `footer.php`, `setting.php` (مع `.bck`) - جديد: `biz1_agent_onboarding.php`, `Onboarding.php`, `onboarding_agent_modal.php`

12. الوثائق ذات الصلة

- AI_AND_AUTOMATION_INDEX.md - BIZ1_SIDEBAR_AGENT.md — وكيل مختلف (CRM الشريط الجانبي، وليس الإعداد) - SETTINGS_MAP.md — مرجع الإعدادات اليدوية