מערכת אוטומציות — מדריך מלא
עודכן לאחרונה: 2026-05-31
כיצד אוטומציות Biz1 פועלות מקצה לקצה: מודל נתונים, נתיבי ביצוע, בקרת זרימה, והיכן לקרוא עוד.
1. מודל דו-שכבתי
| שכבה | טבלה | תפקיד |
|-------|-------|------|
| **אירוע (טריגר)** | `automation_event` | מגדיר **מתי** זרימה פועלת |
| **פעולות (שלבים)** | `automation` | מגדיר **מה** קורה (`flow_id` → `automation_event.id`) |
אירוע CRM מתרחש (ליד חדש, שינוי סטטוס, ...)
← התאמת שורות automation_event (אירוע + מסנני par/val + השהיה)
← תור / הפעלת שורות אוטומציה מקושרות (מסודרות לפי שלב)
← כל row.type נשלח ל-include_file/automations/actions/{type}.inc.php
2. ממשקי משתמש
| עמוד | נתיב | מטרה |
|------|-------|---------|
| טבלת אוטומציות | `dashboard/event/automation-table` | רשימת זרימות; יצירה/עריכה של **טריגרים**; צ'אט AI לאירועים |
| בונה קנבס | `dashboard/event/automation/{flow_id}` | בניית גרף **פעולות**; צ'אט AI לפעולות; שמירה |
ראה include_file/AUTOMATION_AI_BUILDER.md עבור זרימות ממשק משתמש ובוני AI.
3. נקודות כניסה בזמן ריצה
| פונקציה | קובץ | מתי בשימוש |
|----------|------|-----------|
| `automations_cons()` | `automations.php` | הוק ראשי מ-CRM (עדכון לקוח, ליד וכו') |
| `run_automations_by_id()` | `automations.php` | הפעלת זרימה אחת לפי `automation_event.id` |
| `doAutomations_config()` | `automations.php` | ביצוע שורות פעולה עבור זרימה אחת |
| עוטפים | `config.php`, `common_helper.php` | `automation()`, `doAutomation()`, `automations()` |
לולאת ביצוע (מפושטת)
1. טעינת שורות `$auto_flow` עבור `flow_id`, מסודרות לפי `step`, `id` 2. עבור כל שורה: בדיקת `$skip` (זמן ריצה + בקרת IF) 3. החלת מצייני מיקום `$replace` על מחרוזות שורה (`{name}`, `{ai-message}`, …) 4. הערכת שורות בקרה `if` / `ai_agent` ← עדכון skip/replace עבור השורות הבאות 5. `include` קובץ פעולה: `automations/actions/{type}.inc.php` 6. הפעולה רצה עם הקשר לקוח (`$contact_us`, `$User`, `$Org`, …)
4. פעולות בקרה
| סוג | מטרה | תיעוד |
|------|---------|-----|
| `if` | כללי JSON ← דילוג על שלבים / הזרקת אסימוני החלפה | AUTOMATIONS_CHANGES.md §5–6 |
| `ai_agent` | קריאת Gemini ← אסימוני `{ai-field}` + דילוג אופציונלי | AI_AGENT_FUNCTIONALITY.md |
שניהם מוערכים ב**לולאה** (`automations_cons` / `run_automations_by_id`), לא בתוך קבצי ה-`.inc.php` שלהם.
5. בקרות זמן ריצה (ארגומנטים אופציונליים)
נוסף ברפקטור — ראה AUTOMATIONS_CHANGES.md:
| פרמטר | השפעה |
|-------|--------|
| `$skip` | מערך של מזהי שורות פעולה לדלג עליהם בהרצה זו |
| `$replace` | `[{"key":"value"}]` מוזג לתוך מצייני מיקום `{key}` |
6. קטלוג סוגי פעולות
49 סוגי פעולות חולצו ל-`include_file/automations/actions/{type}.inc.php`.
**שדות לפי סוג (ממשק משתמש קופץ, עמודות DB, קיצורים):** ← include_file/AUTOMATION_NODE_OPTIONS_MAP.md
קבוצות נפוצות: - **תקשורת:** `sendSms`, `sendEmail`, `sendWhatsapp`, `sendNotification` - **CRM:** `moveToFolder`, `addTag`, `removeTag`, `changeStatus`, `shareWithUser`, `addMission`, `reminder` - **מסמכים / הזמנות:** `create_doc`, פעולות הקשורות להזמנות - **בקרה:** `if`, `ai_agent` - **אינטגרציות:** `apiCall`, וובהוקים וכו'.
7. קטלוג טריגרים לאירועים
**כל סוגי הטריגרים, שדות הטופס, כללי השהיה, סוגי פרמטרים:** ← include_file/AUTOMATION_EVENT_TYPES.md
נקודת קצה לשמירה: `POST dashboard/event/add_automation_event` קישור קנבס: כל שורת טבלה ← `dashboard/event/automation/{id}`
8. הרשאות
- מודול: `module_sidebarmenu_automation` (קישור סרגל צד) - יצירה/עריכה: `allowed_to_add_automations` **או** בעלים / `member_admin` - ראה PERMISSIONS_MAP.md §D1
9. שילוב AI (שלוש שכבות)
| שכבה | מה | תיעוד |
|-------|------|-----|
| **צ'אט AI לאירועים** | טופס טריגר טיוטה בטבלת אוטומציות | AUTOMATION_AI_BUILDER.md § Event AI |
| **צ'אט AI לקנבס** | טיוטת צמתי פעולה בקנבס | AUTOMATION_AI_BUILDER.md |
| **שלב `ai_agent`** | AI בתוך זרימה פועלת | AI_AGENT_FUNCTIONALITY.md |
| **סוכן סרגל צד** | שפה טבעית "צור אוטומציה" מכל מקום | BIZ1_SIDEBAR_AGENT.md |
10. קבצי מפתח
| קובץ | תפקיד |
|------|------|
| `include_file/automations.php` | מנוע, לולאות, דיספצ'ר |
| `include_file/automations_functions.php` | פונקציות עזר, תורים, בוני AI, זמן ריצה של IF |
| `include_file/automations/actions/*.inc.php` | קובץ אחד לכל סוג פעולה |
| `application/controllers/Event.php` | טבלה, קנבס, שמירה, ממשקי API לטיוטת AI |
| `application/views/new-design/automation-table.php` | רשימת אירועים + צ'אט AI לאירועים |
| `application/views/automation.php` | קנבס + צ'אט AI לפעולות |
| `application/views/include/jquery_margi.php` | JS לטבלת אירועים (שליחה מדור קודם) |
| `new/js/project-general-js/automations-tables-jquery-v2.js` | JS לטבלה v2 |
11. יומנים וניפוי באגים
- בעיות בהרצת אוטומציה: בדוק את `automation_event.automation_status` של הארגון, `type` + `parameter` של שורת הפעולה - בונה AI: OpenRouter דרך `sendPrompt()` — מודל `google/gemini-3-flash-preview` - זמן ריצה `ai_agent`: מפתח API ישיר של Gemini מהסביבה / `$GLOBALS['public']`
12. מסמכים קשורים
- AI_AND_AUTOMATION_INDEX.md — אינדקס ראשי - AUTOMATIONS_CHANGES.md — יומן שינויים של רפקטור - SETTINGS_MAP.md — מודלים של הגדרות הקשורות לאוטומציה
