מתכוני תהליכים
תהליכים שלמים ועובדים שאפשר לבנות בכמה דקות כל אחד. כל מתכון מפרט את הבלוקים, את ההגדרות שלהם ואת ההיגיון מאחוריהם.
אפשר לתאר כל מתכון שלמטה ל‑Hermes במשפט אחד — "סנן ליד חדש ב‑WhatsApp ושלח אותו למכירות או לתמיכה" — והוא ייבנה עבורכם. עדיין כדאי לקרוא את המתכונים: הם מראים איך נראה תהליך טוב, מה שמקל על בדיקת העבודה של ה‑AI.
| מתכון | טריגר | מתאים ל |
|---|---|---|
| ברכת קבלה מיידית | הודעה נכנסת | כל תיבה חדשה |
| מענה אוטומטי מחוץ לשעות הפעילות | הודעה נכנסת | צוותים עם שעות קבועות |
| סינון וניתוב של ליד חדש | הודעה נכנסת | הפרדה בין מכירות לתמיכה |
| הסלמה של לקוח לא מרוצה | שינוי בשיחה | שימור לקוחות |
| דחיפת ליד חדש ל‑CRM חיצוני | מילוי טופס | אינטגרציות |
| פתיחת שיחה ממערכת חיצונית | Webhook נכנס | עדכוני הזמנות ומשלוחים |
| סיכום בוקר יומי | זמן מתוזמן | מנהלים |
| התרעה למנהל כשמדד יורד | התראת אנליטיקס | תפעול |
| תפריט טלפוני עם העברה לנציג | שיחה נכנסת | קול |
1. ברכת קבלה מיידית
השיבו תוך שנייה, כדי שאף אחד לא ימתין בשקט.
הודעה נכנסת (תיבות: WhatsApp)
└─ מענה בהודעה
└─ סיום סשן
| בלוק | הגדרות |
|---|---|
| הודעה נכנסת | סמנו את תיבת ה‑WhatsApp שלכם. |
| מענה בהודעה | שלום {{contact.name}}! תודה שפניתם ל‑Acme. אחד מאנשי הצוות שלנו יחזור אליכם בקרוב. · המתנה ל תשובת הלקוח: כבוי |
| סיום סשן | סימון השיחה כטופלה: כבוי |
למה סיום סשן? בלעדיו, סטודיו ממשיך להחזיק בשיחה והיא יושבת בתור בוט סטודיו. סיום סשן משחרר אותה כך שהיא מופיעה בממתינות בתור ונציג יכול לקחת אותה.
{{contact.name}} ריק עבור איש קשר חדש בחלק מהערוצים. או שתכתבו ברכה שנקראת היטב גם בלעדיו, או שתסתעפו על contact.name עם האופרטור קיים.
2. מענה אוטומטי מחוץ לשעות הפעילות
אמרו משהו מועיל כשאתם סגורים, ושתקו כשאתם פתוחים.
הודעה נכנסת
└─ שעות פעילות
├─ פתוח ──── (כלום — תנו לנציגים לטפל)
└─ סגור ──── מענה בהודעה ── סיום סשן
| בלוק | הגדרות |
|---|---|
| הודעה נכנסת | השאירו את התיבות ריקות כדי לכסות כל ערוץ. |
| שעות פעילות | בחרו את הלוח שיצרתם בהגדרות ← שעות פעילות. |
| מענה בהודעה (סגור) | תודה על ההודעה! הצוות שלנו לא זמין כרגע. אנחנו פתוחים ראשון–חמישי, 09:00–18:00, ונחזור אליכם עם פתיחת היום. |
| סיום סשן | סימון כטופל: כבוי |
השארת הפורט פתוח ללא חיבור היא בכוונה — בשעות העבודה התהליך צריך לא לעשות דבר ולתת לנציגים להשיב כרגיל.
3. סינון וניתוב של ליד חדש
שאלו שאלה אחת, ואז שלחו את השיחה לצוות הנכון עם התווית הנכונה.
הודעה נכנסת
└─ מענה בהודעה (המתנה לתשובה)
└─ תנאי If/Else
├─ מכירות ──── שינוי שיחה (תווית: מכירות, מסירה לתור)
├─ תמיכה ───── שינוי שיחה (תווית: תמיכה, מסירה לתור)
└─ Else ────── מענה בהודעה "מצטערים, לא הבנתי…"
| בלוק | הגדרות |
|---|---|
| מענה בהודעה | שלום! אתם פונים אלינו בנושא **מכירות** או **תמיכה**? השיבו במילה אחת. · המתנה לתשובת הלקוח: מופעל · פסק זמן להמתנה: 60 |
| תנאי If/Else | מצב התאמה: ההתאמה הראשונה בלבד · הוספת הסתעפות ELSE: מופעל |
| — IF 1 | תווית מכירות · ערך message.content · אופרטור מכיל · השוואה כטקסט · השוואה מול מכירות |
| — IF 2 | תווית תמיכה · ערך message.content · אופרטור מכיל · השוואה כטקסט · השוואה מול תמיכה |
| שינוי שיחה (מכירות) | מצב תוויות: הוספה · תוויות: מכירות · התערבות אנושית: מופעלת · מסירה אל: תור ההמתנה |
| שינוי שיחה (תמיכה) | אותו דבר, עם התווית תמיכה. |
| מענה בהודעה (Else) | מצטערים, לא הבנתי. אנא השיבו "מכירות" או "תמיכה". · המתנה לתשובת הלקוח: מופעל |
למה מכיל ולא שווה ל? אנשים מקלידים "מכירות בבקשה" ו*"אני צריך מכירות"*. מכיל אינו רגיש לאותיות גדולות/קטנות ומוצא התאמה בתוך משפט.
לולאת ה‑ELSE. הסתעפות ה‑ELSE שואלת שוב וממתינה שוב, כך שהלקוח מקבל הזדמנות נוספת. שקלו להוסיף מונה עם שמירה כמשתנה, או ניסיון שלישי שמוסר לאדם, כדי שלקוח מבולבל לעולם לא ייתקע.
4. הסלמה של לקוח לא מרוצה
הגיבו ברגע שה‑AI מזהה תסכול.
שינוי בשיחה (איתותי AI: זיהוי רגש)
└─ תנאי If/Else
└─ שלילי ── שינוי שיחה (עדיפות: דחוף, דגל: חשוב)
└─ הערה פרטית
└─ שליחת אימייל
| בלוק | הגדרות |
|---|---|
| שינוי בשיחה | איתותי AI: זיהוי רגש. השאירו את שאר המסננים על כל. |
| תנאי If/Else | IF שלילי · ערך conversation.customer_emotion · אופרטור קטן מ · השוואה כמספר · השוואה מול 3 |
| שינוי שיחה | עדיפות: דחופה · דגל: חשוב · התערבות אנושית: מופעלת · מסירה אל: תור ההמתנה |
| הערה פרטית | ⚠️ ה‑AI זיהה רגש שלילי ({{conversation.customer_emotion}}). איתות: {{ai.message}} |
| שליחת אימייל | אל ראש הצוות שלכם · נושא הסלמה: {{contact.name}} · הגוף כולל את {{conversation.id}} ואת {{ai.message}} |
5. דחיפת ליד חדש ל‑CRM חיצוני
שלחו כל הגשת טופס ישירות למערכת אחרת, ותעדו את התוצאה.
מילוי טופס (טופס: צור קשר)
└─ בקשת HTTP (לכידת תגובה: מופעלת)
└─ תנאי If/Else
├─ הצלח ה ── שמירה כמשתנה ── הערה פרטית
└─ Else ─── שליחת אימייל (התרעה למנהל)
| בלוק | הגדרות |
|---|---|
| מילוי טופס | בחרו את הטופס הספציפי. |
| בקשת HTTP | שיטה POST · כתובת נקודת הקצה של ה‑CRM שלכם · כותרת Content-Type: application/json · סוג גוף JSON · לכידת תגובה מופעלת · פסק זמן 15 |
| תנאי If/Else | IF הצלחה · ערך http.ok · אופרטור שווה ל · השוואה כבוליאני · השוואה מול true |
| שמירה כמשתנה | מפתח var.{{contact.id}}.crm_id · ערך {{http.json.id}} · סוג טקסט |
| הערה פרטית | הליד סונכרן ל‑CRM כ‑{{http.json.id}}. |
| שליחת אימייל (Else) | אל מנהל החשבון שלכם · הגוף כולל את {{http.status_code}} ואת {{http.error}} |
גוף ה‑JSON:
{
"name": "{{answers.full_name}}",
"email": "{{answers.email}}",
"phone": "{{answers.phone}}",
"source": "{{sourceParams.utm_source}}",
"answers": {{answers.list}},
"teloring_contact_id": "{{contact.id}}",
"teloring_execution_id": "{{system.execution_id}}"
}
שימו לב ל‑{{answers.list}} ללא מרכאות. מכיוון שהמשתנה ממלא ערך שלם, סטודיו מכניס את המערך האמיתי במקום מחרוזת. ראו משתנים בגוף JSON.
6. פתיחת שיחה ממערכת חיצונית
תנו לפלטפורמת ההזמנות שלכם לעדכן לקוח שהמשלוח שלו בדרך.
Webhook נכנס
└─ מענה בהודעה
└─ עדכון איש קשר
| בלוק | הגדרות |
|---|---|
| Webhook נכנס | העתיקו את הכתובת · שיטות מותרות POST · למידת הבקשה הבאה מופעלת, ואז שלחו בקשה אמיתית אחת. |
| מענה בהודעה | מזהה שיחה {{webhook.body.conversation_id}} · הודעה חדשות טובות {{contact.name}} — הזמנה {{webhook.body.order_id}} יצאה למשלוח. למעקב: {{webhook.body.tracking_url}} |
| עדכון איש קשר | שדה last_order_status ← {{webhook.body.status}} |
איך משיגים את מזהה השיחה. לתהליך שמתחיל ב‑Webhook אין שיחה משלו, ולכן {{conversation.id}} ריק. או שהצד הקורא ישלח מזהה שיחה במטען, כמו למעלה, או שתאתרו אותו קודם בבקשת HTTP.
7. סיכום בוקר יומי
הערה פרטית בשיחה נבחרת, או אימייל, בכל בוקר עבודה.
זמן מתוזמן (א׳–ה׳, 08:30, Asia/Jerusalem)
└─ בקשת HTTP (לכידת תגובה: מופעלת)
└─ שליחת אימייל
| בלוק | הגדרות |
|---|---|
| זמן מתוזמן | חמש שורות: ראשון–חמישי, שעה 8, דקה 30, אזור זמן Asia/Jerusalem. |
| בקשת HTTP | משכו את המספרים שאתם רוצים לדווח עליהם. לכידת תגובה מופעלת. |
| שליחת אימייל | אל הצוות · נושא סיכום בוקר — {{datetime.result}} · הגוף בנוי מערכי {{http.json...}} |
הוסיפו בלוק תאריך ושעה לפני האימייל (פעולה עיצוב תאריך, פורמט %d/%m/%Y) אם אתם רוצים תאריך נוח בשורת הנושא.
8. התרעה למנהל כשמדד יורד
חברו התראת אנליטיקס להתרעה אמיתית, ועדכנו כשהמצב חוזר לנורמה.
התראת אנליטיקס (התראות: "שיחות ממתינות מעל 20")
├─ התראה ────── שליחת אימייל ── שינוי שיחה (עדיפות: דחופה)
└─ התאוששות ── שליחת אימייל
| בלוק | הגדרות |
|---|---|
| התראת אנליטיקס | סמנו את ההתראה שיצרתם באנליטיקס. |
| שליחת אימייל (התראה) | נושא 🔴 {{alert.name}} · גוף {{alert.report_title}} עומד על {{alert.current_value}} ({{alert.direction}} הסף של {{alert.threshold}}) נכון ל‑{{alert.crossed_at}}. |
| שליחת אימייל (התאוששות) | נושא 🟢 {{alert.name}} חזר לנורמה · גוף {{alert.report_title}} חזר ל‑{{alert.current_value}}. |
ההתראה מופעלת פעם אחת בכל חצייה, כך שאתם מקבלים אימייל אחד — ולא אחד בכל דקה כל עוד המספר גבוה.
9. תפריט טלפוני עם העברה לנציג
חוויית שיחה נכנסת מלאה.
שיחה נכנסת (הקלטה: מופעלת)
└─ השמעת צליל "ברוכים הבאים ל‑Acme. השיחה עשויה להיות מוקלטת."
└─ שעות פעילות
├─ פתוח ──── תפריט IVR
│ ├ ─ 1 · מכירות ── זמינות נציגים
│ │ ├─ מחובר ── העברה לנציג ──┬─ הושלם ── בקשת HTTP
│ │ │ └─ נדחה ─── השמעת צליל ─ ניתוק
│ │ └─ מנותק ── השמעת צליל ─ ניתוק
│ ├─ 2 · תמיכה ─── העברה לטלפון חיצוני
│ ├─ פסק זמן ───── השמעת צליל ─ ניתוק
│ └─ לא תקין ───── השמעת צליל ─ ניתוק
└─ סגור ──── השמעת צליל ─ ניתוק
| בלוק | הגדרות |
|---|---|
| שיחה נכנסת | תיבת קול: המספר שלכם · הקלטת השיחה: מופעלת |
| השמעת צליל (ברכה) | קובץ WAV שכולל את הודעת ההקלטה. |
| שעות פעילות | הלוח שלכם. |
| תפריט IVR | קובץ WAV של התפריט · ספרות 1 · מכירות, 2 · תמיכה · פסק זמן לקלט 7000 · ניסיונות מרביים 2 |
| זמינות נציגים | בדיקה נציגים ספציפיים ← צוות המכירות שלכם · נחשב מחובר כאשר לפחות אחד |
| העברה לנציג | ניתוב כל נציג זמין · פסק זמן לצלצול 30 |
| בקשת HTTP (הושלם) | תעדו את {{call.duration_seconds}}, {{call.talk_duration_seconds}} ו‑{{call.agent_name}} במערכת שלכם. |
| העברה לטלפון חיצוני | קו התמיכה שלכם, בפורמט בינלאומי. מחייב בקרדיטים. |
| ניתוק | סיבה ניתוק רגיל |
ראו תהליכי שיחות קול למדריך הבלוקים המלא.
דפוסים ששווה לחזור עליהם
| דפוס | איך |
|---|---|
| תמיד תנו לאנשים דרך החוצה | כל תהליך שממתין זקוק להסתעפות ELSE או למסירה, כדי שלקוח לעולם לא ייתקע. |
| תייגו לפני שאתם מוסרים | שיחה שמגיעה לתור כשהיא כבר מתויג ת ובעלת עדיפות חוסכת לנציג צעד. |
| השאירו הערה, לא תעלומה | הערה פרטית שמסבירה מה הבוט אסף שווה לנציג יותר מציר זמן נקי. |
| תעדו את המזהים | שלחו את {{conversation.id}}, {{contact.id}} ו‑{{system.execution_id}} לכל מערכת חיצונית שאתם קוראים לה. |
| הוסיפו פתקים להסתעפויות | חצי שנה אחר כך, פתק שמסביר למה קיימת הסתעפות הוא ההבדל בין שיפור תהליך לבנייתו מחדש. |
| שאלה אחת בכל הודעה | שתי שאלות מקבלות תשובה אחת, ולתנאי שלכם אין מה להתאים בצורה נקייה. |
הבא
- פתרון תקלות — כשמתכון לא מתנהג כמצופה.
- בדיקות ופרסום — הדרך הבטוחה לשחרר תהליך.