קבלת פרטים על אירוע של מרחב משותף ב-Google Chat

במדריך הזה מוסבר איך להשתמש השיטה get פועלת SpaceEvent משאב של ב-Google Chat API כדי לקבל פרטים על אירועים ממרחבים ב-Google Chat.

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

אתם יכולים לבקש אירועים עד 28 ימים לפני מועד שליחת הבקשה. האירוע מכיל את הגרסה האחרונה של המשאב שהשתנה. לדוגמה, אם כשביקשתם אירוע על הודעה חדשה, אבל ההודעה עודכנה מאוחר יותר, השרת מחזיר את המשאב Message המעודכן במטען הייעודי (payload) של האירוע.

כדי להפעיל את ה-method הזה, צריך להזין את הפקודה user אימות. כדי לקבל המשתמש המאומת חייב להיות חבר במרחב המשותף שבו האירוע אירעה שגיאה.

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

Python

  • Python 3.6 ומעלה
  • הכלי לניהול חבילות pip
  • ספריות הלקוח העדכניות של Google. כדי להתקין או לעדכן אותם, מריצים את הפקודה הבאה בממשק שורת הפקודה:
    pip3 install --upgrade google-api-python-client google-auth-oauthlib
    

איך מקבלים פרטים על אירועים במרחב המשותף

כדי לקבל פרטים על SpaceEvent ב-Google Chat, צריך לבצע את הפעולות הבאות:

  • קריאה ל-method get בSpaceEvent משאב.
  • כדי לקבל את ההטבה, עליך להעביר את name של SpaceEvent. קבלת השם SpaceEvent מSpaceEvent משאב של Google Chat.
  • עם משתמש אימות, ציון היקף הרשאה שתומך בסוג האירוע בבקשה שלכם. בתור לבחור את ההיקף המגביל ביותר שעדיין מאפשר לאפליקציה כדי לפעול באופן תקין.

כך מקבלים SpaceEvent באמצעות אימות משתמש:

Python

  1. בספריית העבודה, יוצרים קובץ בשם chat_space_event_get.py.
  2. צריך לכלול את הקוד הבא ב-chat_space_event_get.py:

    """Gets a SpaceEvent resource 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 = ['SCOPE']
    
    # 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()
        .get(
            # The space event to get.
            #
            # Replace SPACE with a space name.
            # Obtain the space name from the spaces resource of Chat API,
            # or from a space's URL.
            #
            # Replace SPACE_EVENT with a SpaceEvent name.
            # Obtain the spaceEvent name from the SpaceEvent resource of
            # Chat API.
            name='spaces/SPACE/spaceEvents/SPACE_EVENT'
        )
        .execute()
    )
    
    # Prints details about the created spaceEvent.
    print(result)
    
  3. בקוד, מחליפים את מה שכתוב בשדות הבאים:

    • SCOPE: היקף הרשאה על סמך סוג האירוע. לדוגמה, אם אתם מקבלים אירוע בחלל על חברות חדשה במועדון, צריך להשתמש בהיקף ההרשאות chat.memberships.readonly, בפורמט https://www.googleapis.com/auth/chat.memberships.readonly. אפשר למצוא את סוג האירוע השיטה spaces.spaceEvents.list. כדי ללמוד איך להשתמש בשיטה הזו, אפשר לעיין במאמר בנושא הצגת רשימה של אירועים ממרחב משותף
    • SPACE: שם של מרחב, שאפשר לקבל ממנו ה-method spaces.list מ-Chat API או מכתובת ה-URL של מרחב משותף.
    • SPACE_EVENT: שם המרחב שאפשר לקבל spaces.spaceEvents.list method.
  4. בספריית העבודה, יוצרים ומריצים את הדוגמה:

    python3 chat_space_event_get.py
    

Chat API מחזיר מופע של SpaceEvent עם פרטים על האירוע.