本指南介绍了如何使用 Google Chat API 的 Space
资源中的 list()
方法列出聊天室。列出空间会返回可过滤的分页空间列表。
Space
资源表示用户和 Chat 应用可以在其中发送消息、共享文件和协作处理事务。聊天室有多种类型:
- 私信 (DM) 是两位用户之间或用户与 Chat 应用之间的对话。
- 群聊是指三位或更多用户与聊天应用之间的对话。
- 命名聊天室是持久存在的聊天室,用户可以在其中发送消息、分享文件和协作。
列出具有应用身份验证的聊天室会列出 Chat 应用有权访问的聊天室。列出具有用户身份验证功能的空间会列出经过身份验证的用户有权访问的空间。
前提条件
Node.js
- 拥有可访问 Google Chat 的 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 应用身份进行身份验证。
Python
- 拥有可访问 Google Chat 的 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 应用身份进行身份验证。
Java
- 拥有可访问 Google Chat 的 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 应用身份进行身份验证。
Apps 脚本
- 拥有可访问 Google Chat 的 Google Workspace 商务版或企业版账号。
- 设置环境:
- 创建 Google Cloud 项目。
- 配置 OAuth 同意屏幕。
- 启用并配置 Google Chat API,为您的 Chat 应用指定名称、图标和说明。
- 创建独立的 Apps 脚本项目,然后启用高级聊天服务。
- 在本指南中,您必须使用用户身份验证或应用身份验证。如需以 Chat 应用身份进行身份验证,请创建服务账号凭据。如需了解具体步骤,请参阅以 Google Chat 应用的身份进行身份验证和授权。
- 选择授权范围,具体取决于您是想以用户身份还是以 Chat 应用身份进行身份验证。
列出已通过用户身份验证的空间
如需列出 Google Chat 中的聊天室,请在请求中传递以下内容:
- 对于用户身份验证,请指定
chat.spaces.readonly
或chat.spaces
授权范围。 - 调用
ListSpaces()
方法。
以下示例列出了经过身份验证的用户可见的已命名聊天室(但过滤掉了群组聊天和私信):
Node.js
Python
Java
Apps 脚本
Chat API 会返回分页的聊天室列表。
列出具有应用身份验证的空间
如需列出 Google Chat 中的聊天室,请在请求中传递以下内容:
- 使用应用身份验证,指定
chat.bot
授权范围。 - 调用
ListSpaces()
方法。
以下示例列出了 Chat 应用可见的已命名聊天室(但不包括群聊和私信):
Node.js
Python
Java
Apps 脚本
Chat API 会返回分页的聊天室列表。
自定义分页或过滤列表
如需列出 Google Chat 中的聊天室,请传递以下可选查询参数来自定义列出的聊天室的分页或过滤条件:
pageSize
:要返回的空间数量上限。服务返回的数量可能小于此值。如果未指定,则最多返回 100 个空间。最大值为 1,000;高于 1,000 的值会自动更改为 1,000。pageToken
:从之前的 list spaces 调用接收的页面令牌。 提供此令牌以检索后续页面。进行分页时,过滤条件值应与提供页面令牌的调用相一致。传递其他值可能会导致意外结果。filter
:查询过滤条件。如需了解支持的查询的详细信息,请参阅ListSpacesRequest
参考文档。