Closed riker65 closed 4 years ago
even having () around every comparison no change
`rule3 on system#boot do var3 B3.28 endon on Time#Minute|5 do backlog publish tele/WP/%topic%/THSim5 HSich-S%VAR1%-Max%MEM9%C-%timestamp%;var,mem endon on Var16 do IF ( (%VAR11% < %Mem8% ) AND (%Var16% == Tr0) ) var6 i-11; publish tele/WP/%topic%/I-11 {I-v11-%var11%-v16-%var16%}; publish cmnd/TA_WP_H_P1_P2_Lolin1/power4 1 ELSE var6 else-%var2% ENDIF endon on Var16 do IF (( %VAR11% < %Mem8% )AND (%Var16% == Tr0 )) event TR=ON ENDIF endon on Var16 do IF ( (%VAR11% < %Mem8% )AND (%Var16% == Tr0 )) var6 TR_ON ENDIF endon on Var16 do IF (( %VAR11% < %Mem8%) AND (%Var16% == Tr0) ) var7 i-12 ; var8 i-12 ENDIF endon
on event#TR=ON do publish cmnd/TA_WP_H_P1_P2_Lolin1/power4 1 endon`
10:19:48 CMD: Group 0, Index 1, Command "IF", Data "(( 31.1 < 55) AND (Tr1 == Tr0) ) var7 i-12 var8 i-12 ENDIF"
10:19:48 MQT: stat/TA_WP_ESP0143/RESULT = {"If":"Done"}
10:19:48 SRC: Backlog
10:19:48 CMD: Group 0, Index 7, Command "VAR", Data "i-12"
10:19:48 MQT: stat/TA_WP_ESP0143/RESULT = {"Var7":"i-12"}
10:19:48 SRC: Backlog
10:19:48 CMD: Group 0, Index 8, Command "VAR", Data "i-12"
10:19:48 MQT: stat/TA_WP_ESP0143/RESULT = {"Var8":"i-12"}
10:19:49 SRC: Backlog
10:19:49 CMD: Group 0, Index 6, Command "VAR", Data "TR_ON"
10:19:49 MQT: stat/TA_WP_ESP0143/RESULT = {"Var6":"TR_ON"}
looks solved hat to use = instead of == for text comparison
please check if
(
should be
(
PROBLEM DESCRIPTION
A clear and concise description of what the problem is.
if conditions are not checked properly. triggering every time even condition not met Fullrules 8.4.0.1
REQUESTED INFORMATION
Make sure your have performed every step and checked the applicable boxes before submitting your issue. Thank you!
Backlog Template; Module; GPIO 255
:09:59:03 RUL: VAR16 performs "IF (( 46.8 < 55) AND (Tr1 == Tr0) ) var7 i-12 ; var8 i-12 ENDIF" 09:59:03 MQT: stat/TA_WP_ESP0143/RESULT = {"If":"Done"} 09:59:03 MQT: stat/TA_WP_ESP0143/RESULT = {"Var7":"i-12"} 09:59:03 MQT: stat/TA_WP_ESP0143/RESULT = {"Var8":"i-12"}
Rules output here: 10:01:01 RUL: Rule3 on system#boot do var3 B3.26 endon on Time#Minute|5 do backlog publish tele/WP/%topic%/THSim5 HSich-S%VAR1%-Max%MEM9%C-%timestamp%;var,mem endon on Var16 do IF ( %VAR11% < %Mem8% AND %Var16% == Tr0 ) var6 i-11; publish tele/WP/%topic%/I-11 I-v11-%var11%-v16-%var16%; publish cmnd/TA_WP_H_P1_P2_Lolin1/power4 1 ELSE var6 else-%var2% ENDIF endon on Var16 do IF ( %VAR11% < %Mem8% AND %Var16% == Tr0 ) event TR=ON ENDIF endon on Var16 do IF ( %VAR11% < %Mem8% AND %Var16% == Tr0 ) 10:01:01 RUL: Rule3 +var6 TR_ON ENDIF endon on Var16 do IF (( %VAR11% < %Mem8%) AND (%Var16% == Tr0) ) var7 i-12 ; var8 i-12 ENDIF endon on event#TR=ON do publish cmnd/TA_WP_H_P1_P2_Lolin1/power4 1 endon 10:01:01 MQT:
STATUS 0 output here: 10:14:21 CMD: status0 10:14:21 MQT: stat/TA_WP_ESP0143/STATUS = {"Status":{"Module":0,"DeviceName":"TA_WP_ESP0143","FriendlyName":["TA_WP_ESP0143","Tasmota2"],"Topic":"TA_WP_ESP0143","ButtonTopic":"0","Power":1,"PowerOnState":1,"LedState":1,"LedMask":"FFFF","SaveData":4,"SaveState":1,"SwitchTopic":"0","SwitchMode":[0,0,0,0,0,0,0,0],"ButtonRetain":0,"SwitchRetain":0,"SensorRetain":0,"PowerRetain":0}} 10:14
Console output here: 10:15:01 MQT: stat/TA_WP_ESP0143/RESULT = {"If":"Done"} 10:15:01 RUL: VAR16 performs "IF (( 32.8 < 55) AND (Tr1 == Tr0) ) var7 i-12 ; var8 i-12 ENDIF" 10:15:01 SRC: Rule 10:15:01 CMD: Group 0, Index 1, Command "IF", Data "(( 32.8 < 55) AND (Tr1 == Tr0) ) var7 i-12 var8 i-12 ENDIF" 10:15:01 MQT: stat/TA_WP_ESP0143/RESULT = {"If":"Done"} 10:15:01 SRC: Backlog 10:15:01 CMD: Group 0, Index 7, Command "VAR", Data "i-12" 10:15:01 MQT: stat/TA_WP_ESP0143/RESULT = {"Var7":"i-12"} 10:15:01 SRC: Backlog 10:15:01 CMD: Group 0, Index 8, Command "VAR", Data "i-12" 10:15:01 MQT: stat/TA_WP_ESP0143/RESULT = {"Var8":"i-12"} 10:15:03 MQT: stat/TA_WP_ESP0143/RESULT = {"If":"Done"} 10:15:03 RUL: VAR16 performs "IF ( 32.8 < 55 AND Tr1 == Tr0 ) var6 i-11; publish tele/WP/TA_WP_ESP0143/I-11 I-v11-32.8-v16-Tr1; publish cmnd/TA_WP_H_P1_P2_Lolin1/power4 1 ELSE var6 else-B2.46 ENDIF" 10:15:03 SRC: Rule 10:15:03 CMD: Group 0, Index 1, Command "IF", Data "( 32.8 < 55 AND Tr1 == Tr0 ) var6 i-11 publish tele/WP/TA_WP_ESP0143/I-11 I-v11-32.8-v16-Tr1 publish cmnd/TA_WP_H_P1_P2_Lolin1/power4 1 ELSE var6 else-B2.46 ENDIF" 10:15:03 MQT: stat/TA_WP_ESP0143/RESULT = {"If":"Done"} 10:15:03 RUL: VAR16 performs "IF ( 32.8 < 55 AND Tr1 == Tr0 ) event TR=ON ENDIF" 10:15:03 SRC: Rule 10:15:03 CMD: Group 0, Index 1, Command "IF", Data "( 32.8 < 55 AND Tr1 == Tr0 ) event TR=ON ENDIF" 10:15:03 MQT: stat/TA_WP_ESP0143/RESULT = {"If":"Done"} 10:15:03 RUL: VAR16 performs "IF ( 32.8 < 55 AND Tr1 == Tr0 ) var6 TR_ON ENDIF" 10:15:03 SRC: Rule 10:15:03 CMD: Group 0, Index 1, Command "IF", Data "( 32.8 < 55 AND Tr1 == Tr0 ) var6 TR_ON ENDIF" 10:15:03 MQT: stat/TA_WP_ESP0143/RESULT = {"If":"Done"} 10:15:03 RUL: VAR16 performs "IF (( 32.8 < 55) AND (Tr1 == Tr0) ) var7 i-12 ; var8 i-12 ENDIF" 10:15:03 SRC: Rule 10:15:03 CMD: Group 0, Index 1, Command "IF", Data "(( 32.8 < 55) AND (Tr1 == Tr0) ) var7 i-12 var8 i-12 ENDIF" 10:15:03 MQT: stat/TA_WP_ESP0143/RESULT = {"If":"Done"} 10:15:03 SRC: Backlog 10:15:03 CMD: Group 0, Index 7, Command "VAR", Data "i-12" 10:15:03 MQT: stat/TA_WP_ESP0143/RESULT = {"Var7":"i-12"} 10:15:03 SRC: Backlog 10:15:03 CMD: Group 0, Index 8, Command "VAR", Data "i-12" 10:15:04 MQT: stat/TA_WP_ESP0143/RESULT = {"Var8":"i-12"} 10:15:04 SRC: Backlog 10:15:04 CMD: Group 0, Index 6, Command "VAR", Data "TR_ON" 10:15:04 MQT: stat/TA_WP_ESP0143/RESULT = {"Var6":"TR_ON"} 10:15:04 SRC: Backlog 10:15:04 CMD: Group 0, Index 1, Command "EVENT", Data "TR=ON" 10:15:04 MQT: stat/TA_WP_ESP0143/RESULT = {"Event":"Done"} 10:15:04 RUL: EVENT#TR=ON performs "publish cmnd/TA_WP_H_P1_P2_Lolin1/power4 1" 10:15:04 SRC: Rule 10:15:04 CMD: Group 0, Index 1, Command "PUBLISH", Data "cmnd/TA_WP_H_P1_P2_Lolin1/power4 1" 10:15:04 MQT: cmnd/TA_WP_H_P1_P2_Lolin1/power4 = 1 10:15:04 SRC: Backlog 10:15:04 CMD: Group 0, Index 6, Command "VAR", Data "i-11" 10:15:04 MQT: stat/TA_WP_ESP0143/RESULT = {"Var6":"i-11"} 10:15:04 SRC: Backlog 10:15:04 CMD: Group 0, Index 1, Command "PUBLISH", Data "tele/WP/TA_WP_ESP0143/I-11 I-v11-32.8-v16-Tr1" 10:15:04 MQT: tele/WP/TA_WP_ESP0143/I-11 = I-v11-32.8-v16-Tr1 10:15:05 SRC: Backlog 10:15:05 CMD: Group 0, Index 1, Command "PUBLISH", Data "cmnd/TA_WP_H_P1_P2_Lolin1/power4 1" 10:15:05 MQT: cmnd/TA_WP_H_P1_P2_Lolin1/power4 = 1 10:15:05 SRC: Backlog 10:15:05 CMD: Group 0, Index 7, Command "VAR", Data "i-12" 10:15:05 MQT: stat/TA_WP_ESP0143/RESULT = {"Var7":"i-12"} 10:15:05 SRC: Backlog 10:15:05 CMD: Group 0, Index 8, Command "VAR", Data "i-12" 10:15:05 MQT: stat/TA_WP_ESP0143/RESULT = {"Var8":"i-12"} 10:15:05 SRC: Backlog 10:15:05 CMD: Group 0, Index 6, Command "VAR", Data "TR_ON" 10:15:05 MQT: stat/TA_WP_ESP0143/RESULT = {"Var6":"TR_ON"} 10:15:06 SRC: Backlog 10:15:06 CMD: Group 0, Index 1, Command "EVENT", Data "TR=ON" 10:15:06 MQT: stat/TA_WP_ESP0143/RESULT = {"Event":"Done"} 10:15:06 RUL: EVENT#TR=ON performs "publish cmnd/TA_WP_H_P1_P2_Lolin1/power4 1" 10:15:06 SRC: Rule
TO REPRODUCE
Steps to reproduce the behavior:
EXPECTED BEHAVIOUR
A clear and concise description of what you expected to happen.
if statement properly checked and Command "IF", Data "(( 32.8 < 55) AND (Tr1 == Tr0) ) will not trigger !!
SCREENSHOTS
If applicable, add screenshots to help explain your problem.
ADDITIONAL CONTEXT
Add any other context about the problem here.
(Please, remember to close the issue when the problem has been addressed)