求助 如何判断客厅没亮灯
使用场景是这样的,回家开门之后,判断客厅有没有亮灯,没亮灯就打开灯因为灯比较多,用多个current state一盏一盏的判断有的时候比较慢,后来就另外添加了一个自定义sensor的节点来记录开灯的数量
这样设置判断的速度是很快的,但是有的时候统计数量会出错,导致不能正常工作
有什么好的方法来判断一个区域是否有灯亮着
以下是目前在用的,只是统计开灯数量会出错
本帖最后由 sctale 于 2023-4-1 21:20 编辑
我目前是给每个区域的灯建了个group,这样比较方便。这个同样适用于一堆传感器一起判断。
sensor:
- platform: template
sensors:
current_light_on:
value_template: >-
{% set light = [
states.light.door,
states.light.aisle,
states.light.balcony,
states.light.bathroom,
states.light.bedroom_backlight,
states.light.bedroom_main,
states.light.diningroom_backlight,
states.light.diningroom_spotlight,
states.light.livingroom_main,
states.light.second_bedroom,
] %}
{% set light_on = light | selectattr('state','eq','on') | list %}
{{light_on | length}} HA里自定义一个传感器
- platform: template
sensors:
number_lights_on: # 开灯数量统计
unique_id: "number_lights_on"
friendly_name: "开灯数量"
value_template: >-
{{ states.switch
| selectattr('state', 'eq', 'on')
| selectattr('attributes.friendly_name', 'in', ['客厅灯1','客厅灯2','客厅灯3'])
| list | count }}
客厅有几个灯,按它们的名称依次替换到['客厅灯1','客厅灯2','客厅灯3']数组里,NR里就读取sensor.number_lights_on进行判断就行了 用 get entities 节点 用二楼的方法完美实现我的需求,由于太过小白,其他几位的方法不会试验,感谢各位的解答 sctale 发表于 2023-4-1 21:06
我目前是给每个区域的灯建了个group,这样比较方便。这个同样适用于一堆传感器一起判断。
...
你好兄弟,能否贴一下完整的代码
页:
[1]