Manage conditions- have i misunderstood?

I have set up a rule where by at a set time of day the rule runs but pending conditions (temperature must be <= as show here)

however, the rule still executes regardless of what the temperature is.
What i dont understand is why this has no effect and what is its purpose.

thanks all
PS- The fix i have found is to create a "required defined expression" though i still need to understand the above.

Follow up-
i think it is explained here:

If there is another "guide for idiots" available please share with me.

The manage conditions section is just allowing you to adjust the conditions that are available for use in the rule. For them to take effect you need to use them in things like a conditional action or required expression.

1 Like

thanks @sburke781

Can anyone give an example of where you might use a "created condition" that could not be accomplished by another method.

I'm not quite sure what you meant by your question.... But here is a rule I setup earlier today, which includes a conditional action. Ignore the fact there is a duplicate condition in the Manage Conditions section, not sure what happened there.

When you create the conditional action you are prompted whether you want to use an existing condition or create a new one.

Sounds like you are looking for a “Required Expression”. You will see this as an option in the rule’s main screen. You can essentially enter that same information there.

Still taking a bit of getting my head around this. Worth noting that i can achieve the control i desire with the knowledge i already have and my system is working as intended using the required expression.

It appeared logical to me that if if i create a "condition" it means it is required in order to carry out the action. Yet (in my case) this is the function of the "required expression" and not the condition. Perhaps therefore i have no need at all for these "conditions" in my system, at least for the time being.

What would be another way of "labelling/naming" a condition to distinguish it differently from that of the rule? (for those like me who read it literally as it is named)

Again forgive my dumbness. Having it explained another way using the "idiots guide" might be what i need. thanks for your patience and understanding.

Preset Conditions available to use in Rule.

so the conditions are setting the state of devices rather than "requiring" certain conditions to be present?
ie, the "conditions" are outputs rather than inputs?

If you choose to use one, a Required Expression is like an initial filter for the trigger -- if the req'd expression is false when a trigger event occurs, that event will not actually trigger the rule.

But this same effect can (instead) be similarly accomplished by using a basic If-Then conditional statement within the rule.

Either option can be used to restrict when exactly the trigger event will actually fire the rule.

Neither option is necessarily "better" or more efficient etc etc etc than the other -- it really just boils down to personal preference on how you like to build your rules. I use both options, but I don't really have any rhyme or reason when to use one or the other - just whatever mood I'm in at the time.

The Manage Conditions area just enables you to pool and manage your rule's conditions in one place. Some rules use the same condition in multiple parts, so building it just once is helpful in those cases. Then you just keep selecting it instead of having to rebuild it multiple times w/in the rule.

Admittedly, most rules aren't that complex -- more often than not, we all just use a condition once.

Whenever I create or update a rule, I do try to remember to sweep back to the Manage Conditions area one last time to make sure everything looks good and to clear out any conditions I'm not using anymore -- just basic housekeeping stuff.


thanks everyone for sparing the time to explain. appreciated.

so, rewinding back to the first post in this thread, what would i need to do to make the statement function, as in only execute the actions if the temperature is <=6, without using the "required expression"

You would need to add the statement within an IF condition. It will be one of the available options since it has been created already.

As far as I am concerned, many new users of Rule Machine get confused with the "Managed Conditions" section of the interface. The line that states "You can create and manage Conditions used in Conditional Actions and Expressions below:" should really be changed to read:
"Below you can create and manage Conditions used in Conditional Actions and Expressions that can be added to the Action section of the rule shown above:"

It would make it a lot clearer in my opinion. Once you actually know that is what the sentence means, it doesn't matter, but for a new user you can imagine how it can be confusing.


Based on my own use, I'd be happy if the conditions were updated where they are used, not needing the dedicated Manage Conditions section at all. But I expect more advanced users or use-cases dictate a need for the feature, so can understand if it is needed for people other than myself. Perhaps if it was less prominent it would lessen the confusion people face, making it one of those things you seek out when needed, e.g. if you have a condition used in many parts of a rule, rather than new users making some of the assumptions we see come up here on the Community.


That clarifies things further.
Would it not therefore be logical to make it illegal to form a condition (as i have done in the first post) without starting it with the IF statements as (how i understand it) it would require an IF THEN to make the rule active, unless there is another reason why it is permitted.

Given my basic programming knowledge, i am aware you could add in piece of script in any code that says something like:
although not illegal, has so effect whatsoever. Would this be a similar comparison to my original statement?
if (outside_weather <= 6) //does nothing on its own

thanks again for all the comments, everyone

Perhaps a way to approach this would be to tag "unused" conditions... I also note that conditions used in Actions are seen as a separate list to those use in Required Expressions.... Just a side note...

1 Like