נציגים של Business Messages תומכים בשילובים ישירים עם
- Dialogflow ES: התאמת כוונה ושאלות נפוצות בנושא בוטים
- Dialogflow CX: התאמה לפי כוונה ומסירה של נציג תמיכה
כדי לשלב סוכן Business Messages עם תכונות נוספות של Dialogflow ES או Dialogflow CX, צריך לעיין בתיעוד של כל מוצר.
כשמשתמש שולח הודעה לסוכן שיש לו שילוב עם Dialogflow, מערכת Business Messages מעבירה את ההודעה ל-Dialogflow ושולחת את התשובה לסוכן באובייקט dialogflowResponse
של ההודעה. ניתן להגדיר שהסוכנים ישלחו ל-Dialogflow'תגובה את המשתמש באופן אוטומטי ללא כל פעולה מצידכם. פרטים נוספים זמינים במאמר תגובות אוטומטיות.
שילוב עם Dialogflow
כדי להשתמש באוטומציה מבוססת Dialogflow דרך Business Messages, צריך להפעיל את השילוב עם Dialogflow.
דרישות מוקדמות
כדי להתחיל, צריך
- סוכן של Business Messages
- סוכן של Dialogflow באזור Global עם שפת בסיס של אנגלית (en)
אם אין לכם סוכן של Dialogflow, צרו אותו.
Dialogflow ES
כדי להפעיל שילוב עם Dialogflow ES צריך את מזהה הפרויקט ב-Dialogflow. כדי לאתר את מזהה הפרויקט,
- נכנסים ל-Dialogflow Console.
- צריך לבחור את הסוכן של Dialogflow שרוצים לקשר ל-Business Messages, ואז ללחוץ על סמל גלגל השיניים .
- בקטע Google Project, מזינים את הערך של Project ID.
Dialogflow CX
כדי להפעיל שילוב עם Dialogflow CX, צריך להשתמש במזהה הפרויקט ובמזהה הנציג של Dialogflow. כדי לאתר את המזהים האלה,
- עוברים ל-Dialogflow CX Console.
- בוחרים את פרויקט Dialogflow.
- בבורר, לוחצים על סמל האפשרויות הנוספות לצד נציג ה-Dialogflow.
- לוחצים על העתקת השם. פעולה זו מעתיקה את השם המלא של הנציג
בפורמט הבא:
projects/PROJECT_ID/locations/REGION_ID/agents/AGENT_ID
. - שימו לב לערכים של מזהה הפרויקט ושל מזהה הנציג.
הפעלת השילוב
- ב-Business Communications Developer Console, עוברים אל שילובים.
- עבור Dialogflow, לוחצים על הפעלת שילוב.
- לוחצים על קישור מודל קיים.
- עבור מהדורת Dialogflow, בוחרים את המהדורה להפעלה.
- צריך להזין את מזהה הפרויקט של Dialogflow.
- כדי להפעיל את Dialogflow CX, צריך גם להזין את מזהה הסוכן של Dialogflow'
- אם רוצים שמערכת Business Messages תגיב באופן אוטומטי למשתמשים באמצעות התגובות של Dialogflow, אפשר לבחור באפשרות הפעלת תגובה אוטומטית.
- לוחצים על הבא.
- מעתיקים את כתובת האימייל של חשבון השירות. החשבון הזה מקשר בין Business Messages לנציגי Dialogflow.
- ב-Google Cloud Console, בוחרים את הפרויקט ב-Dialogflow.
- נכנסים להרשאות IAM.
- לוחצים על הוספה ומזינים את כתובת האימייל של חשבון השירות של חשבונות ניהול חדשים.
- בשדה Select a role (בחירת תפקיד), בוחרים באפשרות Dialogflow Console Agent Editor (עורך הנציג של Dialogflow Console).
- לוחצים על הוספת תפקיד ובוחרים באפשרות Dialogflow API Client.
- לוחצים על שמירה.
- במסוף המפתחים של התקשורת העסקית, לוחצים על הבא.
- לוחצים על התחלת השילוב.
תהליך החיבור בין Business Messages ל-Dialogflow נמשך כ-2 דקות.
עדכון השילוב
- ב-Business Communications Developer Console, עוברים אל שילובים.
- לוחצים על סמל גלגל השיניים לצד Dialogflow.
- מפעילים או משביתים את ההגדרה הפעלה של תגובה אוטומטית, בהתאם להחלטה שלכם אם לענות למשתמשים ב-Business Messages באופן אוטומטי באמצעות תשובות של Dialogflow.
מעבר בין מהדורות של Dialogflow
נציג של Business Messages יכול לתמוך רק בשילוב אחד של Dialogflow בכל פעם. כדי לעבור ממהדורה אחת של Dialogflow למהדורה אחרת, צריך להשבית את השילוב הנוכחי לפני שמפעילים את השילוב החדש.
השבתת השילוב
- ב-Business Communications Developer Console, עוברים אל שילובים.
- לוחצים על סמל גלגל השיניים לצד Dialogflow.
- לוחצים על השבתת שילוב.
- לוחצים על השבתה.
ההפעלה של שילוב Dialogflow קיים יכולה להימשך כדקה.
מבצעים את השלבים הבאים כדי להפעיל שילוב חדש עם Dialogflow.
התאמת Intent
אחרי שמפעילים את השילוב ב-Dialogflow לנציג של Business Messages, הנציג יכול להשתמש בכוונות הפרויקט שהוגדרו ב-Dialogflow כדי להבין את השאלות של המשתמשים ולהגיב להן, בלי לכתוב קוד. למידע נוסף על כוונות, אפשר לעיין במסמכים ל-Dialogflow ES ול-Dialogflow CX.
תוכלו להגדיר את הכוונות שלכם ב-Dialogflow לכל אפשרות שיחה שאתם מתכוונים לתמוך בה באמצעות אוטומציה. הנציגים של Business Messages מסתמכים על Dialogflow כדי להבין הודעות של משתמשים.
כשמתקשרים ל-Dialogflow APIs, המערכת של Business Messages מעבירה את המטענים הייעודיים של הודעות משתמשים אל הכוונות שלכם ואל ה-webhook שלכם למילוי הזמנות. לאחר התאמה של הודעת משתמש עם כוונה, אפשר לגשת למטען הזה בפורמט Struct
בשדה
business_messages_payload
בתוך QueryParameters
.
המטען הייעודי כולל את כל השדות מהודעת המשתמש, מלבד DialogflowResponse
.
עבור Dialogflow CX, מערכת Business Messages מעבירה גם לאובייקטים שלכם פרמטר סשן שנקרא channel
עם הערך google_business_messages
, ואפשר להפנות אותו לנציג שלכם בפורמט הבא: $session.params.channel
.
הפרמטר הזה יכול לשמש כדי להוסיף תנאים למילוי הזמנות של Dialogflow כדי לתמוך בכמה ערוצים באותו סוכן של Dialogflow.
למידע נוסף על פרמטרים של שאילתות, עיינו בהפניות Dialogflow ES ו-Dialogflow CX.
דרישות מוקדמות
כשיוצרים מודלים של NLU ב-Dialogflow, אפשר להגדיר סוגים שונים של תגובות לכוונת רכישה. Business Messages תומך בתגובת ברירת המחדל, שכוללת את הפרטים הבאים:
- טקסט
- מטען ייעודי (payload) בהתאמה אישית
- העברה של נציג תמיכה (Dialogflow CX בלבד)
מטען ייעודי (payload) בהתאמה אישית חייב להתאים לאובייקט הודעת JSON חוקי ב-Business Messages. במהלך ההגדרה של תגובות ייעודיות למטענים, Business Messages מתעלם מהשדות הבאים:
name
messageId
representative
תוכלו לראות את התשובות לדוגמה הבאות.
טקסט עם הצעות
{
"text": "Hello World!",
"fallback": "Hello World!\n\nReply with \"Hello\" or \"Hi!\"",
"suggestions": [
{
"reply": {
"text": "Hello",
"postbackData": "hello-formal"
}
},
{
"reply": {
"text": "Hi!",
"postbackData": "hello-informal"
}
}
]
}
צ'אט אינטראקטיבי
{
"fallback": "Hello, world!\nSent with Business Messages\n\nReply with \"Suggestion #1\" or \"Suggestion #2\"",
"richCard": {
"standaloneCard": {
"cardContent": {
"title": "Hello, world!",
"description": "Sent with Business Messages.",
"media": {
"height": "TALL",
"contentInfo":{
"altText": "Google logo",
"fileUrl": "https://www.google.com/images/branding/googlelogo/2x/googlelogo_color_272x92dp.png",
"forceRefresh": "false"
}
},
"suggestions": [
{
"reply": {
"text": "Suggestion #1",
"postbackData": "suggestion_1"
}
},
{
"reply": {
"text": "Suggestion #2",
"postbackData": "suggestion_2"
}
}
]
}
}
}
}
קרוסלה לצ'אט אינטראקטיבי
{
"fallback": "Card #1\nThe description for card #1\n\nCard #2\nThe description for card #2\n\nReply with \"Card #1\" or \"Card #2\"",
"richCard": {
"carouselCard": {
"cardWidth": "MEDIUM",
"cardContents": [
{
"title": "Card #1",
"description": "The description for card #1",
"suggestions": [
{
"reply": {
"text": "Card #1",
"postbackData": "card_1"
}
}
],
"media": {
"height": "MEDIUM",
"contentInfo": {
"fileUrl": "https://my.files/cute-dog.jpg",
"forceRefresh": false
}
}
},
{
"title": "Card #2",
"description": "The description for card #2",
"suggestions": [
{
"reply": {
"text": "Card #2",
"postbackData": "card_2"
}
}
],
"media": {
"height": "MEDIUM",
"contentInfo": {
"fileUrl": "https://my.files/elephant.jpg",
"forceRefresh": false
}
}
}
]
}
}
}
העברת נציג אנושי
{
"metadata": {}
}
בוטים עם שאלות נפוצות
אחרי שמפעילים שילוב עם Dialogflow ES עבור סוכן Business Messages, אפשר ליצור בוט לשאלות נפוצות. כשאתם מספקים שאלות ותשובות כמסמך ידע נתמך, Business Messages ו-Dialogflow יוצרים את התשתית הנדרשת כדי להבין שאלות של משתמשים ולענות עליהן בלי לכתוב קוד.
כדי לראות בוט של שאלות נפוצות בפעולה, צ'אט עם בוט השאלות הנפוצות של Business Messages.
דרישות מוקדמות
לפני שתיצרו בוט של שאלות נפוצות, תצטרכו את השאלות והתשובות שלכם כמסמך ידע (עד 50MB): קובץ HTML שזמין לכולם או קובץ CSV.
באופן כללי, מסמכי ידע
- יכולה לכלול סימון Markdown מוגבל בתשובות, כפי שמצוין בטקסט עשיר.
- גודל מקסימלי של 50MB.
- אין לחרוג מ-2000 צמדי שאלות/תשובות.
- אין תמיכה בשאלות כפולות עם תשובות שונות.
בקובצי HTML,
- קבצים מכתובות URL ציבוריות צריכים לעבור סריקה על ידי אינדקס החיפוש של Google, כך שיהיו קיימים באינדקס החיפוש. ניתן לבדוק זאת באמצעות Google Search Console. לתשומת ליבכם, האינדקס לא מרענן את התוכן. עליכם לעדכן את המסמך באופן מפורש כאשר התוכן המקורי משתנה.
- Dialogflow מסיר תגי HTML מהתוכן בעת יצירת תגובות. לכן מומלץ להימנע מתגי HTML ולהשתמש בטקסט פשוט כשהדבר אפשרי.
- אין תמיכה בקבצים עם צמד אחד של שאלה/תשובה.
בקובצי CSV,
- הקבצים צריכים לכלול שאלות בעמודה הראשונה ותשובות נוספות בעמודה השנייה, ללא כותרת.
- קבצים חייבים להשתמש בפסיקים כמפרידים.
יצירת בוט לשאלות נפוצות
- ב-Business Communications Developer Console, עוברים אל שילובים.
- בקטע מאגר הידע (שאלות נפוצות) לוחצים על יצירת מאגר ידע.
- מזינים את שם מאגר הידע ולוחצים על הבא.
- בוחרים סוג מין.
- הוספת מסמך ידע.
- אם בחרתם באפשרות HTML לסוג מקצוע, תוכלו להזין בכתובת ה-URL את כתובת ה-URL הגלויה לכול של השאלות הנפוצות.
- אם בחרתם באפשרות CSV לסוג MIME, לוחצים על העלאה ובוחרים את קובץ ה-CSV.
- לוחצים על הוספה וסיום.
כדי להוסיף מסמכים לבוט של השאלות הנפוצות, לוחצים על הלחצן הוספת מסמכים.
כשתסיימו לבצע את השלבים האלה, Business Messages יכלול את המטרה
dialogflowResponse
ההודעות שנשלחו למשתמש. אם מפעילים תגובה אוטומטית, Business Messages מגיבה למשתמש עם צמד השאלות/תשובות עם הציון הגבוה ביותר של matchConfidence
בהשוואה להודעה של המשתמש.
תשובות אוטומטיות
אם מפעילים מענה אוטומטי במהלך השילוב של Dialogflow, מערכת Business Messages מגיבה למשתמש באופן אוטומטי דרך Dialogflow. נציג של Business Messages יגיב ברמת האמינות הגבוהה ביותר. בשילוב עם Dialogflow ES, אם יש התאמות גם לתשובה וגם לשאלות בהתאמה אישית, מערכת Business Messages מגיבה להתאמה עם רמת האמינות הגבוהה ביותר.
התכונה Business Messages מסמנת את כל ההודעות שהגיבו אוטומטית כי הגיעו מנציגי BOT
. אם הנציג תומך בנציגים אנושיים, הפיצ'ר Business Messages השעה את התגובות האוטומטיות אחרי REPRESENTATIVE_JOINED
אירועים וחדש את התשובות באופן אוטומטי אחרי REPRESENTATIVE_LEFT
אירועים. רוצים לדעת איך מעבירים את הבוט לנציג?
מענה אוטומטי עם תשובה לשאלה נפוצה
אם השילוב של Dialogflow ES מאפשר לעסק לענות על השאלה הספציפית ביותר, מערכת Business Messages ממפה את התשובה להודעת טקסט. אם יש תשובה קשורה, שונה, תוצג ההודעה "הצגת הצעה אחרת של answer" אם לא, ההודעה כוללת שאלה ומציעה שאלה האם היא נענית לבקשת המשתמש.
תגובה אוטומטית בתגובת כוונה
תגובות מסוג Intent יכולות לכלול אחת או יותר מהתגובות הבאות.
- Dialogflow ES: טקסט, loadload בהתאמה אישית
- Dialogflow CX: טקסט, loadload בהתאמה אישית, הדרכה על נציג אנושי
אם תגובת הכוונה היא ברמת האמינות הגבוהה ביותר, הכללים הבאים יחולו.
- אם בתשובה יש לפחות ערך טקסט אחד, Business Messages ממופה את הערך הזה להודעת טקסט.
- אם בתשובה יש לפחות מטען ייעודי אחד (payload) עם מבנה אובייקט JSON חוקי של Business Messages, מערכת Business Messages תיצור הודעה באמצעות אובייקט JSON שסופק.
- אם התקבלה לפחות תגובה אחת של נציג תמיכה אנושית לגבי התגובה, קראו את המאמר מענה אוטומטי לבקשה לנציג תמיכה.
מאחר ש-Dialogflow יכול לכלול כמה תשובות במסגרת התאמה אחת לכוונה, Business Messages שולחת כל תגובה, טקסט או מטען מותאם אישית, כהודעה נפרדת. אם יש מספר הודעות בהתאמה לכוונה, אבל חלקן לא תקינות, Business Messages תשלח רק הודעות תקפות כתשובות אוטומטיות.
מענה אוטומטי לבקשת נציג אנושי
באמצעות Dialogflow CX יש תמיכה בתגובה למסירת נציג תמיכה. היא מסמנת שהשיחה מועברת לנציג אנושי, ומאפשרת לכם להעביר מטא-נתונים מותאמים אישית של תהליך הטיפול. אם תגובת Intent תואמת לרמת האמינות הגבוהה ביותר, והיא כוללת העברת הודעות פעילה, Business Messages שולחת אירוע שהתבקש על ידי נציג התמיכה ל-webhook שלכם. כדי לטפל באירוע הזה, קראו את המאמר העברת הבוט לנציג תמיכה.
מענה אוטומטי עם הודעת גיבוי
אם ל-Dialogflow לא מגיעה התאמה ברמת המהימנות הגבוהה, המערכת של Business Messages שולחת תגובה חלופית. הגיבויים מתבצעים באופן שונה ב-Dialogflow ES וב-Dialogflow CX.
Dialogflow ES
אם יש בוטים של שאלות נפוצות, אם לא תהיה התאמה לשאלה של Business Messages, תקבלו מ-Business Messages הודעה חלופית על כך שהיא לא הצליחה למצוא תשובה.
אם לכוונת רכישה יש התאמה, אם אין התאמה בין התגובה לכוונה, Business Messages שולחת תגובת Intent חזרה למצב ראשוני. תוכלו להשתמש בטקסט החלופי שניתן על ידי Dialogflow, או להגדיר חזרה למצב ראשוני עם טקסט נוסף ומטענים ייעודיים בהתאמה אישית.
זוהי דוגמה לתגובה חלופית עם webhook שניתן לקבל:
{
"intentResponses": [
{
"intentName": "projects/df-integration/agent/intents/12345",
"intentDisplayName": "Default Fallback Intent",
"intentDetectionConfidence": "1.0",
"fulfillmentMessages": [
{
"text": "One more time?"
}
]
}
]
}
Dialogflow מאכלס את השדות intent_name
ו-intent_display_name
מראש.
Dialogflow CX
Dialogflow CX מטפל בתשובות לכוונת החזרה כאירועים מובנים. אם לא נמצאה התאמה לתגובת Intent, Business Messages תשלח הודעת גיבוי מאירוע ברירת המחדל ללא התאמה ב-Dialogflow. תוכלו להשתמש בטקסט החלופי שניתן על ידי Dialogflow, או להגדיר חזרה למצב ראשוני עם אפשרויות נוספות של טקסט, מטען ייעודי (payload) בהתאמה אישית ואפשרות להעברת סוכן אנושי.
זוהי דוגמה לתגובה חלופית עם webhook שניתן לקבל:
{
"intentResponses": [
{
"intentName": "sys.no-match-default",
"intentDisplayName": "Default Fallback Intent",
"intentDetectionConfidence": "0.3",
"fulfillmentMessages": [
{
"text": "I missed that, say that again?"
}
]
}
]
}
ל-Business Messages יש הצפנה בתוך הקוד intent_name
ו-intent_display_name
.
שדות ספציפיים ל-Dialogflow
אחרי שמפעילים את השילוב עם Dialogflow, המשתמש שולח הודעה לסוכן, שמקבל את האובייקט, dialogflowResponse
. ה-webhook שלכם יקבל מטען ייעודי (payload) של כל ההודעות מהמשתמשים, בין אם ההודעה ב-Business Messages נשלחה אליכם באופן אוטומטי ובין אם לא. כדי לבדוק אם קיימת תגובה אוטומטית, צריך לבדוק את הערך בשדה autoResponded
ולהחליט אם להגיב למשתמש.
Dialogflow ES
... "dialogflowResponse": { "queryText": "TEXT", "intentResponse": { "intentName": "INTENT_ID", "intentDisplayName": "INTENT_NAME", "intentDetectionConfidence": "CONFIDENCE_NUMERIC", "fulfillmentMessages": [{ "text": "FULFILLMENT_TEXT", "jsonPayload": "JSON", "error": "ERROR_STATUS", }], "faqResponse": { "userQuestion": "USER_QUESTION", "answers": [{ "faqQuestion": "FAQ_QUESTION", "faqAnswer": "FAQ_ANSWER", "matchConfidenceLevel": "CONFIDENCE_LEVEL", "matchConfidence": "CONFIDENCE_NUMERIC", }], }, "autoResponded": "BOOLEAN", "autoRespondedMessages": [{ "message": "MESSAGE_JSON", "responseSource": "SOURCE", }], }, ...
שדה | תיאור |
---|---|
queryText
|
הטקסט המקורי של שאילתת השיחה. אם תיקון האיות האוטומטי מופעל במודל Dialogflow, השדה queryText מכיל את קלט המשתמש המתוקן. |
intentName |
המזהה הייחודי של הכוונה המותאמת. |
intentDisplayName |
השם של כוונת ההתאמה. |
intentDetectionConfidence
|
דירוג הביטחון המספרי
בהתאמה בין queryText ל-intentName . |
text |
תגובת טקסט. |
jsonPayload
|
מטענים מותאמים אישית.
המחרוזת הזו תואמת למטענים המותאמים אישית שהוגדרו ב-Dialogflow.
אם המטען הייעודי לא כולל מבנה אובייקטים חוקי של Business Messages, error מתאר את הבעיה. |
error |
תיאור של שגיאה בהודעת מימוש כוונה. |
userQuestion |
השאלה שהמשתמש שאל, כפי שהוגדרה על ידי Dialogflow. |
faqQuestion |
שאלה מ-Dialogflow תואמת לשאלה של המשתמש. |
faqAnswer |
תשובה מ-Dialogflow מתאימה לשאלה של המשתמש. |
matchConfidenceLevel
|
רמת הביטחון בהתאמה בין
userQuestion לבין faqQuestion . |
matchConfidence
|
דירוג האמינות המספרי בהתאמה בין
userQuestion ל-faqQuestion . |
autoResponded
|
האם Business Messages הגיב אוטומטית למשתמש עם תשובה מ-Dialogflow. |
message |
המטען הייעודי של התגובה האוטומטית. |
responseSource
|
המקור של התגובה האוטומטית. עיינו בResponseSource . |
Dialogflow CX
... "dialogflowResponse": { "queryText": "TEXT", "intentResponse": { "intentName": "INTENT_ID", "intentDisplayName": "INTENT_NAME", "intentDetectionConfidence": "CONFIDENCE_NUMERIC", "fulfillmentMessages": [{ "text": "FULFILLMENT_TEXT", "jsonPayload": "JSON", "error": "ERROR_STATUS", "liveAgentHandoff": { "metadata": {} } }], "autoResponded": "BOOLEAN", "autoRespondedMessages": [{ "message": "MESSAGE_JSON", "responseSource": "SOURCE", }], }, ...
שדה | תיאור |
---|---|
queryText
|
הטקסט המקורי של שאילתת השיחה. אם תיקון האיות האוטומטי מופעל במודל Dialogflow, השדה queryText מכיל את קלט המשתמש המתוקן. |
intentName |
המזהה הייחודי של הכוונה המותאמת. |
intentDisplayName |
השם של כוונת ההתאמה. |
intentDetectionConfidence
|
דירוג הביטחון המספרי
בהתאמה בין queryText ל-intentName . |
text |
תגובת טקסט. |
jsonPayload
|
מטענים מותאמים אישית.
המחרוזת הזו תואמת למטענים המותאמים אישית שהוגדרו ב-Dialogflow.
אם המטען הייעודי לא כולל מבנה אובייקטים חוקי של Business Messages, error מתאר את הבעיה. |
error |
תיאור של שגיאה בהודעת מימוש כוונה. |
liveAgentHandoff |
מטא-נתונים מותאמים אישית עבור תהליך המסירה של הנציג. |
autoResponded
|
האם Business Messages הגיב אוטומטית למשתמש עם תשובה מ-Dialogflow. |
message |
המטען הייעודי של התגובה האוטומטית. |
responseSource
|
המקור של התגובה האוטומטית. עיינו בResponseSource . |