בדף הזה מפורטת סקירה כללית על פיתוח ממשקי משתמש (UI) לתוספים של Google Workspace שמרחיבים את Google Chat.
בתוספים ב-Google Chat, המשתמשים רואים אותם כאפליקציות של Google Chat. מידע נוסף זמין בקטע סקירה כללית על הרחבת Google Chat.
כדי ליצור ממשקים לאפליקציות Chat, משתמשים ברכיבי התוספים הבאים:
- טריגרים: הדרכים שבהן משתמשי Google Chat יכולים להפעיל אפליקציה ל-Chat, למשל הוספה שלה למרחב משותף או שליחת הודעה אליה.
- אובייקטים של אירועים: הנתונים שאפליקציות Chat מקבלות מטריגרים או מאינטראקציות בממשק המשתמש.
- פעולות: הדרכים שבהן אפליקציות צ'אט יכולות להגיב לאינטראקציות, כמו שליחת הודעות או הצגת ממשק משתמש שמבוסס על כרטיסים.
אפליקציות צ'אט יכולות ליצור ולהציג כרטיסים בממשקים הבאים:
- הודעות שיכולות להכיל טקסט, כרטיסים סטטיים או אינטראקטיביים ולחצנים.
- תיבות דו-שיח, שהן כרטיסים שנפתחים בחלון חדש ובדרך כלל מבקשים מהמשתמשים לשלוח מידע.
- תצוגות מקדימות של קישורים – כרטיסים שמציגים תצוגה מקדימה של מידע על שירות חיצוני.
טריגרים
בקטע הזה מוסבר על הטריגרים שבהם משתמשים התוספים של Google Workspace ב-Chat.
טריגרים הם הדרכים הספציפיות שבהן משתמשים מפעילים את אפליקציית Chat באמצעות ממשק המשתמש של Chat, למשל באמצעות ציון משתמשים בתיוג @או פקודות קו נטוי.
בטבלה הבאה מוצגים טריגרים של Chat, תיאור שלהם והאופן שבו אפליקציות Chat בדרך כלל מגיבים:
Trigger | תיאור | תגובה אופיינית |
---|---|---|
נוסף למרחב המשותף |
משתמש מוסיף את אפליקציית Chat למרחב משותף, או שאדמין ב-Google Workspace מתקין את אפליקציית Chat במרחבים משותפים של הודעות אישיות למשתמשים בארגון שלו. למידע על אפליקציות Chat שמנהלים מתקינים, תוכלו לקרוא את המאמר התקנה של אפליקציות מ-Marketplace בדומיין במסמכי העזרה של Google Workspace לאדמינים. |
אפליקציית Chat שולחת הודעה עם הסבר על התכונה ועל האופן שבו המשתמשים במרחב המשותף יכולים להשתמש בה. |
Message |
משתמש יוצר אינטראקציה עם אפליקציית Chat בהודעה באחת מהדרכים הבאות:
|
התשובה של אפליקציית Chat תהיה מבוססת על תוכן ההודעה. לדוגמה, אפליקציית Chat תגיב לפקודה /about בהודעה שמסבירה את המשימות שאפליקציית Chat יכולה לבצע.
|
הוסר מהמרחב המשותף |
משתמש מסיר את אפליקציית Chat ממרחבים משותפים, או שאדמין ב-Google Workspace מסיר את אפליקציית Chat ממשתמש בארגון. משתמשים לא יכולים להסיר אפליקציות של Chat שהותקנו על ידי האדמין שלהם. אם משתמש כבר התקין את אפליקציית Chat, היא תישאר מותקנת גם אם אדמין ב-Google Workspace ינסה להסיר אותה. |
באפליקציית Chat יוסרו כל ההתראות הנכנסות שהוגדרו למרחב המשותף (למשל, מחיקת webhook) והאחסון הפנימי יימחק. אפליקציות צ'אט לא יכולות להשיב להפעלה הזו באמצעות הודעות, כי הן כבר לא חברות במרחב המשותף. |
בניגוד לתוספים אחרים של Google Workspace, צריך להגדיר פונקציות חזרה (callbacks) לטריגרים האלה באמצעות Google Chat API. להנחיות, קראו את המאמר הגדרת אפליקציית Google Chat.
במדריכים הבאים מוסבר איך להגיב לטריגר:
- שליחת הודעות ב-Google Chat
- פתיחת תיבות דו-שיח אינטראקטיביות
- תצוגה מקדימה של קישורים בהודעות ב-Google Chat
אובייקטים של אירועים
בקטע הזה מוסבר מהם כל הרכיבים של אובייקטים של אירועים ב-Chat. מידע נוסף זמין במאמר אובייקטים של אירועים.
אובייקט אירוע | |
---|---|
commonEventObject |
object
(CommonEventObject)
אובייקט שמכיל מידע שכל אובייקטי האירועים מכילים, ללא קשר לאפליקציית המארח. |
chat |
object
(Chat)
אובייקט שמכיל את כל המידע על אינטראקציות ב-Chat. |
צ'אט
צ'אט | |
---|---|
chat.user |
object
(User)
משתמש Chat שביצע אינטראקציה עם אפליקציית Chat. |
chat.space |
object
(Space)
מרחב משותף ב-Chat שבו משתמש קיים אינטראקציה עם אפליקציית Chat. |
chat.eventTime |
|
שדה האיחוד הערך של |
|
chat.messagePayload |
עומס העבודה שאפליקציות Chat מקבלות מטריגר Message. |
chat.addedToSpacePayload |
נתוני העומס שאותם אפליקציות Chat מקבלות מטריגר נוסף למרחב המשותף. |
chat.removedFromSpacePayload |
נתוני העומס שאותם אפליקציות Chat מקבלות מטריגר הוסרה מהמרחב המשותף. |
chat.buttonClickedPayload |
עומס העבודה שאפליקציות הצ'אט מקבלות כשמשתמשים לוחצים על לחצן בהודעה או בכרטיס. אם משתמש לוחץ על לחצן לשליחת מידע, האובייקט |
chat.widgetUpdatedPayload |
נתוני העומס שאותם מקבלות אפליקציות Chat כשמשתמשים מקלידים טקסט בתפריט הבחירה בכמה פריטים של ווידג'ט
האובייקט |
מטען ייעודי (payload)
בהתאם לסוג האינטראקציה, האירוע מכיל עומס שימושי עם משאב אחד או יותר של Chat API.
מטען ייעודי (payload) של הודעה
MessagePayload | |
---|---|
chat.messagePayload.message |
object
(Message)
הודעה ב-Chat שהפעילה את האירוע. |
chat.messagePayload.space |
object
(Space)
המרחבים ב-Chat שבהם משתמש שלח את ההודעה שהפעילה את אפליקציית Chat. |
נוסף למטען הייעודי של חללית
AddedToSpacePayload | |
---|---|
chat.addedToSpacePayload.space |
object
(Space)
מרחב Chat שאליו המשתמש הוסיף או התקין את אפליקציית Chat. כשאדמינים מתקינים אפליקציות ל-Chat, השדה |
chat.addedToSpacePayload.interactionAdd |
boolean האם משתמש הוסיף את אפליקציית Chat למרחב המשותף באמצעות הודעה. לדוגמה, להשתמש בסימן @ כדי להזכיר את אפליקציית Chat או להשתמש בפקודה עם קו נטוי. אם true , מערכת Chat שולחת אובייקט אירוע נוסף עם messagePayload שמכיל מידע על ההודעה.
|
הוסר ממטען החלל
RemovedFromSpacePayload | |
---|---|
chat.removedFromSpacePayload.space |
object
(Space)
מרחב Chat שממנו המשתמש הסיר או ה uninstall את אפליקציית Chat. כשאדמינים מסירים אפליקציות של Chat, השדה |
עומס העבודה של הלחצן שנלחץ
ButtonClickedPayload | |
---|---|
chat.buttonClickedPayload.message |
object
(Message)
הודעת הצ'אט שמכילה את הלחצן שעליו המשתמש לחץ. |
chat.buttonClickedPayload.space |
object
(Space)
מרחב העבודה ב-Chat שבו המשתמש לחץ על לחצן בהודעה באפליקציית Chat. |
chat.buttonClickedPayload.isDialogEvent |
boolean האם המשתמש לחץ על הלחצן כדי ליצור אינטראקציה עם תיבת דו-שיח. |
chat.buttonClickedPayload.dialogEventType |
enum (DialogEventType) אם הערך של isDialogEvent הוא true , סוג
האינטראקציה בתיבת דו-שיח.
|
טיפוס enum הערך של |
|
TYPE_UNSPECIFIED |
ערך ברירת המחדל. לא צוין. |
REQUEST_DIALOG |
משתמש מבקש תיבת דו-שיח. לדוגמה, הם משתמשים בפקודה עם קו נטוי או לוחצים על לחצן בהודעה. |
SUBMIT_DIALOG |
משתמש לוחץ על רכיב אינטראקטיבי בתיבת דו-שיח. לדוגמה, משתמש ממלא פרטים בתיבת דו-שיח ולוחץ על לחצן כדי לשלוח את הפרטים. |
מטען נתונים מעודכן של הווידג'ט
WidgetUpdatedPayload | |
---|---|
chat.widgetUpdatedPayload.space |
object
(Space)
המרחב ב-Chat שבו התרחשה האינטראקציה. |
פעולות בצ'אט
בקטע הזה נסביר איך אפליקציות צ'אט יכולות להשתמש בפעולות של תוספים כדי להגיב לאינטראקציות של משתמשים.
כדי להגיב באמצעות פעולה של תוסף, אפליקציית צ'אט צריכה להשיב תוך 30 שניות, והתגובה צריכה להתפרסם במרחב המשותף שבו התרחשה האינטראקציה. אחרת, אפליקציית Chat צריכה להגדיר אימות ולהפעיל את Google Chat API כדי להגיב.
אפליקציות צ'אט יכולות לטפל באינטראקציות ולהגיב להן בדרכים רבות. במקרים רבים, אפליקציות Chat עונות להודעות. אפליקציות צ'אט יכולות גם לחפש מידע מסוים ממקור נתונים, לתעד את פרטי אובייקט האירוע או לעשות כמעט כל דבר אחר. התנהגות העיבוד הזו היא בעצם מה שמגדיר את אפליקציית Google Chat.
כדי להגיב לאינטראקציות של משתמשים, אפליקציות צ'אט צריכות לטפל באובייקט האירוע התואם ולהחזיר אחד מאובייקטי ה-JSON הבאים:
DataActions
: יצירת נתונים או עדכון שלהם ב-Google Workspace. כדי לשלוח או לעדכן הודעות ב-Chat, האובייקט צריך להכיל את הרכיב המסומן שמגדיר את השינויים בנתונים שלMessage
, שמוצגים בתורchatDataActionMarkup
.RenderActions
: הצגה או ניווט בין כרטיסים בהודעות ובתיבות דו-שיח.basic_authorization_prompt
: מופיעה בקשה למשתמשים להיכנס או לבצע אימות לשירות מחוץ ל-Google באמצעות כרטיס הרשאה. פרטים נוספים זמינים במאמר חיבור התוסף של Google Workspace לשירות של צד שלישי.
התשובה הרצויה באפליקציית Chat | הפעולה הנדרשת להחזרה |
---|---|
שליחת הודעה או עדכון שלה | DataActions |
פתיחה, עדכון או סגירה של תיבת דו-שיח. | RenderActions |
כדי לאסוף מידע מכרטיס או מתיבת דו-שיח, אפשר להציע פריטים לבחירה על סמך מה שהמשתמשים מקלידים בתפריט עם אפשרויות בחירה מרובות. | RenderActions |
לצפות בתצוגה מקדימה של קישורים בהודעות שמשתמשי Chat שולחים במרחב המשותף. | DataActions |
שליחת תגובה באמצעות Google Chat API
במקום להחזיר פעולת תוסף, יכול להיות שאפליקציות Chat יצטרכו להשתמש ב-Google Chat API כדי להגיב לאינטראקציה. לדוגמה, אפליקציות Chat צריכות לבצע קריאה ל-Google Chat API כדי לבצע אחת מהפעולות הבאות:
- להגיב לאינטראקציה אחרי 30 שניות.
- לבצע משימות מחוץ למרחב המשותף שבו התרחשה האינטראקציה.
- לבצע משימות ב-Chat שלא זמינות כפעולות של תוספים. לדוגמה, להציג רשימה של המרחבים המשותפים שבהם משתמש או אפליקציית Chat משתתפים, או להוסיף משתמשים למרחב משותף.
- לבצע משימות בשם משתמש ב-Chat (נדרש אימות משתמש).
למידע על אימות של Chat API והפעלת קריאות אליו, ראו סקירה כללית על Chat API.