במדריך הזה מוסבר איך להשתמש בשיטה get()
במשאב Message
של Google Chat API כדי להחזיר פרטים על הודעת טקסט או כרטיס.
ב-Chat API, הודעה ב-Chat מיוצגת על ידימשאב Message
.
משתמשי Chat יכולים לשלוח רק הודעות שמכילות טקסט, אבל אפליקציות ל-Chat יכולות להשתמש בהרבה תכונות אחרות של הודעות, כולל הצגת ממשקי משתמש סטטיים או אינטראקטיביים, איסוף מידע מהמשתמשים ושליחת הודעות באופן פרטי. מידע נוסף על התכונות של API להודעות ב-Chat זמין במאמר סקירה כללית על הודעות ב-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
בספרייה המקומית. - כדי לבצע אימות כאפליקציית Chat, יוצרים פרטי כניסה לחשבון שירות ושומרים אותם כקובץ JSON בשם
credentials.json
.
- כדי לבצע אימות כמשתמש ב-Chat, יוצרים פרטי כניסה של מזהה לקוח OAuth ושומרים אותם כקובץ JSON בשם
- בוחרים היקף הרשאה בהתאם לאופן שבו רוצים לבצע אימות – כמשתמש או כאפליקציית Chat.
- מרחב ב-Google Chat שמשתמש מאומת או אפליקציית Chat שמתקשרת חברים בו. כדי לאמת את עצמכם כאפליקציית Chat, צריך להוסיף את אפליקציית Chat למרחב.
Python
- חשבון Google Workspace במהדורת Business או Enterprise עם גישה ל-Google Chat.
- מגדירים את הסביבה:
- יוצרים פרויקט ב-Google Cloud.
- מגדירים את מסך ההסכמה של OAuth.
- מפעילים ומגדירים את Google Chat API עם שם, סמל ותיאור לאפליקציית Chat.
- מתקינים את ספריית הלקוח של Cloud לשימוש ב-Python.
- יוצרים פרטי גישה בהתאם לאופן שבו רוצים לבצע אימות בבקשה של Google Chat API:
- כדי לבצע אימות כמשתמש ב-Chat, יוצרים פרטי כניסה של מזהה לקוח OAuth ושומרים אותם כקובץ JSON בשם
credentials.json
בספרייה המקומית. - כדי לבצע אימות כאפליקציית Chat, יוצרים פרטי כניסה לחשבון שירות ושומרים אותם כקובץ JSON בשם
credentials.json
.
- כדי לבצע אימות כמשתמש ב-Chat, יוצרים פרטי כניסה של מזהה לקוח OAuth ושומרים אותם כקובץ JSON בשם
- בוחרים היקף הרשאה בהתאם לאופן שבו רוצים לבצע אימות – כמשתמש או כאפליקציית Chat.
- מרחב ב-Google Chat שמשתמש מאומת או אפליקציית Chat שמתקשרת חברים בו. כדי לאמת את עצמכם כאפליקציית Chat, צריך להוסיף את אפליקציית Chat למרחב.
Java
- חשבון Google Workspace במהדורת Business או Enterprise עם גישה ל-Google Chat.
- מגדירים את הסביבה:
- יוצרים פרויקט ב-Google Cloud.
- מגדירים את מסך ההסכמה של OAuth.
- מפעילים ומגדירים את Google Chat API עם שם, סמל ותיאור לאפליקציית Chat.
- מתקינים את ספריית הלקוח של Cloud ל-Java.
- יוצרים פרטי גישה בהתאם לאופן שבו רוצים לבצע אימות בבקשה של Google Chat API:
- כדי לבצע אימות כמשתמש ב-Chat, יוצרים פרטי כניסה של מזהה לקוח OAuth ושומרים אותם כקובץ JSON בשם
credentials.json
בספרייה המקומית. - כדי לבצע אימות כאפליקציית Chat, יוצרים פרטי כניסה לחשבון שירות ושומרים אותם כקובץ JSON בשם
credentials.json
.
- כדי לבצע אימות כמשתמש ב-Chat, יוצרים פרטי כניסה של מזהה לקוח OAuth ושומרים אותם כקובץ JSON בשם
- בוחרים היקף הרשאה בהתאם לאופן שבו רוצים לבצע אימות – כמשתמש או כאפליקציית Chat.
- מרחב ב-Google Chat שמשתמש מאומת או אפליקציית Chat שמתקשרת חברים בו. כדי לאמת את עצמכם כאפליקציית Chat, צריך להוסיף את אפליקציית Chat למרחב.
Apps Script
- חשבון Google Workspace במהדורת Business או Enterprise עם גישה ל-Google Chat.
- מגדירים את הסביבה:
- יוצרים פרויקט ב-Google Cloud.
- מגדירים את מסך ההסכמה של OAuth.
- מפעילים ומגדירים את Google Chat API עם שם, סמל ותיאור לאפליקציית Chat.
- יוצרים פרויקט עצמאי של Apps Script ומפעילים את שירות Chat מתקדם.
- במדריך הזה, חובה להשתמש באימות משתמשים או באפליקציות. כדי לבצע אימות כאפליקציית Chat, צריך ליצור פרטי כניסה לחשבון שירות. במאמר אימות והרשאה כאפליקציה ל-Google Chat מוסבר איך לעשות זאת.
- בוחרים היקף הרשאה בהתאם לאופן שבו רוצים לבצע אימות – כמשתמש או כאפליקציית Chat.
- מרחב ב-Google Chat שמשתמש מאומת או אפליקציית Chat שמתקשרת חברים בו. כדי לאמת את עצמכם כאפליקציית Chat, צריך להוסיף את אפליקציית Chat למרחב.
קבלת הודעה עם אימות משתמש
כדי לקבל פרטים על הודעה עם אימות משתמש, צריך להעביר את הפרטים הבאים בבקשה:
- מציינים את היקף ההרשאות של
chat.messages.readonly
אוchat.messages
. - מבצעים קריאה ל-method
GetMessage()
. - מגדירים את
name
לשם המשאב של ההודעה שרוצים לאחזר.
בדוגמה הבאה מתקבלת הודעה עם אימות משתמש:
Node.js
Python
Java
Apps Script
כדי להריץ את הדוגמה הזו, מחליפים את הערכים הבאים:
-
SPACE_NAME
: המזהה מname
המרחב. אפשר לקבל את המזהה באמצעות הקריאה ל-methodListSpaces()
או מכתובת ה-URL של המרחב. -
MESSAGE_NAME
: המזהה מההודעהname
. אפשר לקבל את המזהה מגוף התגובה שמוחזר אחרי יצירת הודעה באופן אסינכרוני באמצעות Chat API, או באמצעות שם בהתאמה אישית שהוקצה להודעה בזמן היצירה.
ממשק Chat API מחזיר מופע של
Message
עם פרטים על ההודעה שצוינה.
קבלת הודעה עם אימות אפליקציה
כדי לקבל פרטים על הודעה עם אימות אפליקציה, צריך להעביר את הפרטים הבאים בבקשה:
- מציינים את היקף ההרשאה. בדוגמאות שבקטע הזה נעשה שימוש בהיקף
chat.bot
, שזמין בדרך כלל ולא דורש אישור אדמין. אפשרות נוספת היא לתת הרשאה כאפליקציית Chat באישור אדמין, שזמינה בגרסת Developer Preview. - מבצעים קריאה ל-method
GetMessage()
. - מגדירים את
name
לשם המשאב של ההודעה שרוצים לאחזר.
בדוגמה הבאה מתקבלת הודעה עם אימות אפליקציה:
Node.js
Python
Java
Apps Script
כדי להריץ את הדוגמה הזו, מחליפים את הערכים הבאים:
-
SPACE_NAME
: המזהה מname
המרחב. אפשר לקבל את המזהה באמצעות הקריאה ל-methodListSpaces()
או מכתובת ה-URL של המרחב. -
MESSAGE_NAME
: המזהה מההודעהname
. אפשר לקבל את המזהה מגוף התגובה שמוחזר אחרי יצירת הודעה באופן אסינכרוני באמצעות Chat API, או באמצעות השם המותאם אישית שהוקצה להודעה בזמן היצירה.
ממשק Chat API מחזיר מופע של
Message
שמפרט את ההודעה שצוינה.
קבלת הודעה כאפליקציה ל-Chat באישור האדמין
אימות אפליקציה עם היקף הרשאות של chat.app.*
דורש אישור אדמין חד-פעמי.
כדי לקבל פרטים על הודעה עם אימות אפליקציה באמצעות Chat REST API, צריך להעביר את הפרטים הבאים בבקשה:
- מבצעים קריאה ל-method
GetMessage()
. - מציינים את
chat.app.messages.readonly
היקף ההרשאה. - מגדירים את
name
לשם המשאב של ההודעה שרוצים לאחזר.
יצירה של מפתח API
כדי לקרוא ל-method של API בגרסת טרום-השקה למפתחים, צריך להשתמש בגרסת טרום-השקה למפתחים של מסמך גילוי ה-API, שאינה ציבורית. כדי לאמת את הבקשה, צריך להעביר מפתח API.
כדי ליצור את מפתח ה-API, פותחים את פרויקט Google Cloud של האפליקציה ומבצעים את הפעולות הבאות:
- במסוף Google Cloud, לוחצים על סמל התפריט > APIs & Services > Credentials.
- לוחצים על Create credentials > API key.
- מפתח ה-API החדש מוצג.
- לוחצים על סמל ההעתקה כדי להעתיק את מפתח ה-API לשימוש בקוד של האפליקציה. מפתח ה-API מופיע גם בקטע API Keys (מפתחות API) בפרטי הכניסה של הפרויקט.
- כדי למנוע שימוש לא מורשה, מומלץ להגביל את המקומות שבהם אפשר להשתמש במפתח ה-API ואת ממשקי ה-API שאפשר להשתמש בו עבורם. פרטים נוספים זמינים במאמר בנושא הוספת הגבלות על ממשקי API.
כתיבת סקריפט שקורא ל-Chat API
כך מקבלים פרטים על הודעה באמצעות אימות אפליקציה ואישור אדמין ו-Chat REST API:
Python
- בספריית העבודה, יוצרים קובץ בשם
chat_messages_get_admin_app.py
. מוסיפים את הקוד הבא אל
chat_messages_get_admin_app.py
:from google.oauth2 import service_account from apiclient.discovery import build # Define your app's authorization scopes. # When modifying these scopes, delete the file token.json, if it exists. SCOPES = ["https://www.googleapis.com/auth/chat.app.messages.readonly"] def main(): ''' Authenticates with Chat API using app authentication, then gets details about a message. ''' # Specify service account details. creds = ( service_account.Credentials.from_service_account_file('credentials.json') .with_scopes(SCOPES) ) # Build a service endpoint for Chat API. chat = build('chat', 'v1', credentials=creds, discoveryServiceUrl='https://chat.googleapis.com/$discovery/rest?version=v1&labels=DEVELOPER_PREVIEW&key=API_KEY') # Use the service endpoint to call Chat API. result = chat.spaces().messages().get( # The message to get details about. # # Replace SPACE_NAME with a space name. # Obtain the space name from the spaces resource of Chat API, # or from a space's URL. name='spaces/SPACE_NAME/messages/MESSAGE_NAME', ).execute() # Print Chat API's response in your command line interface. print(result) if __name__ == '__main__': main()
בקוד, מחליפים את מה שכתוב בשדות הבאים:
-
API_KEY
: מפתח ה-API שיצרתם כדי לבנות את נקודת הקצה של השירות עבור Chat API. -
SPACE_NAME
: המזהה מname
של המרחב. אפשר לקבל את המזהה על ידי הפעלת השיטהListSpaces()
או מכתובת ה-URL של המרחב. -
MESSAGE_NAME
: המזהה מתוךname
של ההודעה. אפשר לקבל את המזהה מגוף התגובה שמוחזר אחרי יצירת הודעה באופן אסינכרוני באמצעות Chat API, או באמצעות שם בהתאמה אישית שהוקצה להודעה בזמן היצירה.
-
בספריית העבודה, מבצעים build ומריצים את הדוגמה:
python3 chat_messages_get_admin_app.py
ממשק Chat API מחזיר מופע של
Message
עם פרטים על ההודעה שצוינה.