Changes operator does not always detect change
-
I've had similar problems before, but now this issue has resurfaced. Using build 26011 on Docker.
As I copied one old rule as a "template" for a similar new rule, where I have multiple conditions using changes operator (from any to any, and with delay reset of 900), these conditions do not detect change in attributes. Even if I manually reset the rule, reset delay timers do not restart.
If I do a new rule from scratch, and do not copy/import anything old, the same conditions work properly. Also, if I modify copied rule's conditions (put a random number to "from" & "to" fields), then save, and after that remove those modifications, rule begins to function normally. Just editing e.g. delay reset value does not do any good in this context.
@toggledbits, I can DM logs & related rule files to you, if you just send me instructions.
-
The old rule you are copying is probably where the problem is starting from. Before making any other changes, open the JSON file (in
storage/rules) for that (old) rule and post the lines havingop: "change"in them here. -
The old rule you are copying is probably where the problem is starting from. Before making any other changes, open the JSON file (in
storage/rules) for that (old) rule and post the lines havingop: "change"in them here.@toggledbits here are the lines:
{ "id": "cond267i1qkw", "type": "entity", "data": { "entity": "mqtt>faikin_states", "attribute": "x_mqtt_daikin.comp", "op": "change", "value": [ "", "" ] }, "options": { "holdtime": 900 } }, { "id": "cond267hhvhi", "type": "entity", "data": { "entity": "mqtt>faikin_states", "attribute": "x_mqtt_daikin.consumption", "op": "change", "value": [ "", "" ] }, "options": { "holdtime": 900 } },There's actually a working condition with a change operator in the same rule, and I just realized the issue: the value field includes quotation marks, while the working condition does not.
{ "id": "cond267i2ucd", "type": "entity", "data": { "entity": "mqtt>faikin_states", "attribute": "x_mqtt_daikin.fanfreq", "op": "change", "value": [] }, "options": { "holdtime": 900 } },









