Google Apps 脚本快速入门

创建向 Google Chat API 发出请求的 Google Apps 脚本

快速入门介绍了如何设置和运行调用 Google Workspace API 的应用。本快速入门使用一种简化的身份验证方法,该方法适用于测试环境。对于生产环境,我们建议您先了解身份验证和授权,然后再选择适合您应用的访问凭据

在 Apps 脚本中,Google Workspace 快速入门指南使用高级 Google 服务来调用 Google Workspace API 并处理身份验证和授权流程的一些详细信息。

目标

  • 配置环境。
  • 创建并配置脚本。
  • 运行脚本。

前提条件

配置 Cloud 项目

如果您要使用新的 Google Cloud 项目来完成此快速入门,则需要配置该项目并将自己添加为测试用户。如果您已为 Cloud 项目完成这些步骤,请跳至下一部分。

在 Google Cloud 控制台中打开您的 Cloud 项目

如果尚未打开,请打开您打算用于此示例的 Cloud 项目:

  1. 在 Google Cloud 控制台中,前往选择项目页面。

    选择 Cloud 项目

  2. 选择您要使用的 Google Cloud 项目。或者,点击创建项目,然后按照屏幕上的说明操作。如果您创建了 Google Cloud 项目,可能需要为该项目启用结算功能

启用 Chat API

在使用 Google API 之前,您需要在 Google Cloud 项目中启用它们。 您可以在单个 Google Cloud 项目中启用一个或多个 API。
  • 在 Google Cloud 控制台中,启用 Google Chat API。

    启用 API

  1. 在 Google Cloud 控制台中,依次前往菜单 > > 品牌推广

    前往“品牌推广”

  2. 如果您已配置 ,则可以在品牌受众群体数据访问中配置以下 OAuth 权限请求页面设置。如果您看到一条消息,指出 尚未配置,请点击开始
    1. 应用信息下,在应用名称中输入应用的名称。
    2. 用户支持电子邮件中,选择一个支持电子邮件地址,以便用户在对自己的同意情况有疑问时与您联系。
    3. 点击下一步
    4. 受众群体下,选择内部
    5. 点击下一步
    6. 联系信息下,输入一个电子邮件地址,以便您接收有关项目变更的通知。
    7. 点击下一步
    8. 完成下,查看 Google API 服务用户数据政策,如果您同意该政策,请选择我同意《Google API 服务:用户数据政策》
    9. 点击继续
    10. 点击创建
  3. 目前,您可以跳过添加范围的步骤。 未来,如果您创建的应用供 Google Workspace 组织以外的用户使用,则必须将用户类型更改为外部。然后,添加应用所需的授权范围。如需了解详情,请参阅完整的配置 OAuth 同意指南。

配置 Google Chat 应用

如需调用 Google Chat API,您必须配置 Google Chat 应用。对于任何写入请求,Google Chat 都会使用以下信息在界面中归因 Google Chat 应用。

  1. 在 Google Cloud 控制台中,前往 Chat API 配置页面:

    前往“Chat API 配置”页面

  2. 申请信息下,输入以下信息:

    1. 应用名称字段中,输入 Chat API quickstart app
    2. 头像网址字段中,输入 https://developers.google.com/chat/images/quickstart-app-avatar.png
    3. 说明字段中,输入 Quickstart for calling the Chat API
  3. 互动功能下,点击启用互动功能切换开关,将其切换到关闭位置,以停用 Chat 应用的互动功能。

  4. 点击保存

创建脚本

  1. 前往 script.google.com/create,创建一个新脚本。
  2. 将脚本编辑器的内容替换为以下代码:

chat/quickstart/Code.gs
/**
 * This quickstart sample shows how to list spaces with user credential
 *
 * It relies on the OAuth2 scope 'https://www.googleapis.com/auth/chat.spaces.readonly'
 * referenced in the manifest file (appsscript.json).
 */
function listSpaces() {
  // Initialize request argument(s)
  // Filter spaces by space type (SPACE or GROUP_CHAT or DIRECT_MESSAGE)
  const filter = 'space_type = "SPACE"';

  // Iterate through the response pages using page tokens
  let responsePage;
  let pageToken = null;
  do {
    // Request response pages
    responsePage = Chat.Spaces.list({
      filter: filter,
      pageToken: pageToken
    });
    // Handle response pages
    if (responsePage.spaces) {
      responsePage.spaces.forEach((space) => console.log(space));
    }
    // Update the page token to the next one
    pageToken = responsePage.nextPageToken;
  } while (pageToken);
}

  1. 点击“保存”图标
  2. 点击未命名项目,输入 Quickstart,然后点击重命名

配置脚本

复制 Cloud 项目编号

  1. 在 Google Cloud 控制台中,依次前往“菜单”图标 > IAM 和管理 > 设置

    前往“IAM 和管理”设置

  2. 项目编号字段中,复制相应的值。
  1. 打开 Apps 脚本项目。
  2. 点击项目设置
  3. Google Cloud Platform (GCP) 项目下,点击更改项目
  4. GCP project number 中,粘贴 Google Cloud 项目编号。
  5. 点击设置项目

启用 Google Chat API

打开 Apps 脚本项目。

  1. 点击项目设置
  2. 常规设置下,启用在编辑器中显示“appsscript.json”清单文件
  3. 点击编辑器 ,选择文件 appscript.json,然后将内容替换为以下代码:

chat/quickstart/appsscript.json
{
  "timeZone": "America/New_York",
  "exceptionLogging": "STACKDRIVER",
  "runtimeVersion": "V8",
  "oauthScopes": [
    "https://www.googleapis.com/auth/chat.spaces.readonly"
  ],
  "chat": {},
  "dependencies": {
    "enabledAdvancedServices": [{
      "userSymbol": "Chat",
      "version": "v1",
      "serviceId": "chat"
    }]
  }
}

运行示例

在 Apps 脚本编辑器中,点击运行

首次运行该示例时,系统会提示您授权访问:

  1. 点击查看权限
  2. 选择账号。
  3. 点击允许

脚本的执行日志会显示在窗口底部。

后续步骤