本指南說明如何使用 Google Chat API Membership
資源的 list()
方法,列出聊天室成員,並以分頁形式顯示聊天室成員資格清單,還可篩選清單。
- 使用應用程式驗證列出成員資格時,系統會列出 Chat 應用程式有權存取的聊天室成員資格,但會排除 Chat 應用程式的成員資格 (包括應用程式本身的成員資格)。
- 使用使用者驗證列出成員資格,可列出已驗證使用者有權存取的空間成員資格。
- Google Workspace 管理員可使用管理員權限進行使用者驗證,列出 Google Workspace 機構中所有聊天室的成員。
Membership
資源代表使用者或 Google Chat 應用程式是否受邀加入、參與或缺席聊天室。
必要條件
Node.js
- 具有 Google Chat 存取權的 Business 或 Enterprise 版 Google Workspace 帳戶。
- 設定環境:
- 建立 Google Cloud 專案。
- 設定 OAuth 同意畫面。
- 啟用及設定 Google Chat API,並為 Chat 應用程式命名、設定圖示和說明。
- 安裝 Node.js Cloud 用戶端程式庫。
- 根據您要在 Google Chat API 要求中驗證的方式,建立存取憑證:
- 如要以 Chat 使用者身分進行驗證,請建立 OAuth 用戶端 ID 憑證,並將憑證儲存至本機目錄,命名為
credentials.json
的 JSON 檔案。 - 如要以 Chat 應用程式的身分進行驗證,請建立服務帳戶憑證,然後將憑證儲存為名為
credentials.json
的 JSON 檔案。
- 如要以 Chat 使用者身分進行驗證,請建立 OAuth 用戶端 ID 憑證,並將憑證儲存至本機目錄,命名為
- 根據您要以使用者或 Chat 應用程式的身分驗證,選擇授權範圍。
- 經過驗證的使用者或呼叫 Chat 應用程式所屬的 Google Chat 聊天室。如要以 Chat 應用程式的身分驗證,請將 Chat 應用程式新增至聊天室。
Python
- 具有 Google Chat 存取權的 Business 或 Enterprise 版 Google Workspace 帳戶。
- 設定環境:
- 建立 Google Cloud 專案。
- 設定 OAuth 同意畫面。
- 啟用及設定 Google Chat API,並為 Chat 應用程式命名、設定圖示和說明。
- 安裝 Python Cloud 用戶端程式庫。
- 根據您要在 Google Chat API 要求中驗證的方式,建立存取憑證:
- 如要以 Chat 使用者身分進行驗證,請建立 OAuth 用戶端 ID 憑證,並將憑證儲存至本機目錄,命名為
credentials.json
的 JSON 檔案。 - 如要以 Chat 應用程式的身分進行驗證,請建立服務帳戶憑證,然後將憑證儲存為名為
credentials.json
的 JSON 檔案。
- 如要以 Chat 使用者身分進行驗證,請建立 OAuth 用戶端 ID 憑證,並將憑證儲存至本機目錄,命名為
- 根據您要以使用者或 Chat 應用程式的身分驗證,選擇授權範圍。
- 經過驗證的使用者或呼叫 Chat 應用程式所屬的 Google Chat 聊天室。如要以 Chat 應用程式的身分驗證,請將 Chat 應用程式新增至聊天室。
Java
- 具有 Google Chat 存取權的 Business 或 Enterprise 版 Google Workspace 帳戶。
- 設定環境:
- 建立 Google Cloud 專案。
- 設定 OAuth 同意畫面。
- 啟用及設定 Google Chat API,並為 Chat 應用程式命名、設定圖示和說明。
- 安裝 Java Cloud 用戶端程式庫。
- 根據您要在 Google Chat API 要求中驗證的方式,建立存取憑證:
- 如要以 Chat 使用者身分進行驗證,請建立 OAuth 用戶端 ID 憑證,並將憑證儲存至本機目錄,命名為
credentials.json
的 JSON 檔案。 - 如要以 Chat 應用程式的身分進行驗證,請建立服務帳戶憑證,然後將憑證儲存為名為
credentials.json
的 JSON 檔案。
- 如要以 Chat 使用者身分進行驗證,請建立 OAuth 用戶端 ID 憑證,並將憑證儲存至本機目錄,命名為
- 根據您要以使用者或 Chat 應用程式的身分驗證,選擇授權範圍。
- 經過驗證的使用者或呼叫 Chat 應用程式所屬的 Google Chat 聊天室。如要以 Chat 應用程式的身分驗證,請將 Chat 應用程式新增至聊天室。
Apps Script
- 具有 Google Chat 存取權的 Business 或 Enterprise 版 Google Workspace 帳戶。
- 設定環境:
- 建立 Google Cloud 專案。
- 設定 OAuth 同意畫面。
- 啟用及設定 Google Chat API,並為 Chat 應用程式命名、設定圖示和說明。
- 建立獨立的 Apps Script 專案,並開啟進階 Chat 服務。
- 在本指南中,您必須使用使用者或應用程式驗證。如要以 Chat 應用程式的身分進行驗證,請建立服務帳戶憑證。如需相關步驟,請參閱「以 Google Chat 擴充應用程式的身分驗證及授權」。
- 根據您要以使用者或 Chat 應用程式的身分驗證,選擇授權範圍。
- 經過驗證的使用者或呼叫 Chat 應用程式所屬的 Google Chat 聊天室。如要以 Chat 應用程式的身分驗證,請將 Chat 應用程式新增至聊天室。
列出聊天室成員 (需通過使用者驗證)
如要在已驗證使用者可存取的空間中列出使用者、Google 群組和 Chat 應用程式,請在要求中傳遞下列項目:
- 透過使用者驗證,指定
chat.memberships.readonly
或chat.memberships
授權範圍。 - 呼叫
ListMemberships()
方法。 - 如要列出 Google 群組,請將查詢參數
showGroups
設為true
。
以下範例列出已通過驗證的使用者可查看的 Google 群組、人員和應用程式成員。
Node.js
Python
Java
Apps Script
如要執行這個範例,請將 SPACE_NAME
替換為空間的 name
欄位中的 ID。您可以呼叫 ListSpaces()
方法,或從空間的網址取得 ID。
Google Chat API 會傳回指定聊天室的 Google 群組、使用者和應用程式成員清單。
列出已驗證應用程式的聊天室成員
如要在已驗證的應用程式可存取的空間中列出使用者和 Chat 應用程式,請在要求中傳遞下列項目:
- 使用應用程式驗證,指定
chat.bot
授權範圍。 - 呼叫
ListMemberships()
方法。 - 如要列出 Google 群組,請將查詢參數
showGroups
設為true
。
以下範例列出 Chat 應用程式可見的聊天室成員 (非聊天室管理員):
Node.js
Python
Java
Apps Script
如要執行這個範例,請將 SPACE_NAME
替換為空間的 name
欄位中的 ID。您可以呼叫 ListSpaces()
方法,或從空間的網址取得 ID。
Google Chat API 會從指定聊天室傳回一份清單,列出聊天室成員 (不含管理員)。
以 Google Workspace 管理員身分列出成員
如果您是 Google Workspace 管理員,可以呼叫 ListMemberships()
方法,列出 Google Workspace 機構中任何聊天室的成員。Chat API 只會傳回貴機構內部和外部使用者或 Google 群組的成員資格,因此會省略任何 Chat 應用程式的成員資格。
如要以 Google Workspace 管理員身分呼叫這個方法,請按照下列步驟操作:
- 使用使用者驗證呼叫方法,並指定支援使用管理員權限呼叫方法的授權範圍。
- 在要求中指定下列查詢參數:
- 將
useAdminAccess
設為true
。 - 如要只傳回使用者,請將
filter
的member.type
設為HUMAN
。 - 如要傳回使用者和群組,請將
filter
設為member.type
不等於BOT
AND
等於true
。showGroups
- 將
如需更多資訊和範例,請參閱「以 Google Workspace 管理員身分管理 Google Chat 聊天室」。
自訂分頁或篩選清單
如要列出會員資格,請傳遞下列查詢參數,自訂列出的會員資格分頁或篩選條件:
pageSize
:要傳回的會員人數上限。服務傳回的產品數量可能會少於這個值。如未指定,最多將傳回 100 個空間。最大值為 1,000;超過 1,000 的值會自動變更為 1,000。pageToken
:先前呼叫 list spaces 時收到的頁面權杖。 提供此權杖即可擷取後續網頁。進行分頁時,篩選器值應與提供網頁權杖的呼叫相符。傳遞其他值可能會導致非預期的結果。filter
:查詢篩選器。需要使用者驗證。如需支援的查詢詳細資料,請參閱ListMembershipsRequest
參考資料。
相關主題
- 查看使用者或 Chat 擴充應用程式的成員資格詳細資料。
- 邀請使用者或 Chat 應用程式加入聊天室。
- 更新 Google Chat 聊天室中的使用者成員資格。
- 從聊天室中移除使用者或 Chat 應用程式。