בדף הזה מוסבר איך אפליקציית Chat יכולה לפתוח תיבות דו-שיח כדי להשיב למשתמשים.
Dialogs הם ממשקים מבוססי כרטיסים בחלונות שנפתחים מהודעה או ממרחבים משותפים ב-Chat. תיבת הדו-שיח והתוכן שלה גלויים רק למשתמש שפתח אותה.
באפליקציות ל-Chat אפשר להשתמש בתיבות דו-שיח כדי לבקש מידע ממשתמשי Chat ולאסוף אותו, כולל טפסים רב-שלביים. פרטים נוספים על בניית רכיבי קלט של טפסים זמינים במאמר איסוף ועיבוד מידע ממשתמשים.
דרישות מוקדמות
Node.js
אפליקציית Google Chat שמופעלות בה תכונות אינטראקטיביות. כדי ליצור אפליקציית Chat אינטראקטיבית באמצעות שירות HTTP, תוכלו להיעזר במדריך למתחילים.
Python
אפליקציית Google Chat שמופעלות בה תכונות אינטראקטיביות. כדי ליצור אפליקציה אינטראקטיבית ל-Chat באמצעות שירות HTTP, תוכלו להיעזר במדריך למתחילים הזה.
Java
אפליקציית Google Chat שמופעלת בה תכונות אינטראקטיביות. כדי ליצור אפליקציה אינטראקטיבית ל-Chat באמצעות שירות HTTP, תוכלו להיעזר במדריך למתחילים הזה.
Apps Script
אפליקציית Google Chat שמופעלת בה תכונות אינטראקטיביות. כדי ליצור אפליקציה אינטראקטיבית ל-Chat ב-Apps Script, תוכלו להיעזר במדריך למתחילים.
פתיחת תיבת דו-שיח
בקטע הזה נסביר איך להשיב ולהגדיר שיחה:
- הפעלת הבקשה לתיבת דו-שיח כתוצאה מאינטראקציה של משתמש.
- כדי לטפל בבקשה, חוזרים ופותחים תיבת דו-שיח.
- אחרי שהמשתמשים שולחים מידע, אפשר לעבד את השליחה על ידי סגירת תיבת הדו-שיח או החזרת תיבת דו-שיח נוספת.
הפעלת בקשת תיבת דו-שיח
אפליקציית Chat יכולה לפתוח רק תיבות דו-שיח כדי להגיב לאינטראקציה של המשתמש, כמו פקודה באמצעות שורת קו נטוי או לחיצה על לחצן מתוך הודעה בכרטיס.
כדי להגיב למשתמשים באמצעות תיבת דו-שיח, אפליקציית Chat צריכה ליצור אינטראקציה שמפעילה את הבקשה לתיבת דו-שיח, כמו:
- משיבים לפקודה של שורת הפקודה. כדי להפעיל את הבקשה מפקודת קו נטוי, צריך לסמן את התיבה Opens a dialog (פתיחת תיבת דו-שיח) בזמן הגדרת הפקודה.
- לענות ללחיצה על לחצן בהודעה, כחלק מכרטיס או בתחתית ההודעה. כדי להפעיל את הבקשה מלחצן בהודעה, מגדירים את הפעולה
onClick
של הלחצן על ידי הגדרתinteraction
שלו כ-OPEN_DIALOG
. - לענות על לחיצה על לחצן בדף הבית של אפליקציית Chat. במאמר יצירת דף בית לאפליקציית Google Chat מוסבר איך פותחים תיבת דו-שיח מדפי בית.
בדוגמת הקוד הבאה מוסבר איך להפעיל בקשת תיבת דו-שיח באמצעות לחצן בהודעה בכרטיס. כדי לפתוח את תיבת הדו-שיח, השדה button.interaction
מוגדר ל-OPEN_DIALOG
:
Node.js
Python
Java
Apps Script
בדוגמה הזו, ההודעה על הכרטיס נשלחת על ידי החזרת card JSON. אפשר גם להשתמש בשירות הכרטיסים של Apps Script.
פתיחת תיבת הדו-שיח הראשונית
כשמשתמש מפעיל בקשה לתיבת דו-שיח, באפליקציית Chat מתקבל אירוע אינטראקציה, שמיוצג בתור סוג event
ב-Chat API. אם האינטראקציה מפעילה בקשה לתיבת דו-שיח, השדה dialogEventType
של האירוע מוגדר ל-REQUEST_DIALOG
.
כדי לפתוח תיבת דו-שיח, אפליקציית Chat יכולה להשיב לבקשה על ידי החזרת אובייקט actionResponse
עם הערך type
מוגדר ל-DIALOG
ואובייקט Message
. כדי לציין את התוכן של תיבת הדו-שיח, צריך לכלול את האובייקטים הבאים:
- אובייקט
actionResponse
, עםtype
שמוגדר ל-DIALOG
. - אובייקט
dialogAction
. השדהbody
מכיל את רכיבי ממשק המשתמש (UI) שיוצגו בכרטיס, כוללsections
אחד או יותר של ווידג'טים. כדי לאסוף מידע ממשתמשים, אפשר לציין ווידג'טים של קלט בטופס וווידג'ט של לחצן. מידע נוסף על תכנון של שדות קלט בטופס זמין במאמר איסוף ועיבוד מידע ממשתמשים.
בדוגמת הקוד הבאה אפשר לראות איך אפליקציית Chat מחזירה תגובה שפותחת תיבת דו-שיח:
Node.js
Python
Java
Apps Script
בדוגמה הזו, ההודעה על הכרטיס נשלחת על ידי החזרת card JSON. אפשר גם להשתמש בשירות הכרטיסים של Apps Script.
טיפול בשליחה של תיבת הדו-שיח
כשמשתמשים לוחצים על לחצן ששולח תיבת דו-שיח, אפליקציית Chat מקבלת אירוע אינטראקציה מסוג CARD_CLICKED
, שבו הערך של dialogEventType
הוא SUBMIT_DIALOG
.
אפליקציית Chat צריכה לטפל באירוע האינטראקציה באחת מהדרכים הבאות:
- החזרת תיבת דו-שיח אחרת כדי לאכלס כרטיס או טופס נוסף.
- סגירת תיבת הדו-שיח אחרי אימות הנתונים שהמשתמש שלח, ואם רוצים, שליחת הודעת אישור.
אופציונלי: הצגת תיבת דו-שיח אחרת
אחרי שהמשתמשים שולחים את תיבת הדו-שיח הראשונית, אפליקציות Chat יכולות להציג תיבת דו-שיח נוספת אחת או יותר כדי לעזור למשתמשים לבדוק את המידע לפני השליחה, למלא טפסים עם כמה שלבים או לאכלס את תוכן הטפסים באופן דינמי.
כדי לעבד את הנתונים שהמשתמשים מזינים, אפליקציית Chat משתמשת באובייקט event.common.formInputs
. למידע נוסף על אחזור ערכים מווידג'טים של קלט, ראו איסוף ועיבוד של מידע ממשתמשים.
כדי לעקוב אחרי הנתונים שהמשתמשים מזינים בתיבת הדו-שיח הראשונית, צריך להוסיף פרמטרים ללחצן שפותח את תיבת הדו-שיח הבאה. פרטים נוספים זמינים במאמר העברת נתונים לכרטיס אחר.
בדוגמה הזו, אפליקציית Chat פותחת תיבת דו-שיח ראשונית שמובילה לתיבת דו-שיח שנייה לאישור לפני שליחה:
Node.js
Python
Java
Apps Script
בדוגמה הזו, ההודעה על הכרטיס נשלחת על ידי החזרת card JSON. אפשר גם להשתמש בשירות הכרטיסים של Apps Script.
סגור את תיבת הדו-שיח
כשמשתמשים לוחצים על לחצן בתיבת דו-שיח, אפליקציית Chat מבצעת את הפעולה המשויכת ומספקת לאובייקט האירוע את הפרטים הבאים:
eventType
הואCARD_CLICKED
.dialogEventType
הואSUBMIT_DIALOG
.
אפליקציית Chat צריכה להחזיר אובייקט ActionResponse
שבו type
מוגדר ל-DIALOG
ול-dialogAction
.
אם רוצים, אפשר להציג התראה
כשסוגרים את תיבת הדו-שיח, אפשר גם להציג התראה בטקסט.
כדי לשלוח התראה על הצלחה או שגיאה, אפליקציית Chat יכולה להחזיר ActionResponse
עם actionStatus
מוגדר.
בדוגמה הבאה בודקים שהפרמטרים תקינים וסוגרים את תיבת הדו-שיח עם התראה בטקסט, בהתאם לתוצאה:
Node.js
Python
Java
Apps Script
בדוגמה הזו, ההודעה על הכרטיס נשלחת על ידי החזרת card JSON. אפשר גם להשתמש בשירות הכרטיסים של Apps Script.
פרטים על העברת פרמטרים בין תיבת דו-שיח מופיעים במאמר העברת נתונים לכרטיס אחר.
אם רוצים, שולחים הודעת אישור
כשסוגרים את תיבת הדו-שיח, אפשר גם לשלוח הודעה חדשה או לעדכן הודעה קיימת.
כדי לשלוח הודעה חדשה, מחזירים אובייקט ActionResponse
עם הערך type
מוגדר ל-NEW_MESSAGE
. הדוגמה הבאה סוגרת את תיבת הדו-שיח עם התראת טקסט והודעת טקסט לאישור:
Node.js
Python
Java
Apps Script
בדוגמה הזו, ההודעה על הכרטיס נשלחת על ידי החזרת card JSON. אפשר גם להשתמש בשירות הכרטיסים של Apps Script.
כדי לעדכן הודעה, מחזירים אובייקט actionResponse
שמכיל את ההודעה המעודכנת ומגדירים את type
לאחת מהאפשרויות הבאות:
UPDATE_MESSAGE
: מעדכנים את ההודעה שהפעילה את בקשת התיבת הדו-שיח.UPDATE_USER_MESSAGE_CARDS
: מעדכן את הכרטיס מתצוגה מקדימה של קישור.
פתרון בעיות
כשכרטיס או אפליקציית Google Chat מחזירים שגיאה, בממשק Chat מופיעה ההודעה "משהו השתבש". או "לא ניתן לעבד את הבקשה שלך". לפעמים בממשק המשתמש של Chat לא מוצגת הודעת שגיאה, אבל באפליקציה או בכרטיס של Chat מתקבלת תוצאה לא צפויה. לדוגמה, יכול להיות שלא תוצג הודעה בכרטיס.
יכול להיות שהודעת שגיאה לא תוצג בממשק המשתמש של Chat, אבל כשיומני השגיאות של אפליקציות Chat מופעלים, יהיו זמינות הודעות שגיאה תיאוריות ונתוני יומנים שיעזרו לכם לתקן שגיאות. במאמר פתרון בעיות ושגיאות ב-Google Chat מוסבר איך מציגים, מאתרים באגים ומתקנים שגיאות.
נושאים קשורים
- לעיון בדוגמה של מנהל אנשי הקשר, אפליקציית Chat שמשתמשת בתיבת דו-שיח כדי לאסוף פרטים ליצירת קשר.
- פתיחת תיבת דו-שיח מדף הבית של אפליקציית Google Chat.
- איך מגדירים פקודות קוליות ועונים עליהן
- עיבוד מידע שהמשתמשים מזינים