איך מפתחים אפליקציית Dialogflow CX ל-Google Chat שמבינה ומגיבה בשפה טבעית

בדף הזה נסביר איך ליצור אפליקציה ל-Google Chat שיכולה להבין שפה טבעית ולהשיב בהתאם באמצעות Dialogflow. המדריך הזה משתמש ב-Dialogflow CX, שכולל שילוב ישיר עם Google Chat. אפשר גם להשתמש ב-Dialogflow ES כדי ליצור אפליקציית Google Chat של Dialogflow ES. לשם כך, פועלים לפי ההוראות במדריך Dialogflow ES Google Chat.

לדוגמה, אפליקציית Chat שעוזרת לאנשים לשכור מכוניות. משתמש יכול לכתוב "אני רוצה לשכור רכב". אפליקציית Chat עשויה להשיב בשאלה כמו "איפה תרצה לאסוף את הרכב?", וכך להתחיל שיחה עם המשתמש שדומה לשיחה עם בן אדם. במהלך השיחה, אפליקציית Chat מבינה את מה שהמשתמש אומר ומשייכת לו תשובות בצורת דיבור אנושי, בזמן ביצוע ההזמנה של השכרת הרכב.

זו רק דוגמה אחת. אפליקציות Chat של Dialogflow שימושיות בכל סוגי האינטראקציות. אם נדרשת דיבור אנושי טבעי, היא משתמשת ב-Dialogflow Chat. הנציגים המובנים עוזרים לכם להתחיל לעבוד במהירות ולהציג את מה ש-Dialogflow יכול לעשות, למשל:

  • הזמנת טיסות
  • קביעת תורים לרופאים
  • הזמנת משלוח אוכל
  • עונים על שאלות לגבי קטלוג מוצרים קמעונאיים, למשל אם פריטים זמינים בצבעים אחרים.
  • דף הבחירה של נציג Dialogflow שנוצר מראש.
    איור 1. בחירת נציג מובנה מראש לאפליקציית Chat של Dialogflow.
  • בדיקת הנציג ב-Dialogflow CX.
    איור 2. בדיקת הסוכן ב-Dialogflow CX כדי לוודא שהלוגיקה וההגדרות האישיות של הסוכן פועלות כמצופה. בדיאגרמה רואים קבוצה רציפה של דפי נושא שעוסקים בשלבים ספציפיים בשיחה, כמו הגדרה של מיקום איסוף והחזרה לרכב להשכרה, ומגדיר את הלוגיקה שמחברת ביניהם. השיחה נבדקת בסימולטור.
  • הגדרת אפליקציית Chat של Dialogflow.
    איור 3. הגדרת אפליקציית Chat לעיבוד תשובות באמצעות הסוכן של Dialogflow CX בדף ההגדרה של Chat API במסוף Google Cloud.
  • בדיקת אפליקציית Chat של Dialogflow CX
    איור 4. שיחה על הזמנה של רכב שכור באמצעות אפליקציית Dialogflow Chat ב-Google Chat.

מטרות

  • מגדירים את הסביבה.
  • יצירה ופריסה של סוכן Dialogflow CX.
  • איך יוצרים ומפרסים אפליקציה ל-Chat שמבוססת על סוכן Dialogflow CX.
  • בודקים את אפליקציית Chat.

דרישות מוקדמות

ארכיטקטורה

התרשים הבא מציג את הארכיטקטורה של אפליקציית Chat שנוצרה באמצעות Dialogflow:

הארכיטקטורה של אפליקציית Chat שמיושמת באמצעות Dialogflow.

בתרשים הקודם, כשמשתמש מקיים אינטראקציה עם אפליקציית Chat של Dialogflow, מתרחש תהליך העברת המידע הבא:

  1. משתמש שולח הודעה ב-Chat לאפליקציית Chat, בצ'אט אישי או במרחב ב-Chat.
  2. נציג וירטואלי של Dialogflow שנמצא ב-Google Cloud מקבל את ההודעה ומעבד אותה כדי ליצור תשובה.
  3. לחלופין, באמצעות Dialogflow webhook, הנציג Dialogflow יכול לקיים אינטראקציה עם שירותים חיצוניים של צד שלישי, כמו מערכת לניהול פרויקטים או כלי למכירת כרטיסים.
  4. הנציג של Dialogflow שולח תשובה חזרה לשירות של אפליקציית Chat ב-Chat.
  5. התשובה תישלח למרחב המשותף ב-Chat.

הגדרת הסביבה

לפני שמשתמשים ב-Google APIs, צריך להפעיל אותם בפרויקט ב-Google Cloud. אפשר להפעיל ממשק API אחד או יותר בפרויקט אחד ב-Google Cloud.
  1. במסוף Google Cloud, מפעילים את Google Chat API ואת Dialogflow API.

    הפעלת ממשקי ה-API

  2. מוודאים שאתם מפעילים את ממשקי ה-API בפרויקט הנכון ב-Cloud, ואז לוחצים על Next.

  3. מוודאים שאתם מפעילים את ממשקי ה-API הנכונים ולוחצים על Enable.

יצירת סוכן ב-Dialogflow CX

סוכן Dialogflow CX הוא סוכן וירטואלי שמטפל בשיחות במקביל עם משתמשי הקצה שלכם. זהו מודול להבנת שפה טבעית שמבין את הניואנסים של השפה האנושית. Dialogflow מתרגם את הטקסט של משתמש הקצה במהלך השיחה לנתונים מובְנים שהאפליקציות והשירותים שלכם יכולים להבין. אתם מתכננים ובונים נציג של Dialogflow כדי לטפל בסוגי השיחות שנדרשות למערכת שלכם.

נציג ב-Dialogflow הוא כמו נציג אנושי במוקד טלפוני. אתם מארגנים אימון לשני המודלים כדי לטפל בתרחישי שיחה צפויים, והאימון לא צריך להיות מפורט מדי.

כך יוצרים את הסוכן של Dialogflow CX:

  1. במסוף Dialogflow CX, פותחים את מסוף Dialogflow CX. לוחצים על תפריט > Dialogflow CX.

    כניסה למסוף Dialogflow CX

  2. בוחרים פרויקט ב-Google Cloud. יכול להיות שתצטרכו ללחוץ על הכול ואז לחפש את הפרויקט.

  3. עכשיו יש לכם אפשרות לבחור סוכן שנוצר מראש או ליצור סוכן משלכם. אם אתם מעדיפים לבדוק את ההתאמה האישית של הנציגים בהמשך, תוכלו לבחור באחד מהנציגים שנוצרו מראש. הם גם יעזרו לכם להבין מה הנציגים יכולים לעשות.

    כדי לבחור סוכן שנוצר מראש:

    1. לוחצים על שימוש בנציגים שהוגדרו מראש.
    2. בוחרים סוכן שנוצר מראש. במדריך הזה, בוחרים באפשרות נסיעות: השכרת רכב.

      הנציגים מדורגים כמתחילים, ברמה בינונית או ברמה מתקדמת, בהתאם למספר התכונות שבהן הם משתמשים ולמורכבות של לוגיקה של השיחה. אם בוחרים סוכן ברמה בינונית או מתקדמת, יכול להיות שתצטרכו לבצע התאמות אישיות והגדרות ספציפיות לסוכן, כולל הפעלת תכונות וממשקי API במסוף Google Cloud.

    3. לוחצים על ייבוא כסוכן.

    כדי ליצור סוכן משלכם:

    1. לוחצים על יצירת נציג.
    2. בוחרים באפשרות Auto-generate כדי ליצור סוכן של מאגר נתונים, או באפשרות Build your own כדי ליצור סוכנים מסוגים אחרים.

    במאמר יצירת נציג ב-Dialogflow CX מוסבר בפירוט איך יוצרים נציגים.

  4. מגדירים את ההגדרות הבסיסיות של הסוכנים:

    1. בשדה Display name, מזינים שם מוצג.
    2. בוחרים את המיקום המועדף. כדי לשנות את הגדרות המיקום המתקדמות, לוחצים על עריכה.
    3. בוחרים את אזור הזמן המועדף.
    4. בוחרים את שפת ברירת המחדל של הנציג. אי אפשר לשנות את שפת ברירת המחדל של נציג אחרי היצירה שלו.
  5. לוחצים על יצירה. מערכת Dialogflow CX תתחיל ליצור את הסוכן, ואז תוצג תהליך ההתחלה שמוגדר כברירת מחדל לסוכן.

  6. אפשר גם להתאים אישית את הנציג. במאמר יצירת נציג של Dialogflow CX מוסבר בפירוט איך להתאים אישית את הנציג.

  7. מומלץ לבדוק את הסוכן:

    1. לוחצים על Test agent.
    2. בוחרים באפשרות בדיקת סוכן בסביבה.
    3. בקטע Environment (סביבה), בוחרים באפשרות Draft (טיוטה).
    4. ב-Flow, בוחרים באפשרות Default Start Flow.
    5. בקטע 'דף', בוחרים באפשרות דף הפתיחה.
    6. בשורת הכתיבה שיחה עם נציג, מקלידים Hello ומקישים על Enter. הנציג מציג את עצמו.
    7. כדי להשלים את הבדיקה, צריך לנהל שיחת בדיקה לדוגמה.
  8. הנציג של Dialogflow CX נוצר. חוזרים למסוף Dialogflow CX. לוחצים על סמל התפריט > Dialogflow CX.

    כניסה למסוף Dialogflow CX

  9. בקטע סוכנים, לוחצים על > העתקת השם. שומרים את השם הזה, כי תצטרכו להשתמש בו כשמגדירים את אפליקציית Chat.

יצירת אפליקציה של Chat וחיבור שלה לנציג Dialogflow

אחרי שיוצרים נציג Dialogflow CX, אפשר לבצע את הפעולות הבאות כדי להפוך אותו לאפליקציית Chat:

  1. נכנסים לדף Google Chat API במסוף Google Cloud. מחפשים את 'Google Chat API' ולוחצים על Google Chat API ואז על ניהול.

    כניסה ל-Chat API

  2. לוחצים על Configuration (הגדרה) ומגדירים את אפליקציית Chat:

    1. בשדה App name, מזינים Dialogflow App.
    2. בקטע Avatar URL, מזינים את הערך https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png.
    3. בשדה Description, מזינים Responds to real human conversation.
    4. בקטע פונקציונליות, בוחרים באפשרויות קבלת הודעות בצ'אט אישי והצטרפות למרחבים משותפים ולשיחות קבוצתיות.
    5. בקטע Connection settings (הגדרות החיבור), בוחרים באפשרות Dialogflow.
    6. בקטע הגדרות של Dialogflow, בוחרים באפשרות Dialogflow CX.
    7. בשדה Agent or Environment resource name, מדביקים את שם הסוכן של Dialogflow CX שהעתקתם בסוף הקטע יצירת סוכן של Dialogflow CX.
    8. מגדירים את אפליקציית Chat הזו כזמינה לאנשים ולקבוצות ספציפיים בדומיין ומזינים את כתובת האימייל שלכם.
    9. בקטע יומנים, בוחרים באפשרות רישום שגיאות ביומן.
  3. לוחצים על שמירה.

אפליקציית Chat מוכנה לקבל הודעות ולענות להן ב-Chat.

בדיקת אפליקציית Chat

כדי לבדוק את אפליקציית Dialogflow CX Chat, שולחים לה הודעה ב-Google Chat.

  1. פותחים את Google Chat באמצעות חשבון Google Workspace שסיפקתם כשהוספת את עצמכם כבודקים מהימנים.

    כניסה ל-Google Chat

  2. לוחצים על צ'אט חדש.
  3. בשדה Add 1 or more people, מקלידים את שם אפליקציית Chat.
  4. בוחרים את אפליקציית Chat בתוצאות. תיפתח צ'אט אישי.

  5. בצ'אט האישי החדש עם האפליקציה, מקלידים Hello ומקישים על enter.

    התגובה של אפליקציית Dialogflow Chat מציגה את עצמה.

  6. כדי להשלים את הבדיקה, צריך לנהל שיחת בדיקה לדוגמה.

שיחה לדוגמה לבדיקה

כדי לבדוק את האפליקציה Dialogflow CX Chat במסוף של Dialogflow CX או ב-Google Chat, מבצעים את השיחה הבאה. ההסבר עוזר לכם להבין איך הסוכן של Dialogflow CX מפרש את השפה הטבעית של המשתמש ויוצר תשובה משלו בשפה טבעית בכל שלב בשיחה. השיחה לדוגמה הזו מבוססת על הסוכן שנוצר מראש שנקרא Travel: car rental.

תיבת דו-שיח הסבר
משתמש קצה: שלום
נציג: שלום! אני הסוכנות הווירטואלית להשכרת רכב. אוכל לעזור לך להתחיל הזמנה של השכרת רכב חדשה. איך אוכל לעזור לך?
  1. המסלול Default Default Intent ב-Default Start Flow נקרא.
  2. הביצוע של טיפול המצב הזה ('היי! אני..." נוסף לתור התשובות.
  3. הסוכן שולח את תור התשובות למשתמש הקצה.
משתמש קצה: אני רוצה לשכור רכב.
נציג: איפה תרצה לאסוף את הרכב?
  1. יש התאמה בין מסלול ה-Intent car_rental.reservation_create ב-Start Page.
  2. הסשן עובר לדף Pickup Location (מיקום האיסוף).
  3. לא מילאת את טופס הדף pickup Location (מיקום האיסוף), ולכן הנציג משתמש בפרמטר pickup_location כדי לשלוח למשתמש בקשה ("היכן ברצונך לאסוף את עצמו..."), שיתווסף לתור התגובות.
  4. הסוכן שולח את תור התשובות למשתמש הקצה.
משתמש קצה: לאס וגאס
נציג: בסדר, האיסוף יהיה בלאס וגאס.
נציג/ה: האם מיקום המסירה שונה ממיקום האיסוף?
  1. הקלט של משתמשי הקצה ממלא את הפרמטר pickup_location שהנציג ביקש בשיחה הקודמת.
  2. מתבצע התאמה של מסלול הכוונה car_rental.return_different_location בתהליך ההתחלה שמוגדר כברירת מחדל.
  3. המסלול להשלמת הטופס בדף pickup Location (מיקום האיסוף) מוערך ונקרא. הוא מכיל מילוי בקשה ('Ok, yourpickup...'), שמתווסף לתור התגובות והפניות הפרמטרים שלו מוגדרות לערכים בפועל שסופקו על ידי משתמש הקצה.
  4. הסשן עובר לדף אישור המיקום.
  5. בדף Confirm Location יש מילוי של שדה ('האם מיקום המסירה שונה…'), שיתווסף לתור התגובות.
  6. הסוכן שולח את תור התשובות למשתמש הקצה.
משתמש קצה: כן. אחזיר את הרכב בלוס אנג'לס.
נציג/ה: בסדר, האיסוף יהיה בלוס אנג'לס.
נציג/ה: באיזה תאריך ושעה ברצונך לאסוף את הרכב?
  1. מתבצע התאמה של מסלול הכוונה car_rental.return_different_location בתהליך ההתחלה שמוגדר כברירת מחדל.
  2. הסשן עובר לדף מיקום המסירה.
  3. הקלט של משתמש הקצה ממלא את הפרמטר drop_off_location שהנציג ביקש בשלב הקודם של השיחה.
  4. מתבצעת הערכה של המסלול להשלמת הטופס בדף Drop Off Location, והוא מופעל. יש לו השלמה ('בסדר, ההזמנה שלך תגיע...'), שמתווספת לתור התשובות.
  5. הסשן עובר לדף משך ההשכרה.
  6. בדף Rental Duration יש ערכי טפסים חלקיים, ולכן המשתמש מתבקש להזין את הפרמטר pickup_date_time ('What date and time would you like to pick up...'). שיתווסף לתור התגובות.
  7. הנציג שולח את תור התגובות למשתמש הקצה.
משתמש קצה: אני רוצה לאסוף את הרכב ב-5 במרץ בשעה 12:00.
נציג/ה: מהו התאריך והשעה שבהם ברצונך להביא את הרכב?
  1. הקלט של משתמש הקצה ממלא את הפרמטר pickup_date_time שהנציג ביקש בשלב הקודם של השיחה.
  2. בדף Rental Duration חסר ערך נוסף בטופס, ולכן המשתמש מתבקש להזין את הפרמטר drop_off_date_time ('What date and time would you like to drop off…'). שיתווסף לתור התגובות.
  3. הסוכן שולח את תור התשובות למשתמש הקצה.
משתמש קצה: 15 במרץ בשעה 12:00.
נציג: אז כדי לאשר:

אתה תאסוף את הרכב בלאס וגאס 2024-03-05 12:00:00 ותעביר אותו בלוס אנג'לס 2024-03-15 12:00:00

נכון?
  1. הקלט של משתמש הקצה ממלא את הפרמטר drop_off_date_time שביקש הנציג בפנייה בשיחה הקודמת.
  2. הסשן עובר לדף Confirm Rental Duration (אישור משך השכירות).
  3. בדף Confirm Rental Duration יש מילוי של שדה ('So to confirm…'), שיתווסף לתור התגובות.
  4. הנציג שולח את תור התגובות למשתמש הקצה.
משתמש קצה: כן, תודה.
נציג: מעולה! עכשיו נבחר רכב.
נציג: רוצה רכב בסיסי או יוקרתי?
  1. יש התאמה לנתיב ה-Intent small_partner.confirmation.yes בדף אישור של משך ההשכרה.
  2. הנציג מאשר את הבחירה של המשתמש באמצעות הודעה ('נהדר! עכשיו נבחר..."), והיא תתווסף לתור התשובות.
  3. הסשן עובר לדף Vehicle Disambiguation.
  4. הטופס בדף Vehicle Disambiguation לא הושלם, ולכן הנציג משתמש בפרמטר vehicle_type כדי להציג למשתמש הודעה ("Would you like an economy or luxury..."), והיא תתווסף לתור התשובות.
  5. הסוכן שולח את תור התשובות למשתמש הקצה.
משתמש קצה: משלוח בסיסי, בבקשה.
סוכן: מתאים לך מכונית המצילה או משאית המצילים?
  1. נתיב Intent $session.params.vehicle_type="economy_vehicle" תואם.
  2. הסשן עובר לדף אפשרויות כלכלי.
  3. בדף Economy Options יש מילוי של שדה ('Would you like the…‎'), שיתווסף לתור התגובות.
  4. הסוכן שולח את תור התשובות למשתמש הקצה.
משתמש קצה: Cymbal Truck.
סוכן: משאית Cymbal Truck עולה 50.33 $ליום. היא מתאימה ל-4 אנשים ומגיעה עם רדיו AM/FM. רוצה להמשיך לתשלום?
משתמש קצה: כן, בבקשה.
  1. מתבצע התאמה של מסלול ה-Intent‏ $session.params.vehicle_type="Cymbal Truck" והפרמטר vehicle_model מתמלא.
  2. הסשן עובר לדף Confirm Cymbal Truck.
  3. בדף Confirm Cymbal Truck יש מילוי של פריט ('The Cymbal Truck is $50.33 per day…'), שיתווסף לתור התגובות.
  4. הסוכן שולח את תור התשובות למשתמש הקצה.
  5. התשובה של המשתמש תואמת למסלול small_talk.confirmation.yes.
נציג: באיזה סוג כרטיס ברצונך להשתמש?
משתמש קצה: Altostrat
סוכן: צריך להזין את מספר הכרטיס.
משתמש קצה: 1234 1234 1234 1234
נציג: מה השם שמופיע בכרטיס?
משתמש קצה: רון
נציג: מהו הרחוב של הכתובת לחיוב?
משתמש קצה: שדרות 1800 Amphibious Blvd. Mountain View, CA
סוכן: מהו המיקוד לחיוב?
משתמש קצה: 94045
נציג: עליך לאסוף את הרכב של Cymbal ב-Las Vegas ב-05 במרץ 2024 בשעה 12:00:00 ולהחזיר אותו ב-15 במרץ 2024 בשעה 12:00:00. העלות הכוללת של הנסיעה הזו היא $175.38.
נציג/ה: תודה ששכרת דירה דרך האתר שלנו. שיהיה לך יום מצוין!
  1. הסשן עובר לדף Payment.
  2. הטופס Payment לא הושלם, ולכן הנציג מבקש מהמשתמש את הפרמטרים card_type,‏ card_number, ‏ billing_name,‏ billing_street_address ו-billing_zip_code ("What card type will..."), התגובות מתווספות ברצף לתור התגובות ונשלחות כשהמשתמש מגיב. התשובות של המשתמש מגדירות את הערך של כל פרמטר.
  3. הסשן עובר לדף Rental Confirmation.
  4. בדף Rental Confirmation יש השלמת רשומה ("Ok, your pickup will be..."), שיתווסף לתור התגובות.
  5. הנציג שולח את תור התשובות למשתמש הקצה.
  6. הסשן עובר לדף סיום הסשן.

שליחת הודעות בכרטיסים מ-Dialogflow

Dialogflow יכול להשיב בהודעות טקסט או כרטיס. כדי להשיב עם הודעה בכרטיס, צריך לציין אותה כמטען ייעודי (payload) בהתאמה אישית במילוי ההזמנה.

קובץ ה-JSON הבא מראה איך שולחים הודעת כרטיס כמטען ייעודי (payload) בהשלמה:

json

{
  'cardsV2': [{
    'cardId': 'createCardMessage',
    'card': {
      'header': {
        'title': 'A card message!',
        'subtitle': 'Sent from Dialogflow',
        'imageUrl': 'https://developers.google.com/chat/images/chat-product-icon.png',
        'imageType': 'CIRCLE'
      },
      'sections': [
        {
          'widgets': [
            {
              'buttonList': {
                'buttons': [
                  {
                    'text': 'Read the docs!',
                    'onClick': {
                      'openLink': {
                        'url': 'https://developers.google.com/workspace/chat'
                      }
                    }
                  }
                ]
              }
            }
          ]
        }
      ]
    }
  }]
}

מגבלות ושיקולים

  • אירועי אינטראקציה בצ'אט כוללים תמיכה מוגבלת וכמה שיקולים:
    • אלו הסוגים של אירועי אינטראקציה שנתמכים:
      • MESSAGE
      • ADDED_TO_SPACE
      • CARD_CLICKED
    • באירועים מסוג MESSAGE או ADDED_TO_SPACE, קלט השאילתה שנשלח לסוכן של Dialogflow תואם לערך של השדה argumentText בהודעה ב-Chat. אם ההודעה כוללת פקודת קו נטוי, המערכת תשתמש בערך של השדה text במקום זאת.
    • באירועים מסוג CARD_CLICKED, קלט השאילתה שנשלח לסוכנות Dialogflow מעוצב כ-CARD_CLICKED.functionName, כאשר functionName תואם לערך של השדה function באובייקט Action שמצורף לרכיב הכרטיס האינטראקטיבי (כמו לחצן).
    • המטען הייעודי (payload) המלא של JSON עם כל אירוע של אינטראקציה ב-Chat נשלח ל-Dialogflow כמטען ייעודי (payload) מותאם אישית בפרמטר השאילתה, וניתן לגשת אליו באמצעות Dialogflow webhook על ידי שליחת שאילתה על הערך של השדה WebhookRequest.payload.
  • שיקולים למענה לפקודות של לוכסנים ולקבלת נתונים מכרטיסים או מתיבות דו-שיח:
    • כשאפליקציות ל-Dialogflow Chat מקבלות הודעה עם פקודת קו נטוי, קלט השאילתה מכיל רק את הערך של השדה text. השדה text מתחיל בשם של פקודת הפסיק (למשל, /command). אפשר להשתמש בשם הזה כדי להגדיר את הכוונה של סוכן Dialogflow לזהות פקודת פסיק.
    • אם סוכן Dialogflow צריך לעבד את המטען הקונטייננטי בפורמט JSON של אירוע אינטראקציה בצ'אט, הוא יכול לעשות זאת באמצעות Dialogflow webhook כדי לבדוק את המטען הקונטייננטי המותאם אישית בפרמטר השאילתה.
    • כדי להציג תיבת דו-שיח מנציג Dialogflow, צריך להשיב עם עומס נתונים מותאם אישית אחד בפורמט JSON שכולל הודעה עם תגובת פעולה מסוג DIALOG.
    • כדי לעבד נתונים שהוזנו מכרטיסים, סוכן Dialogflow יכול לזהות כוונות שמתחילות בטקסט CARD_CLICKED ולהשיב באמצעות עומס נתונים יחיד של JSON בהתאמה אישית שמכיל את הפעולה המתאימה.
  • אי אפשר להשתמש בתצוגות מקדימות של קישורים.
  • אם הנציג של Dialogflow משיב רק בהודעה אחת, ההודעה נשלחת ל-Google Chat באופן סינכרוני. אם הנציג של Dialogflow מתייחס למספר הודעות, כל ההודעות נשלחות ל-Chat באופן אסינכרוני באמצעות קריאה ל-method create במשאב spaces.messages ב-Chat API פעם אחת בכל הודעה.
  • כשמשתמשים בשילוב של Dialogflow CX עם Chat, צריך להגדיר את הסוכן של Dialogflow ואת אפליקציית Chat באותו פרויקט ב-Google Cloud. אם אתם צריכים להגדיר את Dialogflow ואת Chat בפרויקטים שונים ב-Cloud, אתם יכולים להגדיר שרת ביניים כדי לאפשר את החיבור. למידע נוסף, תוכלו להיעזר בדוגמה הזו לשילוב של Chat ב-Dialogflow CX ב-GitHub.

פתרון בעיות

כשאפליקציית Google Chat או כרטיס מחזירים שגיאה, מוצגת בממשק של Chat ההודעה "משהו השתבש". או "לא ניתן לעבד את הבקשה שלך". לפעמים בממשק המשתמש של Chat לא מוצגת הודעת שגיאה, אבל באפליקציה או בכרטיס של Chat מתקבלת תוצאה לא צפויה. לדוגמה, יכול להיות שלא תוצג הודעה בכרטיס.

יכול להיות שהודעת שגיאה לא תוצג בממשק המשתמש של Chat, אבל כשיומני השגיאות של אפליקציות Chat מופעלים, יהיו זמינות הודעות שגיאה תיאוריות ונתוני יומנים שיעזרו לכם לתקן שגיאות. במאמר פתרון בעיות ושגיאות ב-Google Chat מוסבר איך מציגים, מאתרים באגים ומתקנים שגיאות.

הסרת המשאבים

כדי להימנע מחיובים בחשבון Google Cloud בגלל השימוש במשאבים שנעשה במסגרת המדריך הזה, מומלץ למחוק את הפרויקט ב-Cloud.

  1. במסוף Google Cloud, עוברים לדף Manage resources. לוחצים על תפריט > IAM ואדמין > ניהול משאבים.

    כניסה ל-Resource Manager

  2. ברשימת הפרויקטים, בוחרים את הפרויקט שרוצים למחוק ולוחצים על Delete .
  3. כדי למחוק את הפרויקט, כותבים את מזהה הפרויקט בתיבת הדו-שיח ולוחצים על Shut down.