巢
这巢
集成使您可以集成Google Nest家庭助理的设备。必威是什么此集成使用智能设备管理API和Google的Cloud PubSub有效地聆听设备状态或其他事件的变化。看支持的设备对于SDM API支持的所有设备。
目前,家庭助理中的以下设备类型支持:必威是什么
相机和门铃的使用自动化和设备触发器对于活动和一个媒体来源用于在受支持的设备上捕获媒体图像。SDM API当前不支持其他设备类型,例如SMOKE和CO警报或安全系统。
您可以控制接触家庭助理的信息和功能。必威是什么您可以为任何特定设备授权单个设备,多个设备或不同级别的功能,例如运动事件,实时流。集成足够灵活,可以根据您的允许进行调整。
NEST智能设备管理(SDM)API需要5美元的费用。
视频演练
设备访问注册
对于第一阶段,您将打开API并创建必要的凭据,以与Nest API进行家庭助理对话。必威是什么
到本节的结尾,您将拥有一个云项目,并启用了必要的API
如果这是您第一次在这里,您可能需要创建一个新的Google Cloud项目。点击创建项目然后新项目。
给您的云项目一个名字,然后单击创建。
去API&Services>库您可以在哪里启用API。
从API库搜索智能设备管理然后单击使能够。
从API库搜索云酒吧/sub api在云控制台中,单击使能够。
现在,您可以准备一个云项目,以便下一节可以使用OAuth配置身份验证。
在本节结束时,您将配置OAuth同意屏幕,以使家庭助理访问您的云项目所需。必威是什么
点击OAuth同意屏幕并配置它。
选择外部的(如果您不是G-Suite用户,则唯一的选择)然后单击创建。当您在这里时,您可以单击让我们知道您的想法为了向Google的Oauth团队提供有关您为自托管软件配置凭据的经验的任何反馈。他们定期改进这一流程,似乎重视反馈。
这应用信息屏幕需要您输入应用名称和用户支持电子邮件,然后再次输入您的电子邮件开发人员联系电子邮件。这些仅在您稍后通过OAuth流以授权家庭助理访问您的帐户时显示。必威是什么点击保存并继续。省略不必要的信息(例如徽标),以避免Google的额外审查。
在范围单击步骤保存并继续。
在测试用户步骤,您需要将Google帐户(例如您的 @gmail.com地址)添加到列表中。点击救在您的测试帐户上保存并继续完成同意流程。
导航回到OAuth同意屏幕然后单击发布应用程序设置出版状态是在生产中。
警告说你使用Google帐户的任何用户都可以使用应用程序它是指您在应用信息如果有人找到URL,则屏幕。这不会曝光您的Google帐户或NEST数据。
确保状态不是测试,否则您将每7天登录一次。
到本节的结尾,您将拥有client_id
和client_secret
以后的步骤需要。
以下步骤使用桌面应用程序AUTH,因为您的家庭必威体育存款助理实例不必威是什么是公共网站。Web应用程序不再建议使用auth以避免需要配置SSL并遵循严格的URL验证规则。
导航到证书页面并单击创建凭据。
从下拉列表中选择OAUTH客户端ID。
进入桌面应用程序对于应用程序类型。
为您的凭据选择名称。
现在应该向您展示创建了OAuth客户端信息。记笔记您的客户ID和您的客户秘密由于需要在以后的步骤中。
现在您已经配置了身份验证,您将创建一个Nest Device Access Project需要5美元的费用。完成后,您将拥有一个设备访问Project_ID
以后的步骤需要。
配置
现在,您应该拥有在家庭助理中配置巢的一切所需的一切。必威是什么编辑您的configuration.yaml
文件并填充一个巢
以下面的示例配置格式输入。
#示例Configuration.yaml条目巢:client_id:client_idclient_secret:client_secret#设备访问控制台中的“项目ID”(不是云项目ID!)Project_ID:Project_ID
设备设置
一次configuration.yaml
有效巢
条目,您需要通过使用此my按钮通过用户界面将NEST添加到您的必威体育存款家庭助理实必威是什么例:
NEST集成设置将带您完成授权您的家庭助理访问您的帐户和巢设备的步骤。必威是什么必威体育存款
在本节中,您将授权家庭助理通过生成一个必威是什么身份验证令牌。
选择oauth用于应用程序自创建以来桌面应用程序上面的凭据在Google Cloud Console中。注意oauth用于网络如果您以前创建,仍然存在Web应用程序凭证,并希望继续使用它们。
点击链接到授权您的帐户。
打开一个新选项卡,使您可以选择一个Google帐户。这应该是您上面配置的相同开发人员帐户。
这Google Nest权限屏幕将使您可以选择要配置的设备,并允许您从多个房屋中选择设备。您可能想启用所有内容,但是,您可以忽略任何不希望与家庭助手一起使用的功能。必威是什么
您将被重定向到另一个帐户选择页面。
您可能会看到一个警告屏幕Google尚未验证此应用程序由于您刚刚设置了一个未验证的开发人员工作流程。点击继续继续。
然后,您将被要求授予获得其他权限的访问权限。点击允许。
确认您要允许持续访问家庭助理。必威是什么
复制访问令牌。
将访问令牌粘贴到家庭助理中必威是什么链接Google帐户对话。
下一步是输入云项目ID启用订阅以从设备接收更新。这与设备访问项目ID多于!参观云控制台并复制项目ID。
如果一切顺利,您就准备好了!
气候
所有Google Nest恒温器模型均被视为气候
使用的实体恒温特征在SDM API中。恒温器对恒温器的状态变化通过Cloud PubSub用户报告给家庭助理。必威是什么
给定恒温器楼上
然后,气候实体是用一个名称创建的气候
以下权限启用了此功能:
- 允许家庭助理必威是什么访问并控制您的恒温器
传感器
所有Google Nest恒温器模型均具有SDM API暴露的特征。传感器的初始值在启动时获取,然后使用Cloud PubSub订阅者定期更新。传感器支持以下特征:
给定恒温器楼上
然后,传感器是用诸如传感器。upstairs_temperature
或者传感器。upstairs_humity
。
以下权限启用了此功能:
- 允许家庭助理必威是什么访问并控制您的恒温器
相机
必威是什么家庭助理支持所有SDM API功能。但是,每个相机或门铃设备都具有不同的内置功能。相机设备具有以下实时流类型之一:
- RTSP:这些设备具有由家庭助理核心提供的HLS流。必威是什么这些相机支持服务器侧
相机
诸如流录制或图像预览之类的服务。看低延迟HLS作为能够减少流延迟的绝佳选择。 - webrtc:这些设备支持直接浏览器到相机通信和超低延迟流。一种图片眼镜卡可以在网格中显示现场流相机视图调成
居住
(不建议用于电池供电的摄像机)。相机
诸如流录制之类的服务是不支持。
以下权限启用了此功能:
- 允许家庭助理必威是什么查看并显示相机的直播
- 巢或Google Home应用程序中的其他权限。
所有相机都有运动和人触发器,但是只有一些支持捕获事件的快照。下表总结了支持的SDM API功能对于每个设备。
设备 | 现场直播 | 触发 /事件 | 媒体来源 用于触发器 /事件 |
---|---|---|---|
Nest Cam(室内,有线) 巢凸轮(室外,电池) |
webrtc | 运动 人 |
N/A。 |
巢凸轮室内 Nest Cam IQ室内 Nest Cam IQ户外 Nest Cam户外 |
RTSP 记录 |
运动 人 声音 |
快照(JPG) |
嵌套凸轮带有泛光灯 | webrtc | 运动 人 |
N/A。 |
巢门铃(电池) | webrtc | 运动 人 铃 |
剪辑预览(MP4,GIF) |
巢门铃(有线) | RTSP 记录 |
运动 人 声音 铃 |
快照(JPG) |
Nest Hub Max | RTSP 记录 |
运动 人 声音 *SDM API已知问题 |
快照(JPG) |
给定一个命名的相机前院
然后,相机是用一个名称创建的摄像头。front_yard
。
自动化和设备触发器
巢的整合提供设备触发器启用自动化家庭助理。必威是什么您应该查看自动化家庭助理必威是什么入门自动化指南或自动化文档以获取完整的详细信息。
这是一个例子nest_event
有效负载看起来像是可以用于为自动化供电的设备触发器。
{“事件类型”:“ nest_event”,,,,“数据”:{“设备编号”:“ example_device_id”,,,,“类型”:“ doorbell_chime”,,,,“时间戳”:“ 2022-01-26T04:56:54.031000+00:00”,,,,“ nest_event_id”:“ example_event_id”,,,,“区域”:[[“区域1”],,},,}
设备编号
:相机的家庭必威是什么助理设备标识符nest_event_id
:是不透明的标识符,可与下面描述的媒体源附件一起用于支持相机。区域
:如果可用,则触发事件的区域。区域是在Google Home应用中配置的,尽管所有相机都不支持。指定区域外的区域中的事件将是一个空的区域名称。
继续在下面阅读到媒体源附件查看如何使用通知操作的媒体。
以下权限启用了此功能:
- 允许家庭助理必威是什么知道何时有相机活动
- 允许家庭助理必威是什么知道何时有门铃活动
- 巢或Google Home应用程序中的其他权限。
媒体来源
鸟巢媒体来源平台使您可以浏览剪辑以获取最近的相机事件。必威是什么家庭助理并不是要成为网络视频记录器(NVR)平台,但是,支持捕获最近事件的基本支持。
上表描述了哪些设备支持事件图像快照或10帧MP4视频剪辑,用于最近的事件。
媒体附件
媒体源API可用于伴侣应用程序附件作为作为上述设备触发器的操作的通知门铃压了。您将需要熟悉相机支持的媒体资源以及Companion应用程序的媒体功能。
/api/nest/event_media/device_id/event_id
:事件的媒体,该事件支持图像快照(JPG)或剪辑预览(MP4),具体取决于相机类型。/api/nest/event_media/device_id/event_id/缩略图
:根据摄像机类型,支持图像快照(JPG)或剪辑预览(GIF)的介质的缩略图预览。
您可以使用事件有效负载字段设备编号
和event_id
在自动化从动作如下所示。
支持iOS使用的剪辑预览的摄像机的示例,该剪辑预览可以在通知中呈现视频。
服务:notify.mobile_app_iphone数据:信息:门铃压了标题:有人按门铃数据:图片:> -/api/nest/event_media/{{trigger.event.data.device_id}}}/{{trigger.event.data.nest_event_id}}/thumbnail视频:> -/api/nest/event_media/{{trigger.event.data.device_id}}}/{{trigger.event.data.nest_event_id}}模式:单身的
支持剪辑预览的摄像机的示例,但已转码为动画GIF(Android不会呈现视频通知)。
服务:notify.mobile_app_android数据:信息:门铃压了标题:有人按门铃数据:图片:> -/api/nest/event_media/{{trigger.event.data.device_id}}}/{{trigger.event.data.nest_event_id}}/thumbnail
支持Android或iOS上支持Snaphot(JPG)的摄像机的示例。
服务:notify.mobile_app数据:信息:门铃压了标题:有人按门铃数据:图片:> -/api/nest/event_media/{{trigger.event.data.device_id}}}/{{trigger.event.data.nest_event_id}}/thumbnail
以下权限启用了此功能:
- 根据您选择从该设备共享的事件,允许家庭助理访问相机录像剪辑必威是什么
- 根据您选择从该设备共享的事件,允许家庭助理访问相机快照必威是什么
- 巢或Google Home应用程序中的其他权限。
故障排除
您可以管理巢穴中授予家庭助理的设备和权限必威是什么合作伙伴Connections Manager。重新启动家庭助理必威是什么,使新设备可用。看到SDM API故障排除文档以获取更多详细信息。
有关SDM API OAUTH授权流的一般麻烦,请参见故障排除。
查看设置- >系统- >日志要查看是否有任何错误消息或错误配置,请查看下面的错误消息。
经常需要重新验证:如果您每7天登录一次,这意味着出于某些其他原因,Google撤销了OAuth同意屏幕误解或您的身份验证令牌。
- 这个很可能的原因是OAuth同意屏幕被设置为测试默认情况下,该令牌在7天后到期。
- 按照上述步骤设置为生产解决此问题并重新授权您的集成一次,以获取新的令牌。
- 您也可以将其视为错误消息Invalid_grant:令牌已过期或吊销。
- 看Google身份:刷新令牌到期出于更多原因,为什么您的令牌可能已过期。
错误400:redirect_uri_mismatch:这意味着您有一个现有的Web应用程序凭据。建议删除现有的OAuth客户端ID并创建新的桌面应用程序使用上述说明凭证。这具有不需要SSL或公共DNS名称的优势。
恒温器未出现或不可用由于SDM API确实返回设备的错误而发生。一个常见的修复使API再次工作是:
- 重新启动恒温器设备。看如何重新启动或重置巢恒温器更多细节。
- 在官方的巢应用程序或开启https://home.nest.com:将恒温器移至其他或假/临时房间。
- 重新加载家庭助理中的集成:导航到必威是什么配置然后设备和服务, 点击
...
旁边的巢并选择重新加载。
没有创建设备或实体如果SDM API未返回授权帐户的任何设备。仔细检查GCP正确配置为启用API并在OAuth设置流中授权至少一台设备。如果您在这里遇到麻烦,那么您可能需要浏览Google说明并直接针对API发出命令,直到您成功地收回设备为止。
错误403:Access_denied意味着您需要参观OAuth同意屏幕并将您的Google帐户添加为一个测试用户。
错误:Invalid_client无应用名称表示OAuth同意屏幕该项目尚未完全配置。输入所需字段(应用程序名称,支持电子邮件,开发人员电子邮件),并将其他所有内容留为默认值。
订户错误意思是
configuration.yaml
有不正确subscriber_id
否则订阅是错误的。建议将其从配置中删除,然后删除并重新添加集成以使其为您创建订阅。未收到更新通常意味着订户配置的问题。确保检查日志是否有任何错误消息。当所有内容正确配置时,诸如传感器或恒温器温度设定点之类的更改应立即发布到主题,并由家庭助理订户接收。必威是什么
您可以在云控制台其中包括您的设备发布的消息,以及您的家庭助理订阅者已承认多少消息。必威是什么必威体育存款你也可以
查看消息
查看已出版的例子。许多旧的未经认可的消息表明订户没有接收消息,并且完全无法连接。为了帮助诊断订户问题或相机流问题,将其中的一些或全部添加到您的
configuration.yaml
取决于您遇到麻烦的地方:
记录器:默认:信息日志:homeassistant.components.nest:调试homeassistant.components.nest.climate_sdm:调试homeassistant.components.nest.camera_sdm:调试homeassistant.components.nest.sensor_sdm:调试homeassistant.helpers.config_entry_flow:调试homeassistant.helpers.config_entry_oauth2_flow:调试Google_nest_sdm:调试Google_nest_sdm.device:调试Google_nest_sdm.device_manager:调试google_nest_sdm.google_nest_subscriber:调试Google_nest_sdm.event:调试
- 建议让Home Assistant为您创建酒吧/子必威是什么订阅。但是,如果您想要更多的控制权,则可以输入
susbcriber_id
在配置中。看订阅事件有关如何手动创建订阅并使用家庭助理配置中的完整订阅名称的更多说明,例如必威是什么项目/GCP项目名称/订阅/订阅-ID
与Nest API一起使用
遗产与Nest一起使用API不接受新的注册。
巢集成是整合全部的主要集成巢相关平台。要连接巢,您必须注册开发人员帐户并得到一个client_id
和client_secret
。
目前,家庭助理中的以下设备类型支持:必威是什么
设置开发人员帐户
- 访问巢开发商,并登录。如果您还没有一个帐户,请创建一个帐户。
- 填写帐户详细信息:
- “公司信息”可以是任何东西。我们建议使用您的名字。
- 产品名称必须是唯一的。我们建议[电子邮件] - 家庭助理。必威是什么
- 描述,用户,URL都可以是您想要的任何东西。
- 将“重定向URI”字段留空留空
- 有关权限,请选中每个框,如果是一个选项,请选择“读/写”选项。注意:“其他权限”类别中有重要的权限。如果您仅添加恒温器,则不要仅选择“恒温器”下的权限。您仍然需要选中“其他权限”下的框,以使您可以访问Oake Mode,ETA,ETA,结构读取/写入和邮政编码等功能。
- 该描述需要接受特定格式。
- 使用“ [家必威是什么庭助理] [编辑] [用于家庭自动化]”作为描述,因为它并不重要。
- 点击“创建产品”
- 新产品页面打开后,“产品ID”和“产品秘密”就位于右侧。这些将被用作
client_id
和client_secret
以下。 - 将巢的整合添加到您的
configuration.yaml
并重新启动家庭助理。必威是什么然后,去设置>设备和服务
并选择配置
旁边的巢
。单击弹出式配置器中的链接以登录您的Nest帐户并完成OAuth。将生成的引脚代码复制到弹出窗口中。
连接到Nest Developer API需要您的防火墙上的出站端口9553。如果无法访问,则配置将失败。
配置
#示例Configuration.yaml条目巢:client_id:client_idclient_secret:client_secret
#示例配置巢:client_id:client_idclient_secret:client_secret结构体:-假期-基本的
服务set_away_mode
您可以使用该服务NEST/SET_AWAY_MODE
将结构设置为“家”或“离开”。
服务数据属性 | 选修的 | 描述 |
---|---|---|
Away_mode |
不 | 字符串,必须是离开 或者家 。 |
结构体 |
是的 | 字符串,如果未指定,则将默认为所有配置的巢结构。 |
例子:
#要设置的示例脚本,没有指定的结构,因此将执行所有结构脚本:nest_set_away:顺序:-服务:nest.set_away_mode数据:Away_mode:离开
#要设置回家的示例脚本,指定的结构脚本:nest_set_home:顺序:-服务:nest.set_away_mode数据:Away_mode:家结构体:-公寓
服务set_eta
您可以使用该服务NEST/SET_ETA
设置或更新到达窗口的估计时间。调用此服务将自动将结构设置为“远方”。结构必须具有相关的嵌套恒温器才能使用ETA功能。
服务数据属性 | 选修的 | 描述 |
---|---|---|
eta |
不 | 时间段,从现在开始的估计到达时间。 |
eta_window |
是的 | 时间段,估计到达窗口的时间。默认值为1分钟。 |
trip_id |
是的 | 字符串,旅行的唯一ID。使用时间戳自动生成默认值。使用现有trip_id 将更新该旅行的ETA。 |
结构体 |
是的 | 字符串,如果未指定,则将默认为所有配置的巢结构。 |
例子:
#要设置ETA的示例脚本,未指定结构,因此将执行所有结构脚本:nest_set_eta:顺序:-服务:NEST.SET_ETA数据:eta:00:10:30trip_id:下班
#要更新ETA并指定窗口的示例脚本,指定结构已指定脚本:nest_update_eta:顺序:-服务:NEST.SET_ETA数据:eta:00:11:00eta_window:00:05trip_id:下班结构体:-公寓
服务cancel_eta
您可以使用该服务NEST/CANCAL_ETA
取消现有的估计到达窗口的估计时间。结构必须具有相关的嵌套恒温器才能使用ETA功能。
服务数据属性 | 选修的 | 描述 |
---|---|---|
trip_id |
不 | 字符串,旅行的唯一ID。使用现有trip_id 将更新该旅行的ETA。 |
结构体 |
是的 | 字符串,如果未指定,则将默认为所有配置的巢结构。 |
例子:
#要取消ETA的示例脚本,没有指定的结构,因此将执行所有结构脚本:nest_cancel_eta:顺序:-服务:NEST.CANCEL_ETA数据:trip_id:下班
#取消ETA的示例脚本,指定结构脚本:nest_cancel_eta:顺序:-服务:NEST.CANCEL_ETA数据:trip_id:下班结构体:-公寓
故障排除
对于使用Google进行SDM API OAUTH授权流的麻烦,请参阅故障排除其中包括错误的指导
redirect_uri_mismatch
Google需要了解您的外部URL的地方。如果你得到了rick骨通过旧版API,而不是能够看到您的巢摄像机,您可能无法正确设置开发人员帐户的权限。返回并确保您在每个类别中都选择了读/写,这是一个选择。
平台
你必须有巢组件配置为使用以下平台。
二进制传感器
这巢
二进制传感器平台使您可以监视您的各种状态巢设备。
你必须有巢组件配置为使用这些传感器。如果二进制传感器将设置巢
集成已配置,并为巢二进制传感器
设置。
配置
为了启用二进制传感器并自定义设置了哪些传感器,您可以扩展巢组件您的配置configuration.yaml
具有以下设置的文件:
#示例Configuration.yaml条目巢:binary_sensors:监视_conditions:-'扇子'-'目标'
默认情况下,将监控所有可用巢设备的所有二进制传感器。离开监视_conditions
空白以禁用所有二进制传感器巢组件。
以下条件可通过设备获得:
- Nest Home:
- 离开
- 巢恒温器:
- 在线的
- 扇子
- is_usis_emergency_heat
- 被锁住了
- has_leaf
- 巢保护:
- 在线的
- 巢摄像头:
- 在线的
- Motion_Detected
- person_detected
- sound_detected
相机
这巢
平台允许您观看视频流(非实时流)的静止帧巢在家庭助理中的相机。必威是什么
旧版API集成使您可以观看视频流(不是直播流)的静止框架。传统API也支持摄像头
和camera.turn_off
服务。
巢摄像机支持摄像头
和camera.turn_off
自0.75版本以来的服务。
气候
这巢
气候平台可让您从巢。
传感器
这巢
传感器平台使您可以监视连接到您的传感器巢设备。
如果传感器将设置巢
集成已配置,并为巢传感器
设置。
配置
为了启用传感器并自定义设置了哪些传感器,您可以扩展巢组件您的配置configuration.yaml
具有以下设置的文件:
#示例Configuration.yaml条目巢:传感器:监视_conditions:-'温度'-'目标'
默认情况下,将监视可用巢设备的所有传感器。离开监视_conditions
空白以禁用所有传感器巢组件。
以下条件可通过设备获得:
- Nest Home:
eta
: 预计到达时间。Security_state
:行
或者阻止
。安全状态。仅当存在巢摄像机时可用。
- 巢恒温器:
湿度
PRESET_MODE
温度
目标
HVAC_STATE
:HVAC系统的当前活跃状态,热
,,,,凉爽的
或者离开
(之前加热
,,,,冷却
或者离开
)。
- 巢保护:
co_status
:行
,,,,警告
或者紧急情况
smoke_status
:行
,,,,警告
或者紧急情况
Battery_health
:行
或者代替
color_status
:灰色的
,,,,绿色
,,,,黄色
或者红色的
。在Nest App UI中指示设备状态。它是电池+烟雾+CO状态的总条件,并反映了Nest应用中显示的实际颜色指示器。
- NEST摄像机:无
安全状态
此功能并非旨在将您的家庭助理转变为安全系统,家庭助理和NEST既不承担损害责任,也不必威体育存款应对由于使必威是什么用此功能而引起的任何角色的损害。
此功能不取决于巢安全警报系统并且不是该系统状态的反映,也不反映该系统中的状态变化。
此功能使用新的Nest Security API。您可能需要更改您的“产品”权限设置包括安全状态读取
。此权限更改后,您可能需要重新授权客户。
如果巢凸轮检测到一个人的存在(请参阅person_detected
在binary_sensor.nest当结构在离开
模式(请参阅离开
在binary_sensor.nest,结构进入阻止
模式。
一种阻止
几分钟后,状态被重新评估,放松到行
如果没有person_detected
事件发生了。
这Security_state
自动切换到行
当结构状态为家
。