使用 REST API 手动注册设备

为了实现快速开发,您可以使用 Google 助理 SDK 提供的注册工具来快速注册或更新设备模型和实例。

如果您不想使用此工具,可以使用 JSON 文件和 REST API 手动注册或更新设备。您可以在任何计算机上执行此操作。首先获取访问令牌,然后跳至相应的部分。

获取访问令牌

  1. 请确保授权工具是最新版本:

    python -m pip install --upgrade google-auth-oauthlib[tool]

  2. 获取能够注册新设备模型的凭据。引用您在上一步中复制到设备的 JSON 文件。 步骤

    google-oauthlib-tool --scope https://www.googleapis.com/auth/assistant-sdk-prototype \
          --headless --client-secrets /path/to/client_secret_client-id.json

    您应该会在终端中看到一个网址:

    Please visit this URL to authorize this application: https://...

  3. 复制网址并将其粘贴到浏览器中(可以在开发机器或任何其他机器上完成)。您批准后,浏览器中会显示代码,例如“4/XXXX”。复制以下代码并将其粘贴到终端中:

    Enter the authorization code:

    如果授权成功,您将看到类似于以下内容的 JSON 响应:

    {
       "scopes": ["https://www.googleapis.com/auth/assistant-sdk-prototype"],
       "token_uri": "https://accounts.google.com/o/oauth2/token",
       "token": "ya29.GlujBLa_kuXZ5GnGBPBe_A6NpczLcpOtglEC0wHVORnmEhHETzlSW",
       "client_id": "795595571889-6iesr9a3nkmnipbdfnqi6gehiklm2m28.apps.googleusercontent.com",
       "client_secret": "Un8_TNFnb55555auSAGasvAg",
       "refresh_token": "1/4ZMBhTR3bTYWVEMatYWLOxW755555hlQXZI5uC02F2U"
     }

    如果您看到 UNAUTHENTICATED,则表示输入的验证码无效。请重试,但请务必复制并粘贴整段代码。

  4. 在 JSON 响应中找到 token。将此访问令牌(不包括英文双引号)复制到一个环境变量中:

    ACCESSTOKEN=access-token

设备型号操作

定义和注册设备模型

  1. 创建一个文件(例如device_model.json)来描述设备型号的特征。如需了解详情,请参阅设备模型 JSON 参考文档

  2. 使用以下任一方法注册您的设备模型。请务必在以下网址中替换掉与设备型号关联的 project_id

    • 使用以下命令:

      curl -s -X POST -H "Content-Type: application/json" \
      -H "Authorization: Bearer $ACCESSTOKEN" -d @device_model.json \
      https://embeddedassistant.googleapis.com/v1alpha2/projects/project_id/deviceModels/
    • 发送包含以下属性的 HTTPS 请求:

    无论采用哪种方法,服务器都应返回您发送的设备模型 JSON 的副本。如果服务器上已存在该模型,您将收到 ALREADY_EXISTS 错误。

获取设备型号

使用以下任一方法获取设备模型。请务必在以下网址中替换掉与您的设备型号相关联的 project_iddevice_model_id

列出设备型号

您可以使用以下任一方法列出给定项目的所有设备型号。请务必在以下网址中替换掉与您的设备型号相关联的 project_id

更新设备型号

使用以下任一方法更新设备模型。请务必替换与您的设备型号相关联的 project_iddevice_model_id

无论采用哪种方法,服务器都应返回您发送的更新后的设备模型 JSON 的副本。

删除设备型号

使用以下任一方法删除设备模型。请务必在以下网址中替换掉与您的设备型号相关联的 project_iddevice_model_id

设备实例操作

定义并注册设备实例

  1. 创建一个文件(例如test_device.json)用于标识您的设备。如需了解详情,请参阅设备实例 JSON 参考文档

  2. 使用以下任一方法注册设备。请务必在以下网址中替换掉与设备型号关联的 project_id

    • 使用以下命令:

      curl -s -X POST -H "Content-Type: application/json" \
      -H "Authorization: Bearer $ACCESSTOKEN" -d @test_device.json \
      https://embeddedassistant.googleapis.com/v1alpha2/projects/project_id/devices/
    • 发送包含以下属性的 HTTPS 请求:

    无论采用哪种方法,服务器都应返回您发送的设备实例 JSON 的副本。如果服务器上已存在该实例,您会收到 ALREADY_EXISTS 错误。

获取设备实例

使用以下任一方法获取您的设备实例。请记得在以下网址中替换掉与设备型号和设备 id 相关联的 project_id

列出设备实例

您可以使用以下任一方法列出给定项目中的所有设备实例。请务必在以下网址中替换与设备实例关联的 project_id

删除设备实例

使用以下任一方法删除您的设备实例。请记得在以下网址中替换掉与设备型号和设备 id 相关联的 project_id