nymea/nymea-app

Incompatible parameters visible during rule creation

Opened this issue · 2 comments

I was making a rule, and when I reached the "execute those actions" part this is the flow I got:

  • Execute an action on an entire kind of things
    • Lights
      • Turn Lights on or off ->

And inside I had 2 parameters, one of which makes the rule incompatible.

  • Use static value as parameter
  • Use event parameter

EventParameter is incompatible with this, but given as an option. Also the error message that you get is really vague and does not help much.

Suggestion to fix - either remove as an option when it's not compatible with the type of rule, or add better error messages. The nymead log correctly reports this rule as incompatible and adds this useful line:
Rule not consistent. The exitActions will never be executed if the rule contains an eventDescriptor but no stateEvaluator.

I'd need to know what the event descriptor was you had in that rule

The event descriptor gave me an option that caused the issue.
To be precise, it allowed me to "Turn Lights on or off" and instead of passing a static value as parameter, it allowed me to use event parameter - City Name - humidity changed - humidity .
The rule is based on tracking humidity, so I guess that's why it was allowed. My suggestion would be to disable anything but static values to devices that are Lights category.