このガイドでは、list
の使用方法について説明します。
SpaceEvent
リソースのメソッド
を使用して、スペース内のリソースに対する変更を一覧表示することができます。
SpaceEvent
リソース
スペースの子リソースを含む、ターゲット スペースに対する変更を表します。
たとえばメッセージ、リアクション、メンバーシップなどです。詳細については、
サポートされているイベントタイプとイベント ペイロードの一覧については、eventType
と
SpaceEvent
リソースの payload
フィールド
ご覧ください。
一覧表示できるイベントは、リクエストの 28 日前までです。サーバー
は、影響を受けるリソースの最新バージョンを含むイベントを返します。
たとえば、スペースの新規メンバーに関するイベントを一覧表示すると、サーバーは
最新のメンバーシップの詳細を含む Membership
リソース。新規の場合
削除された場合、イベント ペイロードには
空の Membership
リソースがあります。
このメソッドを呼び出すには、userId 認証をご覧ください。To list スペースから削除するには、そのスペースのメンバーである必要があります。
前提条件
Python
- 企業または大企業 以下にアクセスできる Google Workspace アカウント Google Chat。
- Python 3.6 以降
- pip パッケージ管理ツール
- 最新の Google クライアント ライブラリ。インストールまたは更新する手順は次のとおりです。
コマンドライン インターフェースで次のコマンドを実行します。
pip3 install --upgrade google-api-python-client google-auth-oauthlib
- 環境を設定します。
- Google Cloud プロジェクトを作成します。
- OAuth 同意画面を構成します。
- Google Chat API を有効にして構成する。名前、 アプリのアイコン、説明を入力します。
-
デスクトップ アプリケーション用の OAuth クライアント ID 認証情報を作成するサンプルを実行するには、
で、認証情報を JSON ファイル(
client_secrets.json
)として ディレクトリにあります。
- ユーザー認証をサポートする認可スコープを選択します。
スペースのイベントを一覧表示する
Chat スペース内のスペースのイベントを一覧表示するには、次の操作を行います。
list
メソッドを呼び出すSpaceEvent
resource。- [
filter
表示されます。イベントタイプを少なくとも 1 つ指定する必要があります。次の条件でフィルタすることもできます。 できます。サポートされているイベントタイプの一覧については、eventType
をご覧ください。 フィールドをご覧ください。 - 相手: ユーザー 認証は、 リクエストの各イベントタイプをサポートする 1 つ以上の認可スコープ。 最も制限の厳しいスコープを選択することをおすすめします。 アプリが機能できるようになりますスコープを選択するには、 認証と認可の概要
次のコードサンプルでは、新しいメンバーシップに関するイベントをリストし、 方法について説明します。
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
: スペース名。spaces.list
メソッド スペースの URL から取得できます。
作業ディレクトリでサンプルをビルドして実行します。
python3 chat_space_event_list.py
Chat API は、Google Chat で
SpaceEvent
リソース
新しいメンバーシップやメッセージに関するイベントです。
ページ設定をカスタマイズする
必要に応じて、次のクエリ パラメータを渡してページ分けをカスタマイズします。
pageSize
: 返されるSpaceEvent
リソースの最大数。 サービスはこの値よりも少ない値を返すことがあります。負の値を指定すると、INVALID_ARGUMENT
エラー。pageToken
: 前回のリストスペース イベント呼び出しから受け取ったページトークン。 後続のページを取得するには、このトークンを指定します。ページネーションを行う際、 フィルタ値は、ページトークンを提供した呼び出しと一致する必要があります。引数を渡すことで、 値が異なると、予期しない結果になる可能性があります。