Home Assistant Netatmo 离家标记动作 netatmo.set_person_away 完整使用指南
2026/9/17 7:21:28 网站建设 项目流程

Home Assistant Netatmo 离家标记动作 netatmo.set_person_away 完整使用指南

【免费下载链接】home-assistant.io:blue_book: Home Assistant User documentation项目地址: https://gitcode.com/GitHub_Trending/ho/home-assistant.io

导读

netatmo.set_person_away是 Home Assistant Netatmo 集成提供的官方动作(action),用于将指定人员标记为"离家"状态,适用于 Netatmo Indoor(Welcome)室内摄像头。阅读本文后,你将掌握该动作在 UI 与 YAML 两种方式下的完整配置方法、person参数的边界行为、目标(target)选择规则,以及它与netatmo.set_persons_homenetatmo.set_camera_light等相关动作的配合方式,从而在自动化与脚本中实现基于人员在场状态的家庭安防联动。

动作定位:面向 Netatmo Indoor 摄像头的人员在场管理

在 Home Assistant 中,Netatmo 集成通过官方文档(source/_integrations/netatmo.markdown)接入 Netatmo 云服务,支持天气站、室内外摄像头、可视门铃、恒温器等设备,其ha_domainnetatmoha_integration_typehub

netatmo.set_person_away动作正是围绕Netatmo Smart Indoor(Welcome)摄像头的人脸识别与在场状态能力设计的:摄像头识别人脸后,会维护一个"谁在家、谁不在家"的人员名单,该动作允许你通过 Home Assistant 主动把某个人标记为离家。

该动作在仓库中的定义位于 source/_actions/netatmo.set_person_away.markdown,其 front matter 声明了两个关联动作:

  • netatmo.set_person_away:将某人标记为离家(本文主题);
  • netatmo.set_persons_home:将一人或多人标记为在家(见 source/_actions/netatmo.set_persons_home.markdown);
  • netatmo.set_camera_light:设置室外摄像头探照灯模式(见 source/_actions/netatmo.set_camera_light.markdown)。

三者共同构成了 Netatmo 摄像头"人员在场 + 灯光联动"的自动化基础能力。

使用场景

  • 自动离家联动:检测到全家离家(如门锁状态变化)时,将室内摄像头的人员全部标记为离家,配合摄像头事件触发更精准的安防判断;
  • 人员名单同步:家庭成员离开后,手动或通过自动化同步更新 Netatmo 摄像头的人员在场状态,避免误报"有人在家";
  • 回家迎接:配合netatmo.set_persons_home,在成员回家时将其标记为在家,并触发欢迎灯光、空调等场景。

通过 UI 添加动作(Automations & scenes)

在自动化或脚本编辑器中添加该动作的完整步骤如下(与文档中actions/ui_header.md模板一致):

  1. 进入Settings>Automations & scenes
  2. 打开现有自动化或脚本,或选择Create automation>Create new automation
  3. 若是新建自动化,在When区域添加触发条件(trigger);脚本无需触发器,脚本在被其他对象调用时运行;
  4. Then do区域选择Add action
  5. 选择要控制的对象:在By target(目标选择,见下文"目标(Targets)选择")下选择要控制的 Netatmo Indoor 摄像头;
  6. 从该目标可用的动作中选择Set person away
  7. 可选:填写要标记为离家的Person名称。留空则会将整个家标记为空(即全员离家);
  8. 选择Save保存。

UI 中的参数

UI 中的唯一可选参数如下:

参数说明是否必填
Person要标记为离家的人员姓名,必须与摄像头已识别/已知的人员完全匹配;留空则将整个家标记为空否(可选)

通过 YAML 调用动作

在 YAML 中,动作名为netatmo.set_person_away。基础示例如下(来自 source/_actions/netatmo.set_person_away.markdown 的example块):

action: netatmo.set_person_away target: entity_id: camera.living_room data: person: Bob

该示例将Bob标记为camera.living_room的离家状态。

在自动化中完整写法如下:

automation: - alias: "Mark Bob as away when the front door locks" triggers: - trigger: state entity_id: lock.front_door to: "locked" actions: - action: netatmo.set_person_away target: entity_id: camera.living_room data: person: Bob

说明:若你的 Home Assistant 版本中data下的参数名采用下划线风格,也可写作person: Bob(本文档定义的参数即为person),以本仓库 source/_actions/netatmo.set_person_away.markdown 为准。

YAML 参数详解

根据文档中的options_yaml定义:

参数类型是否必填说明
personstring要标记为离家的人员姓名,必须与摄像头已知人员匹配;省略该参数则将整个家标记为空

不提供 person 时的行为:整屋标记为空

文档"Good to know"部分明确强调了一个关键边界行为:

如果person留空,则整个家会被标记为空(全员离家),而不是只将单个人员标记为离家。

这意味着:

  • 单人参离家:必须传入与摄像头人脸库完全匹配的姓名;
  • 全员离家:直接省略person字段即可,适合"最后一人离开后触发全家离家场景"。

目标(Targets)选择

该动作必须指定目标。目标即动作作用的对象,可以指向实体、设备、区域、楼层或标签,Home Assistant 会对目标背后的所有 Netatmo 实体执行该动作(参见仓库模板 source/_includes/actions/targets.md):

  • 实体(Entity):单个具体实体,如camera.living_room
  • 设备(Device):某设备下的全部 Netatmo 实体;
  • 区域(Area):某房间/区域内的全部 Netatmo 实体;
  • 楼层(Floor):某楼层上的全部 Netatmo 实体;
  • 标签(Label):共享某标签的全部 Netatmo 实体。

同一动作中可以混用不同类型的多个目标,例如同时添加一个具体实体和一个区域,动作会对两者都执行。

立即测试:开发者工具

无需编写任何 YAML 即可验证动作效果:进入Settings>Tools>Actions(开发者工具),搜索netatmo.set_person_away,填写字段后选择Perform action,即可在真实实体上观察结果(参见 source/_includes/actions/try_it.md)。

常见问题排查

  • 姓名不匹配person名称必须与摄像头已知人员完全一致。人员需要在 Netatmo App 中添加并命名(参见netatmo.set_persons_home文档中的说明)。
  • 动作不可见/无目标可选:请确认当前 Home Assistant 实例已通过Settings>Devices & services完成 Netatmo 集成配置(ha_config_flow: true),并已添加 Indoor 摄像头实体。
  • 事件联动:若希望基于摄像头人员识别事件自动更新在场状态,可结合netatmo_eventWebhook 事件或设备触发器("Detected a person"、"Detected a person has left" 等),再调用本动作或netatmo.set_persons_home形成闭环。

与相关动作的组合实战

set_person_awayset_persons_home搭配,即可实现"离家/回家"双向状态同步:

# 回家:将 Alice、Bob 标记为在家 action: netatmo.set_persons_home target: entity_id: camera.living_room data: persons: - Alice - Bob
# 离家:不传 person,将整个家标记为空 action: netatmo.set_person_away target: entity_id: camera.living_room

两者的target结构完全一致,唯一差异是参数:set_persons_home使用必填的persons列表(类型list),而set_person_away使用可选的person字符串。若配合netatmo.set_camera_light在夜间运动检测时开启室外探照灯(见 source/_actions/netatmo.set_camera_light.markdown),即可构建一套完整的"人在家状态 + 室外灯光安防"联动体系。

总结

netatmo.set_person_away是 Netatmo 室内摄像头人员在场管理的核心动作:单个person参数即可精确标记某人离家,省略参数则整屋标记为空。掌握 UI 与 YAML 两种配置方式、目标选择规则以及与之配对的set_persons_home,你就能把 Netatmo 的人脸识别能力深度整合进自己的安防与智能场景自动化中。

【免费下载链接】home-assistant.io:blue_book: Home Assistant User documentation项目地址: https://gitcode.com/GitHub_Trending/ho/home-assistant.io

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询