במדריך הזה מוסבר איך להשתמש בשיטה
list()
במשאב 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. במאמר יצירת מרחב מוסבר איך ליצור מרחב באמצעות Google Chat API. כדי ליצור מרחב ב-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. במאמר יצירת מרחב מוסבר איך ליצור מרחב באמצעות Google Chat API. כדי ליצור מרחב ב-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. במאמר יצירת מרחב מוסבר איך ליצור מרחב באמצעות Google Chat API. כדי ליצור מרחב ב-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. במאמר יצירת מרחב מוסבר איך ליצור מרחב באמצעות Google Chat API. כדי ליצור מרחב ב-Chat, אפשר לעיין במסמכי מרכז העזרה.
הצגת רשימת הודעות בתור משתמש
כדי להציג רשימה של הודעות עם אימות משתמש, צריך להעביר את הפרטים הבאים בבקשה:
- מציינים את היקף ההרשאות של
chat.messages.readonly
אוchat.messages
. - מבצעים קריאה ל-method
ListMessages()
.
בדוגמה הבאה מוצגות הודעות במרחב ב-Chat:
Node.js
Python
Java
Apps Script
כדי להריץ את הדוגמה הזו, מחליפים את SPACE_NAME
במזהה מהשדה name
של המרחב. אפשר לקבל את המזהה על ידי הפעלת השיטה ListSpaces()
או מכתובת ה-URL של המרחב.
Chat API מחזיר רשימה של הודעות שנשלחו במרחב שצוין. אם אין הודעות מהבקשה, התשובה של Chat API מחזירה אובייקט ריק. כשמשתמשים בממשק REST/HTTP, התגובה מכילה אובייקט JSON ריק, {}
.
הצגת הודעות כאפליקציית Chat
כדי לאמת אפליקציה, צריך אישור אדמין חד-פעמי.
כדי להציג רשימה של הודעות ממרחב עם אימות אפליקציה באמצעות Chat REST API, צריך להעביר את הפרטים הבאים בבקשה:
- מציינים את אחד מהיקפי ההרשאה הבאים:
https://www.googleapis.com/auth/chat.app.messages.readonly
- מפעילים את השיטה
list
במשאבmessages
. - מעבירים את
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_list_app.py
. מוסיפים את הקוד הבא אל
chat_messages_list_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 lists messages from a specified space. ''' # 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().list( # The space to list messages from. # # Replace SPACE_NAME with a space name. # Obtain the space name from the spaces resource of Chat API, # or from a space's URL. parent='spaces/SPACE_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
: שם המרחב, שאפשר לקבל באמצעות השיטהspaces.list
ב-Chat API, או מכתובת ה-URL של המרחב.
בספריית העבודה, מבצעים build ומריצים את הדוגמה:
python3 chat_messages_list_app.py
Chat API מחזיר רשימה של הודעות שנשלחו במרחב שצוין. אם אין הודעות מהבקשה, התשובה של Chat API מחזירה אובייקט ריק. כשמשתמשים בממשק REST/HTTP, התגובה מכילה אובייקט JSON ריק, {}
.