Home Assistant 中清除 Modern Forms 风扇睡眠定时器:action 使用与自动化实战指南
Home Assistant 中清除 Modern Forms 风扇睡眠定时器action 使用与自动化实战指南【免费下载链接】home-assistant.io:blue_book: Home Assistant User documentation项目地址: https://gitcode.com/GitHub_Trending/ho/home-assistant.io导读本文围绕 Home Assistant 中 Modern Forms 智能风扇集成的核心动作modern_forms.clear_fan_sleep_timer完整讲解该动作的语义、UI 可视化配置、YAML 调用方式、目标target选择机制及其底层实现原理。阅读后你将能够在自动化与脚本中精准地取消风扇睡眠倒计时并结合 NTP 时钟机制与状态实体构建可靠的夜间风扇控制流程。动作语义清除不等于关闭modern_forms.clear_fan_sleep_timer用于清除 Modern Forms 风扇上正在倒计时的睡眠定时器。关键语义是清除定时器并不会关闭风扇它只取消一个尚未到期的倒计时任务。这与配对动作modern_forms.set_fan_sleep_timer定时到期后自动关闭风扇形成互补设置动作启动倒计时清除动作撤销倒计时。从 modern_forms.clear_fan_sleep_timer.markdown 的related_actions字段可以看到与它关联的动作还包括灯侧的同类操作构成完整的定时器控制族动作作用目标域modern_forms.set_fan_sleep_timer设置风扇睡眠定时器到期后风扇自动关闭fanmodern_forms.clear_fan_sleep_timer清除风扇睡眠定时器仅取消倒计时、不关闭风扇fanmodern_forms.set_light_sleep_timer设置风扇灯睡眠定时器到期后灯自动关闭lightmodern_forms.clear_light_sleep_timer清除风扇灯睡眠定时器仅取消倒计时、不关闭灯lightModern Forms 风扇与灯各自拥有相互独立的睡眠定时器可分别设置与清除互不影响。通过 UI 清除风扇睡眠定时器如果你习惯在界面中可视化构建自动化与脚本Home Assistant 会引导你一步步完成操作无需任何 YAML 知识见 ui_header.md进入设置自动化与场景。打开现有的自动化或脚本或选择创建自动化创建新自动化。若在搭建新自动化需在When当…时部分添加一个触发器脚本不需要触发器它们在被其他自动化调用时运行。在Then do则执行部分选择添加动作。选择要控制的目标在目标Targets下选择你的 Modern Forms 风扇。从该目标显示的动作列表中选择Modern Forms: Clear fan sleep timer。选择保存。UI 中的选项该动作在 UI 中没有额外的选项它只要求指定目标风扇不需要输入任何参数因为清除本身是一个无参数操作。通过 YAML 清除风扇睡眠定时器如果你直接编写 YAML或希望确切了解 Home Assistant 在底层做了什么请参考动作的技术字段定义见 yaml_header.md。YAML 中的基本示例取自原文档action: modern_forms.clear_fan_sleep_timer target: entity_id: fan.bedroom该动作必须指定目标target且没有任何数据字段。目标即动作的作用对象可以指向单个实体、设备、区域、楼层或标签Home Assistant 会对该目标背后每一个匹配的fan域实体执行此动作。动作目标Targets详解根据 targets.mddomain 为fan可选的目标类型如下实体Entity某个具体的fan域实体例如fan.bedroom。设备Device该设备下属的所有fan域实体。区域Area某个房间/区域内所有的fan域实体。楼层Floor某个楼层上所有的fan域实体。标签Label共享同一标签的所有fan域实体。你也可以在同一个动作中组合不同类型的目标例如同时指定一个具体实体和一个区域动作会一次性作用于两者。实战设置与清除的组合自动化清除动作最常见的实战场景是与modern_forms.set_fan_sleep_timer配合实现条件化睡眠定时。例如每晚定时开启风扇倒计时帮助入睡当房间温度骤降、不再需要强制通风时主动清除定时让风扇保持运行。一个完整的 YAML 自动化示例automation: # 每晚 22:30 为卧室风扇设置 60 分钟睡眠定时入睡后自动关闭 - alias: Bedroom fan sleep timer triggers: - trigger: time at: 22:30:00 actions: - action: modern_forms.set_fan_sleep_timer target: entity_id: fan.bedroom data: sleep_time: 60 # 若深夜房间温度过低则取消风扇定时让风扇继续运行 - alias: Cancel fan sleep timer when cold triggers: - trigger: numeric_state entity_id: sensor.bedroom_temperature below: 18 conditions: - condition: state entity_id: fan.bedroom state: on actions: - action: modern_forms.clear_fan_sleep_timer target: entity_id: fan.bedroom注意set_fan_sleep_timer的sleep_time字段为必填的 integer 类型取值范围1–1440 分钟即最长一天见 set_fan_sleep_timer.markdown 的 YAML 选项定义。而清除动作无需任何数据字段——它只表达取消当前倒计时这一意图。立即试跑无需写一行 YAML若想快速验证该动作的效果可打开设置工具动作Actions搜索modern_forms.clear_fan_sleep_timer选择目标实体后点击执行动作Perform action即可在真实实体上观察结果见 try_it.md。底层机制与使用前提定时器状态实体Modern Forms 集成modern_forms.markdownHome Assistant 2021.7 版本引入ha_iot_class为 Local Polling 本地轮询支持配置流与 zeroconf 自动发现围绕睡眠定时器提供了可观测实体二进制传感器fan sleep timer active status风扇睡眠定时器激活状态、light sleep timer active status灯睡眠定时器激活状态——用于判断定时器当前是否在倒计时。传感器fan sleep timer time expiring风扇睡眠定时器剩余时间、light sleep timer time expiring灯睡眠定时器剩余时间——用于读取倒计时剩余时长。利用这些实体可以在自动化中加入仅当定时器激活时才清除的条件判断避免对未激活的定时器做无效调用。NTP 前提条件集成文档中有明确提示Modern Forms 风扇通过 NTPpool.ntp.org设置内部时钟并据此判断睡眠定时器是否到期。因此睡眠定时器仅在风扇能够访问互联网 NTP 服务器时才正常工作。若想阻断风扇的云访问可仅放行出站 NTPUDP 123 端口睡眠定时器功能依然可用——这是本动作能够可靠生效的网络前提。硬件型号差异未安装灯单元的风扇型号不会出现 Light 实体及相关动作clear_light_sleep_timer也无从谈起。带 breeze 硬件自然风的型号支持Breeze预设模式与 breeze intensity 数值实体范围 1–3该机制与睡眠定时器相互独立关闭风扇不会清除预设模式。排查指南若清除动作未生效或定时器行为异常可参考 stuck.md 的通用思路按顺序排查确认目标正确entity_id是否为实际的fan.*实体可在设置 设备与服务 Modern Forms中核对设备下的实体 ID。确认网络可达验证风扇能否访问pool.ntp.orgUDP 123因为定时器到期判断依赖 NTP 时钟。检查状态实体通过fan sleep timer time expiring传感器确认定时器确实处于激活状态若已到期或已被清除动作调用不会产生可见变化。查看日志在设置 系统 日志中检查 Modern Forms 相关错误条目必要时携带所调用动作与预期行为向社区求助。延伸阅读设置风扇睡眠定时器本动作的配对操作含sleep_time参数完整说明与夜间自动化示例。清除灯睡眠定时器针对风扇灯的同语义动作目标域为light。Modern Forms 集成总览涵盖风扇、灯、二进制传感器、传感器、开关Away 模式、自适应学习等全部功能实体与接入方式。【免费下载链接】home-assistant.io:blue_book: Home Assistant User documentation项目地址: https://gitcode.com/GitHub_Trending/ho/home-assistant.io创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考