Google Chat スペースのイベントを一覧表示する

このガイドでは、list の使用方法について説明します。 SpaceEvent リソースのメソッド を使用して、スペース内のリソースに対する変更を一覧表示することができます。

SpaceEvent リソース スペースの子リソースを含む、ターゲット スペースに対する変更を表します。 たとえばメッセージ、リアクション、メンバーシップなどです。詳細については、 サポートされているイベントタイプとイベント ペイロードの一覧については、eventTypeSpaceEvent リソースpayload フィールド ご覧ください。

一覧表示できるイベントは、リクエストの 28 日前までです。サーバー は、影響を受けるリソースの最新バージョンを含むイベントを返します。 たとえば、スペースの新規メンバーに関するイベントを一覧表示すると、サーバーは 最新のメンバーシップの詳細を含む Membership リソース。新規の場合 削除された場合、イベント ペイロードには 空の Membership リソースがあります。

このメソッドを呼び出すには、userId 認証をご覧ください。To list スペースから削除するには、そのスペースのメンバーである必要があります。

前提条件

Python

  • Python 3.6 以降
  • pip パッケージ管理ツール
  • 最新の Google クライアント ライブラリ。インストールまたは更新する手順は次のとおりです。 コマンドライン インターフェースで次のコマンドを実行します。
    pip3 install --upgrade google-api-python-client google-auth-oauthlib
    

スペースのイベントを一覧表示する

Chat スペース内のスペースのイベントを一覧表示するには、次の操作を行います。

  • list メソッドを呼び出す SpaceEvent resource
  • [ filter 表示されます。イベントタイプを少なくとも 1 つ指定する必要があります。次の条件でフィルタすることもできます。 できます。サポートされているイベントタイプの一覧については、eventType をご覧ください。 フィールドをご覧ください。
  • 相手: ユーザー 認証は、 リクエストの各イベントタイプをサポートする 1 つ以上の認可スコープ。 最も制限の厳しいスコープを選択することをおすすめします。 アプリが機能できるようになりますスコープを選択するには、 認証と認可の概要

次のコードサンプルでは、新しいメンバーシップに関するイベントをリストし、 方法について説明します。

Python

  1. 作業ディレクトリに、chat_space_event_list.py という名前のファイルを作成します。
  2. 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)
    
  3. コードの次のように置き換えます。

  4. 作業ディレクトリでサンプルをビルドして実行します。

    python3 chat_space_event_list.py
    

Chat API は、Google Chat で SpaceEvent リソース 新しいメンバーシップやメッセージに関するイベントです。

ページ設定をカスタマイズする

必要に応じて、次のクエリ パラメータを渡してページ分けをカスタマイズします。

  • pageSize: 返される SpaceEvent リソースの最大数。 サービスはこの値よりも少ない値を返すことがあります。負の値を指定すると、 INVALID_ARGUMENT エラー。
  • pageToken: 前回のリストスペース イベント呼び出しから受け取ったページトークン。 後続のページを取得するには、このトークンを指定します。ページネーションを行う際、 フィルタ値は、ページトークンを提供した呼び出しと一致する必要があります。引数を渡すことで、 値が異なると、予期しない結果になる可能性があります。