欢迎使用 Google Home 开发者中心,您可以在这里学习有关如何开发智能家居 Action 的新平台。注意:你将继续在 Actions 控制台中构建操作。

Home Graph

使用集合让一切井井有条 根据您的偏好保存内容并对其进行分类。

智能家居 Action 依赖于 Google Home Graph,这是一个数据库,用于存储和提供有关住宅及其设备的环境数据。Home Graph 数据库用于存储有关结构(例如住宅或办公室)、房间(例如卧室或起居室)以及设备(例如音箱和灯泡)的信息。例如,Home Graph 可以存储住宅这个概念,其中的客厅中包含来自不同制造商的多种类型的设备,例如灯、电视和音响设备。此信息可供 Google Assistant 用于根据相应上下文执行用户请求。状态数据(例如灯泡是否开启)不会长期存储,而是临时性的,仅在 Home Graph 中使用。

Home Graph 基本上就是住宅的逻辑图。它可让您与 Assistant 进行自然对话。 如果你坐在小书房里,想要关闭小书房里的灯,你只需说“Ok Google,把灯关了”就行了,而不用说明当前所在的房间。

Home Graph 的优势:

  • 隐式命令。你、你的 Google Home 设备和灯都在同一个房间里。你只需要说开灯就可以了,无需指明灯所在的房间。
  • 更好地控制显式定位。你可以从另一个房间关闭厨房内来自多家制造商的灯。系统会为 Home Graph 中标识的特定房间确定 smart home intent。

结构

借助 Google Home app (GHA),用户可以配置多个结构,从而允许用户管理多个房屋。每个结构都有自己的一组房间和设备。一个结构由以下部分组成:

  • 管理员 - 结构所有者的帐号。每个结构必须至少有一名管理员。定义管理员后,就可以与其他用户共享和停止共享结构。
  • 房间 - 属于结构构成部分的房间。
  • 标签 - 标识结构的标签,如“约翰的住宅”。
  • 设备 - 属于结构构成部分的设备。这些设备可能来自多个制造商。

图 1 显示了一个拥有住宅、三个房间和多部设备的住宅示例:

下图显示的是一个示例 Home Graph。其中一个结构用蓝色虚线勾勒,三个房间用橙色线勾勒,而房间内的一些设备以绿色圆圈表示。
图 1:首页图表示例

Rooms

房间属于结构的一部分,由以下部分构成:

  • 标签 - 标识房间的标签,例如“主卧室”。
  • 设备 - 属于房间组成部分的设备。这些设备可能来自多个制造商。

设备

一台设备必须属于至少一个结构,最多可属于 1 个房间,并且具有以下属性:

  • 类型 - 设备的类型,例如灯具、摄像头或空调设备。
  • 特征 - 设备支持的特征类型。每种设备都可以具有多个特征。灯可能具有 BrightnessColorSetting 等特征。

特征

特征具有以下属性:

  • 属性 - 设备静态不变的设备属性。属性可以是温度单位或模式。
  • 状态 - 设备的状态。灯可能会返回一个亮度状态,以指示特定灯的当前亮度。每个设备特征都会为设备添加不同的设备状态。
  • 标签 - 用于标识设备的标签,如“卧室灯”。