הצגת אירועים ממרחב משותף ב-Google Chat

במדריך הזה מוסבר איך להשתמש ב-method‏ list() במשאב SpaceEvent של Google Chat API כדי להציג רשימה של שינויים במשאבים במרחב משותף.

משאב SpaceEvent מייצג שינוי במרחב היעד, כולל משאבים צאצאים של המרחב, כמו הודעות, תגובות ומינויים. למידע נוסף על רשימת סוגי האירועים ועל עומסי הנתונים הנתמכים באירועים, אפשר לעיין בשדות eventType ו-payload במסמכי העזרה של המשאב SpaceEvent.

אפשר לצרף אירועים לרשימה עד 28 ימים לפני מועד הבקשה. השרת מחזיר אירועים שמכילים את הגרסה האחרונה של המשאב המושפע. לדוגמה, אם תציגו אירועים על חברים חדשים במרחב המשותף, השרת יחזיר משאבי Membership שמכילים את פרטי החברות העדכניים ביותר. אם חברים חדשים הוסרו במהלך התקופה המבוקשת, תוכן האירוע יכלול משאב Membership ריק.

כדי לקרוא לשיטה הזו, צריך להשתמש באימות משתמשים. כדי להציג רשימה של אירועים במרחב משותף, המשתמש המאומת צריך להיות חבר במרחב המשותף.

דרישות מוקדמות

Node.js

הצגת רשימה של אירועים במרחב המשותף

כדי לקבל רשימה של אירועים במרחב משותף ממרחב משותף ב-Chat, צריך להעביר את הפרמטרים הבאים בבקשה:

  • צריך לציין היקף הרשאה אחד או יותר כדי לתמוך בכל סוג אירוע בבקשה. מומלץ לבחור את ההיקף המגביל ביותר שעדיין מאפשר לאפליקציה לפעול. במאמר סקירה כללית על אימות והרשאה מוסבר איך בוחרים היקף.

  • קוראים ל-method‏ ListSpaceEvents() ומעבירים את filter של סוגי האירועים לרשימת. צריך לציין לפחות סוג אירוע אחד, ואפשר גם לסנן לפי תאריך. רשימה של סוגי האירועים הנתמכים מופיעה בשדה eventType במסמכי העזרה של המשאב SpaceEvent.

בדוגמה הבאה מפורטים אירועים לגבי חברויות חדשות והודעות חדשות במרחב משותף:

Node.js

chat/client-libraries/cloud/list-space-events-user-cred.js
import {createClientWithUserCredentials} from './authentication-utils.js';

// Authorization scopes based on the event types
const USER_AUTH_OAUTH_SCOPES = [
  'https://www.googleapis.com/auth/chat.memberships.readonly',
  'https://www.googleapis.com/auth/chat.messages.readonly'
];

// This sample shows how to list space events with user credential
async function main() {
  // Create a client
  const chatClient = await createClientWithUserCredentials(USER_AUTH_OAUTH_SCOPES);

  // Initialize request argument(s)
  const request = {
    // Replace SPACE_NAME here
    parent: 'spaces/SPACE_NAME',
    // A required filter. Filters events about new memberships and messages
    filter: 'eventTypes:"google.workspace.chat.membership.v1.created" OR eventTypes:"google.workspace.chat.message.v1.created"'
  };

  // Make the request
  const pageResult = chatClient.listSpaceEventsAsync(request);

  // Handle the response. Iterating over pageResult will yield results and
  // resolve additional pages automatically.
  for await (const response of pageResult) {
    console.log(response);
  }
}

main().catch(console.error);

כדי להריץ את הדוגמה הזו, צריך להחליף את SPACE_NAME במזהה של name של המרחב המשותף. אפשר לקבל את המזהה על ידי קריאה ל-method‏ ListSpaces() או מכתובת ה-URL של המרחב המשותף.

‏Chat API מחזיר רשימה של אירועים במרחבים משותפים שמחולקים לדפים לגבי חברויות והודעות חדשות.