שירות Chat המתקדם מאפשר להשתמש ב-Google Chat API ב-Apps Script. ממשק ה-API הזה מאפשר לסקריפטים למצוא, ליצור ולשנות מרחבים משותפים ב-Chat, להוסיף או להסיר חברים למרחבים, ולקרוא או לפרסם הודעות עם טקסט, כרטיסים, קבצים מצורפים ותגובות.
דרישות מוקדמות
- אפליקציית Google Chat ב-Apps Script שהוגדרה בדף ההגדרה של Chat API במסוף Google Cloud. בפרויקט Apps Script של האפליקציה צריך להשתמש בפרויקט Google Cloud רגיל במקום בפרויקט ברירת המחדל שנוצר באופן אוטומטי לפרויקטים של Apps Script. במאמר יצירת אפליקציה ל-Google Chat באמצעות Apps Script מוסבר איך יוצרים אפליקציה תואמת ל-Google Chat.
- אימות שהוגדר לאפליקציית Chat. כדי לבצע פעולה בשם משתמש, נדרש אימות משתמש. כדי לבצע פעולה בתור אפליקציית Chat, צריך לבצע אימות אפליקציה באמצעות חשבון שירות. כדי לבדוק באיזה סוג אימות שיטת Chat API תומכת, אפשר לעיין במאמר סוגי האימות הנדרשים לשיחות ב-Google Chat API.
חומרי עזר
מידע נוסף על השירות הזה זמין במסמכי העזרה של Chat API. כמו כל השירותים המתקדמים ב-Apps Script, גם שירות Chat משתמש באותם אובייקטים, שיטות ופרמטרים כמו ה-API הציבורי.
קוד לדוגמה
בדוגמאות האלה תלמדו איך לבצע פעולות נפוצות ב-Google Chat API באמצעות השירות המתקדם.
פרסום הודעה עם פרטי הכניסה של המשתמש
בדוגמה הבאה מוסבר איך לפרסם הודעה במרחב משותף ב-Chat בשם המשתמש.
מוסיפים את היקף ההרשאה
chat.messages.create
לקובץappsscript.json
של פרויקט Apps Script:"oauthScopes": [ "https://www.googleapis.com/auth/chat.messages.create" ]
מוסיפים פונקציה כמו זו לקוד של פרויקט Apps Script:
פרסום הודעה עם פרטי הכניסה לאפליקציה
הדוגמה הבאה ממחישה איך לפרסם הודעה במרחב משותף ב-Chat בשם האפליקציה. כשמשתמשים בשירות המתקדם של Chat עם חשבון שירות, אין צורך לציין את היקפי ההרשאה ב-appsscript.json
. מידע נוסף על אימות באמצעות חשבונות שירות זמין במאמר אימות כאפליקציית Google Chat.
יצירת מרחב משותף
הדוגמה הבאה ממחישה איך לקבל מידע על מרחב משותף ב-Chat.
מוסיפים את היקף ההרשאה
chat.spaces.readonly
לקובץappsscript.json
של פרויקט Apps Script:"oauthScopes": [ "https://www.googleapis.com/auth/chat.spaces.readonly" ]
מוסיפים פונקציה כמו זו לקוד של פרויקט Apps Script:
יצירת מרחב משותף
הדוגמה הבאה ממחישה איך יוצרים מרחב משותף ב-Chat.
מוסיפים את היקף ההרשאה
chat.spaces.create
לקובץappsscript.json
של פרויקט Apps Script:"oauthScopes": [ "https://www.googleapis.com/auth/chat.spaces.create" ]
מוסיפים פונקציה כמו זו לקוד של פרויקט Apps Script:
הצגת רשימה של מינויים
הדוגמה הבאה ממחישה איך להציג את כל המשתתפים במרחב משותף ב-Chat.
מוסיפים את היקף ההרשאה
chat.memberships.readonly
לקובץappsscript.json
של פרויקט Apps Script:"oauthScopes": [ "https://www.googleapis.com/auth/chat.memberships.readonly" ]
מוסיפים פונקציה כמו זו לקוד של פרויקט Apps Script:
פתרון בעיות
אם נתקלתם ב-Error 400: invalid_scope
עם הודעת השגיאה Some requested scopes cannot be shown
, סימן שלא ציינת היקפי הרשאה בקובץ appsscript.json
של פרויקט Apps Script. ברוב המקרים, Apps Script קובע באופן אוטומטי את ההיקפים הנדרשים לסקריפט, אבל כשמשתמשים בשירות המתקדם של Chat, צריך להוסיף באופן ידני את היקפי ההרשאה שבהם הסקריפט משתמש לקובץ המניפסט של פרויקט Apps Script. הגדרת היקפים מפורשים
כדי לפתור את השגיאה, צריך להוסיף את היקפי ההרשאה המתאימים לקובץ appsscript.json
של פרויקט Apps Script כחלק מהמערך oauthScopes
. לדוגמה, כדי להפעיל את השיטה spaces.messages.create
, מוסיפים את הקוד הבא:
"oauthScopes": [
"https://www.googleapis.com/auth/chat.messages.create"
]
מגבלות ושיקולים
שירות Chat המתקדם לא תומך באפשרויות הבאות:
- שיטת Chat API
media.download
. - שיטות של Chat API שזמינות ב-תצוגה מקדימה למפתחים
כדי להוריד קובץ מצורף להודעה או להפעיל שיטה של תצוגה מקדימה למפתחים, צריך להשתמש במקום זאת ב-UrlFetchApp
.