『瀚思彼岸』» 智能家居技术论坛

 找回密码
 立即注册
查看: 4860|回复: 7

[求助] 如何实现状态的不同先后顺序 来触发不同的事件

[复制链接]

18

主题

183

帖子

782

积分

高级会员

Rank: 4

积分
782
金钱
599
HASS币
0
发表于 2018-3-14 15:39:24 | 显示全部楼层 |阅读模式
比如回来的时候  先触发门窗传感器   再是人体传感器  执行语音  欢迎回家
                  如果  先触发人体传感器   再触发门窗传感器   执行语音  慢走
谢谢各位指点
回复

使用道具 举报

1

主题

170

帖子

1161

积分

金牌会员

Rank: 6Rank: 6

积分
1161
金钱
991
HASS币
0
发表于 2018-3-14 19:53:02 | 显示全部楼层
用trigger+condition,分别触发两个传感器

不过就怕人体传感器误报
嗯哼,有论坛签名了
回复

使用道具 举报

123

主题

4661

帖子

1万

积分

管理员

囧死

Rank: 9Rank: 9Rank: 9

积分
16412
金钱
11666
HASS币
45
发表于 2018-3-14 20:30:59 | 显示全部楼层
楼上正解,哪个先就把哪个设为condition
回复

使用道具 举报

18

主题

183

帖子

782

积分

高级会员

Rank: 4

积分
782
金钱
599
HASS币
0
 楼主| 发表于 2018-3-14 22:17:47 | 显示全部楼层
Jones 发表于 2018-3-14 20:30
楼上正解,哪个先就把哪个设为condition

感谢各位指导  基本ok了  
交上作业
- alias: chumen
  hide_entity: false
  initial_state: true
  trigger:
    - platform: state
      entity_id: binary_sensor.door_window_sensor_158d0002027753
      from: 'off'
      to: 'on'
  condition:
    condition: state
    entity_id: binary_sensor.motion_sensor_158d00022320dc
    state: 'on'
  action:
    - service: tts.baidu_say
      data_template:
        entity_id: media_player.gstreamer
        message: "慢走"
   
- alias: jinmen
  hide_entity: false
  initial_state: true
  trigger:
    - platform: state
      entity_id: binary_sensor.motion_sensor_158d00022320dc
      from: 'off'
      to: 'on'
  condition:
    condition: state
    entity_id: binary_sensor.door_window_sensor_158d0002027753
    state: 'on'
  action:
    - service: tts.baidu_say
      data_template:
        entity_id: media_player.gstreamer
        message: "欢迎回来"

评分

参与人数 1金钱 +10 收起 理由
+ 10 厉害了

查看全部评分

回复

使用道具 举报

25

主题

416

帖子

3027

积分

元老级技术达人

积分
3027
金钱
2601
HASS币
40
发表于 2018-3-15 16:30:22 | 显示全部楼层
感谢研究成果
回复

使用道具 举报

1

主题

81

帖子

257

积分

论坛分享达人

积分
257
金钱
176
HASS币
10
发表于 2019-4-15 20:50:00 | 显示全部楼层
Jones 发表于 2018-3-14 20:30
楼上正解,哪个先就把哪个设为condition

J大可以详细说吗? 我的疑问在于
trigger - describle events that should trigger the automation rule
condition - optional test that can limit an automation rule to ....(来自HA的doc)

也就是说, trigger 是真正激发规则的因素
---
您说哪个在后就把哪个作为trigger (是否理解为, 这样保证两个条件 trigger_condition & condition_condition)都是true? 我的疑问(进门模式):
---|初始|进门|关门|离开门|
门窗sen  off  |on  |off  |  off |
运动sen  off  |off  |off  |on   |

进门时候, 门窗sensor先(因此作为condition)
下方yaml
在trigger被激发的时候,binary_sensor.motion_sensor_158d00022320dc (from off to on)
这时候(**关门->离开**)这个时刻, 这时候门窗(我们选中的condition)实际上是off, 下方脚本
```
condition:
    condition: state
    entity_id: binary_sensor.door_window_sensor_158d0002027753
    state: 'on'
```
是不满足的啊, 怎么就能成功呢?
回复

使用道具 举报

1

主题

81

帖子

257

积分

论坛分享达人

积分
257
金钱
176
HASS币
10
发表于 2019-4-15 21:07:53 | 显示全部楼层
tomassam 发表于 2019-4-15 20:50
J大可以详细说吗? 我的疑问在于
trigger - describle events that should trigger the automation rule ...

继续反馈, motion sensor放置在door sensor 大概1米5处, 两者从初始off 先后变成on的时间差不超过1s。 楼主的automation yaml 未能实现说明功能。
回复

使用道具 举报

1

主题

81

帖子

257

积分

论坛分享达人

积分
257
金钱
176
HASS币
10
发表于 2019-4-15 21:15:29 | 显示全部楼层
tomassam 发表于 2019-4-15 21:07
继续反馈, motion sensor放置在door sensor 大概1米5处, 两者从初始off 先后变成on的时间差不超过1s。  ...

继续补充, 楼主的脚本只有在
```门尚且没有关闭```
motion_sensor探测到人体才是有效的(建议大家画画信号时序图就明白了, 先后的顺序我认为是存在争议的(基于模糊的功能描述))
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|Hassbian

GMT+8, 2024-11-28 04:02 , Processed in 0.640667 second(s), 31 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表