georgewu57
发表于 2018-11-19 16:57:39
natic 发表于 2018-11-19 15:21
官方文档很详细,谷歌搜一下就有了
官方文档看了,
# If given, will trigger when condition has been for X time.
意思是:如果触发条件达到超过X的时间,然后执行动作
那如果我trigger的条件短时间内发了很多次,他是以第一次触发为准呢,还是以最后一次触发为准呢?
下班先回家试试!
georgewu57
发表于 2018-11-19 17:01:24
natic 发表于 2018-11-19 15:21
官方文档很详细,谷歌搜一下就有了
再问一下,for后面的时间参数是不是就是为了确认短时间内的多此触发而存在的?:dizzy:
natic
发表于 2018-11-20 11:08:26
georgewu57 发表于 2018-11-19 17:01
再问一下,for后面的时间参数是不是就是为了确认短时间内的多此触发而存在的? ...
你的理解没错,for就是说这个状态持续了多长时间才进行操作,比如没人持续5分钟才关灯
georgewu57
发表于 2018-11-20 16:04:34
natic 发表于 2018-11-20 11:08
你的理解没错,for就是说这个状态持续了多长时间才进行操作,比如没人持续5分钟才关灯 ...
感谢,已经搞定了!:hug:
alei643
发表于 2018-11-21 10:57:30
本帖最后由 alei643 于 2018-11-21 11:09 编辑
##### 我把sonoff的命令贴在这里,供大家参考,使用sonoff的rule规则优势就是,万一HA或者NodeRed之类的控制中枢出问题了,也不会影响自动化的流程,并且指令在自身模块运行,肯定比网络上来的快啊,就是命令稍微繁琐。另外rule规则的优先级高,比如使用tasmota的固件接入人体传感器,需要占用两个GPIO,一个作为switch,另外一个作为relay2。改用rule规则,仅用一个switch的GPIO就可以了。不多说的,感兴趣可以自己去挖掘
```
switchmode1 1//本条命令将按键模式修改为跟随模式
```
```
rule1 on //开启规则1
```
```
rule2 on //开启规则2
```
```
rule1 on Switch1#state=1 do backlog event checksunrise=%time%; event checksunset=%time% endon on event#checksunrise<%sunrise% do backlog power1 1; ruletimer1 0 endon on event#checksunset>%sunset% do backlog power1 1; ruletimer1 0 endon //将人体传感器的触发动作限定在日落和日出时间内,触发时,清空定时器
```
```
rule2 on switch1#state=0 do ruletimer1 60 endon on rules#timer=1 do power1 0 endon //无人时,倒计时60秒关闭输出
```
##### 其他可能需要使用到的命令
```
timezone 8//将当前时区设定为第8时区
LatitudeXXX.XXX//设置纬度;日出日落时间是根据经纬度自动计算的
Longitude XXX.XXX//设置经度
```
wshc1216
发表于 2018-11-23 11:56:23
我在淘宝上看的sonoff好像都不能刷固件了,你们去哪找的啊
appleftg
发表于 2019-1-11 22:35:51
alei643 发表于 2018-11-21 10:57
##### 我把sonoff的命令贴在这里,供大家参考,使用sonoff的rule规则优势就是,万一HA或者NodeRed之类 ...
学习学习
doa2011
发表于 2019-1-12 01:19:44
留名学习!!!!
hugh_jie
发表于 2019-9-18 22:16:08
学习一下
jyz_0501
发表于 2020-3-15 20:12:06
延时时间内 再次触发的话不是会一直输出高电平吗,而且会自动延长 延时时间。设置为重复模式 的话还有这种情况?