תיעוד/Voice API/תזכורות לתורים
שיחות תזכורת לתורים
שיחה לכל מטופל או לקוח יום לפני התור: הסוכן מאשר את התור או רושם מועד אחר שמתאים יותר, והתוצאה חוזרת למערכת שלכם, בלי שמישהו בקבלה ירים טלפון.
התרחיש
מרפאת שיניים רוצה שכל מי שקבע תור יקבל שיחה 24 עד 48 שעות לפני הביקור. למריה יש ניקוי שיניים ביום חמישי ב-10:30 בבוקר. הסוכן צריך לאשר את התור, או לרשום מועד אחר שנוח לה, כדי שהקבלה תקבע לה תור חדש. מערכת זימון התורים שלכם מוציאה שיחה אחת לכל תור.
הבקשה
קודם קראו את סקירת ה-Voice API כדי להכיר את המפתחות והכותרות. הבקשה הזו משתמשת במפתח voice:call ומתקשרת ממספר הסוכן של המרפאה.
curl -X POST https://api.talktomyagent.io/v1/voice/calls \
-H "Authorization: Bearer $TTMA_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: appt-48213-reminder-1" \
-d '{
"from": "+16475550100",
"to": "+12025550134",
"targetName": "Maria",
"triggeredBy": "scheduling-system",
"maxDurationSecs": 180,
"task": {
"goal": "Confirm the cleaning for Maria on Thursday at 10:30 AM, or note the day and time she would prefer instead.",
"script": "appointment_confirmation",
"facts": {
"patient_name": "Maria",
"appointment_type": "dental cleaning",
"appointment_date": "Thursday, November 12",
"appointment_time": "10:30 AM",
"provider_name": "Dr. Patel",
"practice_name": "Riverside Dental",
"office_phone": "+16475559876"
},
"escalation": "If she asks a clinical question, say the office will call her back, and end the call."
}
}'
- Idempotency-Key. בנו אותו ממזהה התור וממספר הניסיון, כמו בדוגמה. כך גם ניסיון חוזר אחרי שגיאת רשת לא יחייג למריה פעמיים.
- maxDurationSecs. שלוש דקות מספיקות בהחלט לאישור תור. המינימום הוא 60.
- facts. שלחו תאריכים ושעות בדיוק בניסוח שבו הסוכן צריך לומר אותם. הסוכן אומר רק עובדות ששלחתם.
מה התסריט מכסה
את התסריט appointment_confirmation כותבים פעם אחת, יחד עם הצוות שלנו במהלך הבנייה, ומשתמשים בו בכל תזכורת. תסריט טוב מכסה:
| חלק | תוכן לדוגמה |
|---|---|
| פתיחה | לפנות למטופל בשמו, לומר מאיזו מרפאה מתקשרים, לציין את סוג התור, את המטפל, את התאריך והשעה, ולשאול אם המועד מתאים. |
| מאשרים | להודות, לחזור פעם אחת על התאריך והשעה, לסיים. |
| רוצים מועד אחר | לשאול איזה יום ושעה נוחים, לחזור על המועד, לומר שהמרפאה תאשר את המועד החדש, לסיים. |
| מבטלים | לאשר את הביטול, לשאול אם רוצים לקבוע תור חדש בהמשך, לסיים. |
| תא קולי | להשאיר הודעה קצרה עם התאריך, השעה ומספר הטלפון של המרפאה. כברירת מחדל אין זיהוי של תא קולי בשיחות האלה: הסוכן שומע את הודעת הפתיחה כמו שאדם היה שומע אותה, ולכן התסריט צריך לומר מה לעשות. |
| אדם אחר על הקו | להתנצל, לא למסור שום פרט על התור, לסיים. |
| כללים מחייבים | אף פעם לא לתת ייעוץ רפואי. אף פעם לא למסור מידע על מטופל אחר. אף פעם לא להבטיח מועד: את המועד מאשרת המרפאה. |
| עובדות חובה | patient_name, appointment_date, appointment_time. כשיש תסריטים שפורסמו, שיחה שחסרה בה אחת מהן נדחית עם 400 עוד לפני שמחייגים למישהו. |
קריאת התוצאה
רשמו webhook מסוג call.ended, או שלפו את GET /v1/voice/calls/{callControlId}. השדות השימושיים לתזכורת:
| שדה | מה עושים איתו |
|---|---|
data.outcome.status | השיחה כפי שהוערכה מול ה-task.goal שלכם: completed, not_completed (הייתה שיחה אמיתית, המטרה לא הושגה), dropped (לא הייתה שיחה שאפשר להשתמש בה) או unknown. השדה outcome הוא null עד שההערכה שאחרי השיחה רצה, ופעמים רבות זה קורה אחרי שה-webhook כבר נשלח. אם אתם צריכים אותו, שלפו את השיחה שוב מאוחר יותר. |
data.outcome.summary | סיכום כתוב קצר, למשל המועד החדש שהתבקש. שימו אותו ברשומת התור. |
data.transcript | השיחה המלאה, כשההגדרה Ship Transcripts (שליחת תמלולים) פעילה. |
data.durationSeconds, data.endedReason | לזהות שיחות שאף אחד לא ענה להן או שהסתיימו מוקדם, ולנסות אותן שוב מאוחר יותר. |
שימו לב
- שעות החיוג ובקשות ההסרה באחריותכם. ה-API לא יודע מה אזור הזמן של המטופל, ולא אם המטופל ביקש שלא יתקשרו אליו. תזמנו שיחות לשעות היום לפי השעון המקומי, ודלגו על מי שביקש שלא יתקשרו אליו.
- שתי שיחות במקביל לכל סוכן כברירת מחדל. סבב בוקר של 80 תזכורות צריך לצאת בקצב מבוקר: התחילו את השיחה הבאה כששיחה מסתיימת. שיחות שיוצאות כששני הקווים תפוסים נופלות.
- 5 שיחות בשעה לאותו מספר. משפחות רבות חולקות מספר אחד. פזרו את התזכורות לאותו משק בית.
- ניסיון חוזר אחד, לא יותר. אם אף אחד לא ענה, נסו פעם נוספת מאוחר יותר באותו יום, ומשם השאירו את זה לתהליך הרגיל שלכם.