Xem thông tin chi tiết về một sự kiện trong phòng Google Chat

Hướng dẫn này giải thích cách sử dụng phương thức get trên tài nguyên SpaceEvent của API Google Chat để xem thông tin chi tiết về một sự kiện trong không gian Google Chat.

Tài nguyên SpaceEvent thể hiện sự thay đổi đối với một không gian hoặc các tài nguyên con, chẳng hạn như thông báo, phản ứng và thành viên. Để tìm hiểu về các loại sự kiện được hỗ trợ, hãy xem trường eventType của tài liệu tham khảo về tài nguyên SpaceEvent.

Bạn có thể yêu cầu sự kiện tối đa 28 ngày trước thời điểm yêu cầu. Sự kiện này chứa phiên bản gần đây nhất của tài nguyên đã thay đổi. Ví dụ: nếu bạn yêu cầu một sự kiện về một thông báo mới nhưng thông báo đó được cập nhật sau đó, thì máy chủ sẽ trả về tài nguyên Message đã cập nhật trong tải trọng sự kiện.

Để gọi phương thức này, bạn phải sử dụng tính năng xác thực người dùng. Để nhận được một sự kiện, người dùng đã xác thực phải là thành viên của không gian nơi sự kiện xảy ra.

Điều kiện tiên quyết

Python

  • Python 3.6 trở lên
  • Công cụ quản lý gói pip
  • Các thư viện ứng dụng mới nhất của Google dành cho Python. Để cài đặt hoặc cập nhật các công cụ này, hãy chạy lệnh sau trong giao diện dòng lệnh của bạn:

    pip3 install --upgrade google-api-python-client google-auth-oauthlib
    
  • Một dự án trên Google Cloud đã bật và thiết lập API Google Chat. Để biết các bước, hãy xem bài viết Tạo ứng dụng Google Chat.
  • Đã định cấu hình hoạt động uỷ quyền cho ứng dụng Chat. Để nhận được một sự kiện trong không gian, bạn cần phải xác thực người dùng trong một phạm vi hỗ trợ loại sự kiện này. Để chọn một phạm vi, hãy xem phần Tổng quan về việc xác thực và uỷ quyền.

Xem thông tin chi tiết về một sự kiện trong không gian

Để xem thông tin chi tiết về một SpaceEvent trong Google Chat, hãy làm như sau:

Dưới đây là cách lấy SpaceEvent bằng phương thức xác thực người dùng:

Python

  1. Trong thư mục đang làm việc, hãy tạo một tệp có tên chat_space_event_get.py.
  2. Đưa mã sau vào 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. Trong mã, hãy thay thế các đoạn mã sau:

    • SCOPE: Phạm vi uỷ quyền dựa trên loại sự kiện. Ví dụ: nếu bạn đang nhận được một sự kiện trong không gian về một thành viên mới, hãy sử dụng phạm vi chat.memberships.readonly, có định dạng là https://www.googleapis.com/auth/chat.memberships.readonly. Bạn có thể lấy loại sự kiện từ phương thức spaces.spaceEvents.list. Để tìm hiểu cách sử dụng phương thức này, hãy xem phần Liệt kê sự kiện từ một không gian.
    • SPACE: Tên không gian mà bạn có thể lấy từ phương thức spaces.list trong API Chat hoặc từ URL của một không gian.
    • SPACE_EVENT: Tên của sự kiện không gian mà bạn có thể lấy từ phương thức spaces.spaceEvents.list.
  4. Trong thư mục đang làm việc, hãy tạo và chạy mẫu:

    python3 chat_space_event_get.py
    

API Chat trả về một thực thể của SpaceEvent kèm theo thông tin chi tiết về sự kiện đó.