במדריך הזה מוסבר איך להשתמש ב-method list
ב-משאב SpaceEvent
של Google Chat API כדי להציג רשימה של שינויים במשאבים במרחב משותף.
משאב SpaceEvent
מייצג שינוי במרחב היעד, כולל במשאבי הצאצאים של המרחב
כמו הודעות, תגובות וחברויות במועדון. מידע נוסף על המדיניות בנושא
רשימה של סוגי אירועים ומטענים ייעודיים (payloads) של אירועים שנתמכים. אפשר לעיין בeventType
payload
שדות של המשאב SpaceEvent
מסמכי עזר.
אפשר לרשום אירועים עד 28 ימים לפני מועד שליחת הבקשה. השרת
מחזירה אירועים שמכילים את הגרסה העדכנית ביותר של המשאב המושפע.
לדוגמה, אם תרשמו אירועים שכוללים משתתפים חדשים במרחב המשותף, השרת יחזיר
Membership
משאבים שמכילים את הפרטים העדכניים של המינוי. אם חברים חדשים הוסרו במהלך התקופה המבוקשת, תוכן האירוע יכלול משאב Membership
ריק.
כדי לקרוא ל-method הזה, צריך להשתמש באימות משתמשים. כדי להציג רשימה של אירועים במרחב משותף, המשתמש המאומת צריך להיות חבר במרחב המשותף.
דרישות מוקדמות
Python
- עסק או ארגון חשבון Google Workspace עם גישה אל Google Chat.
- מגדירים את הסביבה:
- יוצרים פרויקט ב-Google Cloud.
- מגדירים את מסך ההסכמה של OAuth.
- מפעילים ומגדירים את Google Chat API עם שם, סמל ותיאור לאפליקציית Chat.
-
יוצרים פרטי כניסה למזהה הלקוח ב-OAuth לאפליקציה למחשב. כדי להריץ את הדוגמה במדריך הזה, שומרים את פרטי הכניסה כקובץ JSON בשם
client_secrets.json
בספרייה המקומית.
- בחירת היקף הרשאה שתומך באימות משתמשים.
הצגת רשימה של אירועים במרחב המשותף
כדי לראות את רשימת האירועים במרחב המשותף מתוך מרחב משותף ב-Chat:
- קריאה ל-method
list
בSpaceEvent
משאב. - מציינים אילו סוגי אירועים יוצגו באמצעות המאפיין
filter
השדה הזה. צריך לציין לפחות סוג אירוע אחד, ואפשר גם לסנן לפי תאריך. בכתובתeventType
אפשר למצוא רשימה של סוגי האירועים הנתמכים . - באימות משתמשים, צריך לציין היקף הרשאה אחד או יותר כדי לתמוך בכל סוג אירוע בבקשה. מומלץ לבחור את ההיקף המגביל ביותר שעדיין מאפשר לאפליקציה לפעול. לבחירת היקף, אפשר לעיין סקירה כללית על אימות והרשאות
בדוגמת הקוד הבאה, מוצגים אירועים שקשורים למינויים חדשים הודעות במרחבים משותפים.
Python
- בספריית העבודה, יוצרים קובץ בשם
chat_space_event_list.py
. מוסיפים את הקוד הבא ב-
chat_space_event_list.py
:"""Lists SpaceEvent resources from the Chat API.""" from google_auth_oauthlib.flow import InstalledAppFlow from googleapiclient.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.memberships.readonly", "https://www.googleapis.com/auth/chat.messages.readonly"] # Authenticate with Google Workspace # and get user authorization. flow = InstalledAppFlow.from_client_secrets_file( 'client_secrets.json', SCOPES) creds = flow.run_local_server() # Build a service endpoint for Chat API. chat = build( 'chat', 'v1', credentials=creds, ) # Use the service endpoint to call Chat API. result = chat.spaces().spaceEvents().list( # The space from which to list events. # # Replace SPACE with a space name. # Obtain the space name from the spaces resource of Chat API, # or from a space's URL. parent='spaces/SPACE', # A required filter. Filters and returns events about new memberships and messages filter='event_types:"google.workspace.chat.membership.v1.created" OR event_types:"google.workspace.chat.message.v1.created"' ).execute() # Prints details about the created space events. print(result)
בקוד, מחליפים את מה שכתוב בשדות הבאים:
SPACE
: שם של מרחב, שאפשר לקבל ממנו ה-methodspaces.list
מ-Chat API או מכתובת ה-URL של מרחב משותף.
בספריית העבודה, יוצרים ומריצים את הדוגמה:
python3 chat_space_event_list.py
ה-Chat API מחזיר רשימה של
SpaceEvent
מקורות מידע
אירועים על הודעות ומינויים חדשים.
התאמה אישית של החלוקה לדפים
אפשר גם להעביר את פרמטרים השאילתה הבאים כדי להתאים אישית את החלוקה לדפים:
pageSize
: מספר המשאבים המקסימלי מסוגSpaceEvent
שצריך להחזיר. השירות עשוי להחזיר פחות מהערך הזה. ערכי שליליים מחזירים את השגיאהINVALID_ARGUMENT
.pageToken
: אסימון דף, שהתקבל מבקשת אירועים קודמת של מרחב רשימות. צריך לספק את האסימון הזה כדי לאחזר את הדף הבא. כשמחלקים לדפים, ערך המסנן צריך להתאים לקריאה שסיפקה את אסימון הדף. עובר ערך שונה עלול להוביל לתוצאות בלתי צפויות.