IVR Studio — עורך ויזואלי לתרחישי נתב שיחות
IVR Studio (סטודיו לפיתוח IVR) הוא עורך ויזואלי מתקדם המאפשר לבנות תרחישי ניתוב שיחה מורכבים באמצעות גרירה ושחרור (drag & drop) של רכיבים מוכנים מראש — ללא צורך בכתיבת קוד.
באמצעות Studio ניתן לבנות תפריטי IVR רב-רמתיים, להגדיר תנאים, לקרוא נתונים ממערכות חיצוניות (webhooks), לשלוח הודעות, להקליט שיחות, ועוד — והכל מתוך ממשק גרפי יחיד.
התכונה מסומנת BETA בממשק. מומלץ לבדוק כל תרחיש במצב דיבאג לפני שיוך למספר חי.
גישה למסך
- בתפריט הראשי יש ללחוץ על נתב שיחות (IVR) ← ניהול נתבי שיחות
- ללחוץ על צור IVR חדש כדי להתחיל מחדש, או על ערוך ליד IVR קיים
- ייפתח מסך ה-IVR Studio
הגישה ל-IVR Studio דורשת הרשאת ניהול נתבי שיחות (IVR).
חלקי המסך
- ארגז כלים (בצד הכלים) — רשימת כל הרכיבים הזמינים מקובצים לקטגוריות
- קנבס עריכה (מרכז המסך) — אזור הבנייה של התרחיש; גוררים לכאן רכיבים מארגז הכלים ומחברים אותם בקווי זרימה
- פאנל מאפיינים (בצד השני) — הגדרות של הרכיב הנבחר
- סרגל כלים עליון — כולל:
- שם ה-IVR (ניתן לעריכה; לא ניתן לשמור שם שכבר קיים בנתב אחר — המערכת תציג שגיאה)
- בוחר גרסאות היסטוריה
- כפתור חדש ליצירת IVR נקי
- כפתור שמור (שמירת טיוטה) וכפתור שמור ופרסם
- כפתור הרץ דיבאג לסימולציית שיחה, וכפתור עצור דיבאג המופיע בזמן הרצת הדיבאג
הגדרות ברירת מחדל
כל תרחיש מאפשר הגדרת ברירות מחדל שישמשו אם לא הוגדרו ערכים ספציפיים ברכיב:
- שפת ברירת מחדל — עברית / אנגלית / רוסית / ערבית
- קובץ השמעה על הקשה לא תקינה (invalid input)
- קובץ השמעה על חוסר תגובה (no response)
- קובץ השמעה לאחר מספר ניסיונות (too many attempts)
- מספר ניסיונות מקסימלי — 1 עד 10 (ברירת מחדל: 3)
- Caller ID לחיוג יוצא — המספר שיוצג למקבל השיחה; נבחר מרשימה: מספר המסקיו / מספר המחייג / אנונימי
- תיאור — שדה טקסט חופשי לתיאור זרימת ה-IVR (למשל: "תרחיש IVR ראשי לתמיכה")
רכיבים זמינים בארגז הכלים
הרכיבים בארגז הכלים מקובצים לארבע קטגוריות: טלפוניה, תנאים, אינטגרציה ואחר.
טלפוניה
| רכיב | פעולה |
|---|---|
| נגן - טקסט לדיבור | המרת טקסט לדיבור (TTS) — בוחרים טקסט וסוג קול (זכר / נקבה). השפה נקבעת לפי שפת ברירת המחדל של התרחיש או לפי רכיב "החלפת שפה" שקדם לו, ולא בתוך הרכיב עצמו |
| נגן - קובץ | השמעת קובץ שמע (WAV) מספריית קבצי השמע |
| תפריט IVR | תפריט רב-אופציות שבו כל הקשה (0–9, *, #) מובילה לענף שונה בתרחיש |
| קבלת DTMF | קבלת לחיצות על ה-keypad של המתקשר, עם הגדרת אורך מרבי (1–50 ספרות) ו-timeout, ושמירת התוצאה למשתנה |
| חיוג | חיוג ליעד אחד או יותר — בונים רשימת יעדים באמצעות כפתור "הוסף טלפון", ואופן הצלצול קובע כיצד מחויגים היעדים ברשימה: "חיוג במקביל" (כולם בו-זמנית) או "מוביל נגרר (רציף)" (אחד אחרי השני). ניתן לבחור קובץ "לחישה" (whisper) שיושמע לצד העונה לפני חיבור השיחה, ולהגדיר זמן המתנה למענה. ערכי ה-Caller ID הם ברירת מחדל / מוסתר / {{Variable1..10}}, וניתן לשמור את תוצאת החיוג למשתנה |
| הקלטת שיחה | הקלטת השיחה — מגדירים קובץ הודעה מקדימה (הצהרת הקלטת שיחות) המושמע לפני תחילת ההקלטה, וקובץ יעד שאליו נשמרת ההקלטה |
| תא קולי | השמעת הודעה והקלטת המתקשר — מגדירים הודעה, סוג קובץ (mp3 / wav / Ogg), זמן הקלטה מקסימלי (בשניות), קובץ יעד להקלטה, ואפשרות לצרף להקלטה קיימת |
| ניתוק | סיום השיחה |
| החלפת שפה | מחליפה את השפה הפעילה לכל הרכיבים שאחריה (פירוט להלן) |
| הוספה לרשימה שחורה | הוספת מספר לרשימה השחורה (ברירת מחדל: מספר המחייג) — כולל מתג לשיוך החסימה למספר המסקיו ושדה הערות |
לתפריט IVR אין ענף "ברירת מחדל" נפרד: לאחר מיצוי מספר הניסיונות המרבי (הקשה לא תקינה או חוסר תגובה), או אם המתקשר ביטל, השיחה ממשיכה ברצף התרחיש — ברכיב שאחרי צומת התפריט. בכל ניסיון לא תקין מושמע קובץ "הקשה לא תקינה" / "חוסר תגובה", ולאחר חריגה ממספר הניסיונות מושמע קובץ "מספר ניסיונות" והשיחה ממשיכה כאמור. ניתן גם לשמור את ההקשה שהתקבלה למשתנה.
רכיב "החלפת שפה" מחליף את השפה הפעילה לכל הרכיבים שאחריו. מרכיב זה והלאה, רכיב "נגן - קובץ" מוסיף סיומת _<שפה> לשם הקובץ — לדוגמה כשנבחרת אנגלית, welcome.wav יושמע כ-welcome_en.wav (אין תיקיות שפה — רק שם הקובץ משתנה). עברית היא שפת הבסיס ואינה מוסיפה סיומת _he. אם שם הקובץ כבר מסתיים ב-_he/_en/_ru/_ar הוא מושמע כפי שהוא. גם ה-TTS ברכיב "נגן - טקסט" עובר לשפה החדשה.
תנאים
| רכיב | פעולה |
|---|---|
| IF תנאי | השוואת משתנה לערך או למשתנה אחר, עם אופרטורים (שווה, לא שווה, גדול מ, גדול/שווה, קטן מ, קטן/שווה, מכיל, לא מכיל) וכן אופרטורי אורך-מחרוזת ("אורך קצר/שווה ל-(תווים)", "אורך ארוך/שווה ל-(תווים)", "אורך שווה ל-(תווים)"). ניתן להוסיף מספר תנאים לאותו רכיב ולבחור AND או OR ביניהם. שני ענפי יציאה (True / False) |
| IF בשעות העבודה | ניתוב לפי האם הזמן הנוכחי נמצא בטווח שעות עבודה מוגדר (ניתן להגדיר לוח שבועי) |
| בדיקת רשימה שחורה | בדיקה האם מספר (ברירת מחדל: מספר המחייג) נמצא ברשימה השחורה. לרכיב אין ענפי יציאה — התוצאה נכתבת למשתנה נבחר: 1 (נמצא) או 0 (לא נמצא). לניתוב לפי התוצאה יש להוסיף אחריו רכיב IF תנאי |
אינטגרציה
| רכיב | פעולה |
|---|---|
| שלח SMS | שליחת הודעת SMS — ניתן להגדיר מספר שולח, מספר יעד וטקסט (כולל משתנים) |
| שלח דוא"ל | שליחת הודעת דוא"ל עם אפשרות לצרף עד 2 קבצים, ומתג "שליחה לאחר סיום שיחה" |
| שלח Webhook | קריאת HTTP למערכת חיצונית — שיטות זמינות: GET / POST / PUT / DEL / PECH. מתחת לשדה הכתובת מופיע שדה "פרמטרים לשאילתה" (Query Parameters) — עורך זוגות שם/ערך המצורפים כמחרוזת שאילתה לכתובת. בשיטות POST/PUT/PECH נחשף שדה נוסף "קובץ להעלאה" (לצירוף קובץ הקלטה). שדות מתקדמים (Body, אימות, Headers, "שליחה לאחר סיום שיחה", שמירת תוצאה למשתנה) מקובצים תחת אזור מתקפל "אפשרויות מתקדמות" |
אחר
| רכיב | פעולה |
|---|---|
| פעולות במשתנים | השמת ערך למשתנה (Variable1–10), פעולות מתמטיות (חיבור/חיסור/כפל/חילוק), פעולות מחרוזת (חיתוך, שרשור, החלפה, toUpper/toLower, או רך), מספר אקראי, וולידציה (פירוט להלן) |
| הדפסה לקונסול | הדפסת ערך משתנה בדיבאג (כלי פיתוח בלבד — לא מוצג למתקשר) |
| פרמטרים ל-CDR | הוספת נתוני מפתח/ערך מותאמים ל-CDR (רשומת פרטי השיחה) לצורך מעקב מאוחר |
| תווית (Label) | נקודת עיגון בתרחיש שאליה ניתן לחזור |
| עבור אל (GoTo) | קפיצה לתווית מוגדרת — שימושי ליצירת לולאות |
סוג הפעולה "ולידציה" ברכיב "פעולות במשתנים" בודק משתנה מקור לפי סוג: ת"ז ישראלית, טלפון נייח, נייד, תאריך (ddmmyyyy או mmyy), שעה (hhmm), וכרטיס אשראי (Luhn). התוצאה נשמרת כ-1 (תקין) או 0 (לא תקין) במשתנה היעד.
פעולת "מספר אקראי" מגרילה מספר שלם בטווח בין מינימום למקסימום שמגדירים, ושומרת אותו במשתנה היעד.
לכל תווית (Label) מוקצה צבע, ורכיבי "עבור אל" שמפנים אליה מקבלים מסגרת מקווקוות באותו צבע — כך קל לזהות ויזואלית לאן כל קפיצה מובילה. בעת בחירת יעד ברכיב "עבור אל" מוצג כפתור "הצג יעד" שמדגיש את התווית בקנבס. שינוי שם תווית מעדכן אוטומטית את כל רכיבי ה-GoTo שמפנים אליה. קיימת הגנה מפני לולאות אינסופיות.