במדריך הזה מוסבר איך להשתמש בשיטה update במשאב Message של Google Chat API כדי לעדכן הודעת טקסט או כרטיס במרחב. לעדכן הודעה כדי לשנות את המאפיינים שלה, כמו מה שכתוב בה או התוכן של כרטיס. אפשר גם להוסיף הודעת טקסט לפני כרטיס או לצרף כרטיס להודעת טקסט.
ב-Chat API, הודעה ב-Chat מיוצגת על ידי משאב Message.
משתמשי Chat יכולים לשלוח רק הודעות שמכילות טקסט, אבל אפליקציות ל-Chat יכולות להשתמש בהרבה תכונות אחרות של הודעות, כולל הצגת ממשקי משתמש סטטיים או אינטראקטיביים, איסוף מידע מהמשתמשים ושליחת הודעות באופן פרטי. מידע נוסף על תכונות ההודעות שזמינות ב-Chat API מופיע בסקירה הכללית על הודעות ב-Google Chat.
דרישות מוקדמות
Node.js
- חשבון Google Workspace במהדורת Business או Enterprise עם גישה ל-Google Chat.
- מגדירים את הסביבה:
- יוצרים פרויקט ב-Google Cloud.
- הגדרת מסך ההסכמה ל-OAuth.
- מפעילים ומגדירים את Google Chat API עם שם, סמל ותיאור לאפליקציית Chat.
- מתקינים את ספריית הלקוח של Cloud ל-Node.js.
- יוצרים פרטי גישה בהתאם לאופן שבו רוצים לבצע אימות בבקשה של Google Chat API:
- כדי לבצע אימות כמשתמש ב-Chat, יוצרים פרטי כניסה של מזהה לקוח OAuth ושומרים אותם כקובץ JSON בשם
credentials.jsonבספרייה המקומית. - כדי לבצע אימות כאפליקציית צ'אט, יוצרים פרטי כניסה לחשבון שירות ושומרים אותם כקובץ JSON בשם
credentials.json.
- כדי לבצע אימות כמשתמש ב-Chat, יוצרים פרטי כניסה של מזהה לקוח OAuth ושומרים אותם כקובץ JSON בשם
- בוחרים היקף הרשאה בהתאם לאופן שבו רוצים לבצע אימות – כמשתמש או כאפליקציית צ'אט.
Python
- חשבון Google Workspace במהדורת Business או Enterprise עם גישה ל-Google Chat.
- מגדירים את הסביבה:
- יוצרים פרויקט ב-Google Cloud.
- הגדרת מסך ההסכמה ל-OAuth.
- מפעילים ומגדירים את Google Chat API עם שם, סמל ותיאור לאפליקציית Chat.
- מתקינים את ספריית הלקוח של Cloud לשימוש ב-Python.
- יוצרים פרטי גישה בהתאם לאופן שבו רוצים לבצע אימות בבקשה של Google Chat API:
- כדי לבצע אימות כמשתמש ב-Chat, יוצרים פרטי כניסה של מזהה לקוח OAuth ושומרים אותם כקובץ JSON בשם
credentials.jsonבספרייה המקומית. - כדי לבצע אימות כאפליקציית צ'אט, יוצרים פרטי כניסה לחשבון שירות ושומרים אותם כקובץ JSON בשם
credentials.json.
- כדי לבצע אימות כמשתמש ב-Chat, יוצרים פרטי כניסה של מזהה לקוח OAuth ושומרים אותם כקובץ JSON בשם
- בוחרים היקף הרשאה בהתאם לאופן שבו רוצים לבצע אימות – כמשתמש או כאפליקציית צ'אט.
Java
- חשבון Google Workspace במהדורת Business או Enterprise עם גישה ל-Google Chat.
- מגדירים את הסביבה:
- יוצרים פרויקט ב-Google Cloud.
- הגדרת מסך ההסכמה ל-OAuth.
- מפעילים ומגדירים את Google Chat API עם שם, סמל ותיאור לאפליקציית Chat.
- מתקינים את ספריית הלקוח של Cloud ל-Java.
- יוצרים פרטי גישה בהתאם לאופן שבו רוצים לבצע אימות בבקשה של Google Chat API:
- כדי לבצע אימות כמשתמש ב-Chat, יוצרים פרטי כניסה של מזהה לקוח OAuth ושומרים אותם כקובץ JSON בשם
credentials.jsonבספרייה המקומית. - כדי לבצע אימות כאפליקציית צ'אט, יוצרים פרטי כניסה לחשבון שירות ושומרים אותם כקובץ JSON בשם
credentials.json.
- כדי לבצע אימות כמשתמש ב-Chat, יוצרים פרטי כניסה של מזהה לקוח OAuth ושומרים אותם כקובץ JSON בשם
- בוחרים היקף הרשאה בהתאם לאופן שבו רוצים לבצע אימות – כמשתמש או כאפליקציית צ'אט.
Apps Script
- חשבון Google Workspace במהדורת Business או Enterprise עם גישה ל-Google Chat.
- מגדירים את הסביבה:
- יוצרים פרויקט ב-Google Cloud.
- הגדרת מסך ההסכמה ל-OAuth.
- מפעילים ומגדירים את Google Chat API עם שם, סמל ותיאור לאפליקציית Chat.
- יוצרים פרויקט עצמאי של Apps Script ומפעילים את שירות Chat המתקדם.
- במדריך הזה, אתם צריכים להשתמש באימות משתמשים או באפליקציות. כדי לבצע אימות כאפליקציית Chat, צריך ליצור פרטי כניסה לחשבון שירות. במאמר אימות והרשאה כאפליקציית צ'אט ל-Google Chat מוסבר איך לעשות זאת.
- בוחרים היקף הרשאה בהתאם לאופן שבו רוצים לבצע אימות – כמשתמש או כאפליקציית צ'אט.
עדכון הודעה בשם משתמש
באימות משתמשים, אפשר לעדכן רק את הטקסט של ההודעה.
כדי לעדכן הודעה באמצעות אימות משתמש, צריך להעביר את הפרטים הבאים בבקשה:
- מציינים את
chat.messagesהיקף ההרשאה. - מבצעים קריאה ל-method
UpdateMessage. - מעבירים את
messageכעותק שלMessageעם הפרטים הבאים:- השדה
nameמוגדר להודעה לעדכון, שכוללת מזהה מרחב ומזהה הודעה. - השדה
textמוגדר עם הטקסט החדש.
- השדה
- מעבירים את הערך
textעם הפרמטרupdateMask.
אם ההודעה המעודכנת היא הודעת כרטיס, הטקסט יתווסף לפני הכרטיסים (שיוסיפו להופיע).
כך מעדכנים הודעה או מוסיפים הודעת טקסט לפני הודעה בכרטיס באמצעות אימות משתמש:
Node.js
Python
Java
Apps Script
כדי להריץ את הדוגמה הזו, מחליפים את הערכים הבאים:
-
SPACE_NAME: המזהה מnameשל המרחב. אפשר לקבל את המזהה על ידי הפעלת השיטהListSpacesאו מכתובת ה-URL של המרחב. -
MESSAGE_NAME: המזהה מההודעהname. אפשר לקבל את המזהה מגוף התגובה שמוחזר אחרי יצירת הודעה באופן אסינכרוני באמצעות Chat API, או באמצעות שם בהתאמה אישית שהוקצה להודעה בזמן היצירה.
Chat API מחזיר מופע של Message שמפרט את ההודעה שעודכנה.
עדכון הודעה כאפליקציית צ'אט
באמצעות אימות אפליקציות, אפשר לעדכן גם את הטקסט וגם את הכרטיסים של ההודעה.
כדי לעדכן הודעה באמצעות אימות אפליקציה, צריך להעביר את הפרטים הבאים בבקשה:
- מציינים את
chat.botהיקף ההרשאה. - מבצעים קריאה ל-method
UpdateMessage. - מעבירים את
messageכעותק שלMessageעם הפרטים הבאים:- השדה
nameמוגדר להודעה לעדכון, שכוללת מזהה מרחב ומזהה הודעה. - השדה
textמוגדר עם הטקסט החדש אם צריך לעדכן אותו. - השדה
cardsV2מוגדר עם הכרטיסים החדשים אם צריך לעדכן אותם.
- השדה
- מעבירים את
updateMaskעם רשימת השדות שרוצים לעדכן, כמוtextו-cardsV2.
אם ההודעה המעודכנת היא הודעת כרטיס והטקסט מעודכן, הטקסט המעודכן יתווסף לפני הכרטיסים (שיוצגו כרגיל). אם ההודעה המעודכנת היא הודעת טקסט והכרטיסים מעודכנים, הכרטיסים המעודכנים מצורפים לטקסט (שממשיך להופיע).
כדי לעדכן את הטקסט והכרטיסים של הודעה באמצעות אימות אפליקציה:
Node.js
Python
Java
Apps Script
כדי להריץ את הדוגמה הזו, מחליפים את הערכים הבאים:
-
SPACE_NAME: המזהה מnameשל המרחב. אפשר לקבל את המזהה על ידי הפעלת השיטהListSpacesאו מכתובת ה-URL של המרחב. -
MESSAGE_NAME: המזהה מההודעהname. אפשר לקבל את המזהה מגוף התגובה שמוחזר אחרי יצירת הודעה באופן אסינכרוני באמצעות Chat API, או באמצעות שם בהתאמה אישית שהוקצה להודעה בזמן היצירה.
Chat API מחזיר מופע של Message שמפרט את ההודעה שעודכנה.
עדכון כרטיסים באופן אסינכרוני
ב-תצוגה מקדימה למפתחים, אפשר לעדכן את הכרטיסים בהודעה באופן אסינכרוני באמצעות השיטה replaceCards. העדכון הזה שימושי כשרוצים לעדכן את התוכן של כרטיס בלי שהמשתמש יבצע אינטראקציה, למשל כשרוצים לרענן תצוגה מקדימה של קישור או לעדכן את הסטטוס של משימה.
השיטה הזו פועלת עבור הודעות שנוצרו על ידי האפליקציה, כולל הודעות שנוצרו בשם משתמש.
פרטים נוספים זמינים במאמר בנושא יצירה ועדכון של כרטיסים.