Home Assistant Insteon 集成指南:使用 X10 All Units Off 动作批量关闭 X10 设备
Home Assistant Insteon 集成指南使用 X10 All Units Off 动作批量关闭 X10 设备【免费下载链接】home-assistant.io:blue_book: Home Assistant User documentation项目地址: https://gitcode.com/GitHub_Trending/ho/home-assistant.io本文基于 Home Assistant 官方文档仓库中 insteon.x10_all_units_off 动作文档 编写系统讲解如何在 Home Assistant 中通过insteon.x10_all_units_off动作向某个 X10 房代码house code下的全部 X10 设备发送All units off全部关闭命令。读完本文你将掌握该动作的 UI 配置步骤与 YAML 调用方式、housecode参数的取值与含义以及如何将其融入“离家”或“睡前”自动化场景。动作概述一条命令关闭整个房代码下的所有 X10 设备X10 all units off动作action会向使用指定房代码的所有 X10 设备发送 X10All units off命令。它的价值在于当你的 Insteon 网络中混有 X10 设备时无需逐个设备操作只需指定一个房代码即可将挂在该房代码下的全部 X10 设备一次性关断。典型应用场景包括离家自动化离开家时关闭该房代码下的所有 X10 负载防止遗忘睡前自动化睡前一键关闭所有 X10 设备而无需逐一列出设备实体应急总关在脚本或手动触发中快速批量断电。该动作在 Home Assistant 中的完整 action 名称为insteon.x10_all_units_off属于insteon域其 frontmatter 中的描述为 “Sends an X10 All units off command for a house code.”动作文档。前置条件Insteon 集成与 X10 设备insteon.*系列动作由 Insteon 集成 提供。该集成用于将 Insteon 网络接入 Home Assistant支持本地控制并在以下硬件上经过测试集成文档USB / 串口 PowerLinc ModemPLM如 2413U、2448A7、2413S、2412S 等型号需接入 Home Assistant 宿主机并记录串口路径Linux 下如/dev/ttyUSB0Hub 设备2242Hub v1与 2245Hub v2需在路由器上为其保留固定 IPv1 使用端口 9761v2 使用端口 25105。在使用 X10 相关动作前需要注意Insteon 设备必须先与调制解调器完成链接linking之后才会在 Home Assistant 中出现集成文档首次接入时集成会执行自动发现autodiscovery每台设备最多可能需要约 60 秒若设备未被识别可手动触发设备如按下按钮强制其向调制解调器发送消息集成文档X10 设备同样需要位于 Insteon 网络中、并且能被集成识别才能响应由insteon.x10_all_units_off发出的 X10 命令。通过 UI 使用该动作Automations scenes在自动化或脚本中发送 X10 All units off 命令按照以下步骤操作动作文档进入设置Settings 自动化与场景Automations scenes打开现有的自动化或脚本或选择创建自动化Create automation 新建自动化Create new automation如果是新建自动化在当When部分添加触发器脚本不需要触发器——脚本在别处被调用时才运行在然后执行Then do部分选择添加动作Add action在搜索框中搜索并选择Insteon: X10 all units off选择房代码Housecode点击保存Save。UI 选项在 UI 中该动作只有一个选项动作文档选项说明是否必填HousecodeX10 房代码取值范围为a到p是关于 Targets 的说明该动作不支持 targets。在 UI 中不会提示你选择区域area、设备device、实体entity或标签label动作文档。这符合该动作的语义——它的作用对象不是某个具体实体而是某个房代码下的整组 X10 设备。通过 YAML 使用该动作如果你直接编写 YAML或者想确切了解 Home Assistant 在底层做了什么可以参考下面的技术参考。在 YAML 中该动作的引用名称为insteon.x10_all_units_off基础示例如下动作文档action: insteon.x10_all_units_off data: housecode: a以上 YAML 会向房代码a下的所有 X10 设备发送All units off命令。YAML 选项字段说明必填类型housecodeX10 房代码取值范围a到p是stringhousecode是唯一参数且必须提供。房代码是 X10 协议中的地址体系概念X10 协议通过“房代码A–P 单元代码1–16”组合为设备编址其中房代码用于划分不同的设备分组而All units off属于面向整个房代码的广播式命令——只要房代码匹配该房代码下所有 X10 设备都会收到关闭指令这也是该动作只需要housecode一个参数的原因。与关联动作配合构建完整的 X10 批量控制方案该动作在文档中声明了两个关联动作动作文档三者配合可以覆盖 X10 批量控制的主要场景动作作用insteon.x10_all_lights_on向指定房代码下的所有 X10 灯光发送All lights on命令适合“到家”自动化insteon.x10_all_lights_off向指定房代码下的所有 X10 灯光发送All lights off命令insteon.x10_all_units_off本文主题向指定房代码下的所有 X10 设备不仅限于灯光发送All units off命令三者的 UI 操作流程与 YAML 结构完全一致参数同为必填的housecodea–p。区别在于作用范围all_lights_*仅作用于灯光设备而all_units_off作用于房代码下的全部 X10 单元。例如“离家”自动化可以同时关闭灯与所有其他 X10 负载automation: - alias: Leaving home - X10 all off triggers: - trigger: state entity_id: binary_sensor.front_door to: off actions: - action: insteon.x10_all_lights_off data: housecode: a - action: insteon.x10_all_units_off data: housecode: a注意事项与常见问题房代码必须合法housecode只能取a到p不区分大小写含义上对应 X10 的 A–P 房代码超出范围的取值无法正确对应 X10 地址体系不针对具体实体该动作没有 targets 概念不要尝试为其指定entity_id或target字段仅影响匹配房代码的设备其他房代码下的 X10 设备不受影响Insteon非 X10设备也不属于该命令的作用对象联动 Insteon 场景如果需要控制的是 Insteon 场景scene应改用 Scene on / Scene off 动作它们接收 Insteon 组号或场景号与 X10 房代码动作是两套不同的控制路径。通过本文介绍的动作你可以在不维护庞大实体列表的情况下把 X10 设备群作为“一组”来统一管理让离家、睡前的批量断电流程变得简单可靠。【免费下载链接】home-assistant.io:blue_book: Home Assistant User documentation项目地址: https://gitcode.com/GitHub_Trending/ho/home-assistant.io创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考