Editing Expressions with Parenthesis (Double Operator Error)

Ah OK. Makes perfect sense.
When I had that issue I went into edit, selected the expression, erased it and re-input it and it took OK.
I know this is far from ideal but have you tried that?

Reinput it with ( )?

That's exactly what I was thinking. My endpoint looks exactly the same except it's from the maker API and instead of "trigger" I have a command I've built into the driver. Throwing that into %value% would be perfect. Then you can always use the token function to parse it out if you wanted to. Sounds like it would work perfectly.

An example URL that I have used to pass unsolicited info to HE is something like this:
/apps/api/56/devices/3478/delayedOff/2019-11-10T13%3A26%3A00?access_token=??????

Now that you can pass multiple parameters off the maker API in one function, I'm in the process of moving that last webCoRE piston I have that does this into a custom driver. But adding this to RM would allow HE to react more easily to outside stimuli.

Yes.
Select
(
then first expression
AND
second expression
)
OR
(
third
AND
fourth
) OR

etc.
etc.
Hope that makes sense. :wink:

The issue is only present when trying to edit an expression. When writing the rule from scratch or after hitting "Erase Expression" there is no error. RM requires that you input an operator after a close parens and prevents an operator after an open parens, just like it should. So, if RM isn't giving you the option you want, you're picking the wrong option.

But you will not be able to edit the expression to add the parents in until the bug is fixed. I recommend you hit erase expression and then rebuild the expression one statement at a time. You just have to pick them from the drop down menu.

I'll give it a shot, thanks.

1 Like

I already did it. Next release.

Cool. I'll take a look when it comes out.

This is not true for me, I have tried building these actions from new and editing and after erasing. When built from newit does not run.

What do you mean, does not run? I'm telling you that the issue I reported does not present itself when you are creating a new expression. If you are experiencing a problem when creating a rule, it is not related to what I reported.

Can you provide a screenshot of what you have created? Because the screenshot you posted above doesn't have any parens in it all, so I fail to see how parensing could be a problem.

As a side note....do you think it could POSSIBLY be you and not the software? Just goin out on a limb here but I tend to think it's my fault before I start blaming a system that I am unfamiliar with. So, rather than just try and pile on, why don't we take a step back and take a look at what you're trying to do.

Did you follow the steps that @bobbles wrote up? If so, what was the outcome? Can you post a screenshot of it?

At this point it's difficult for anyone to advise you why it's not running with no visibility of your rule.
As @Ryan780 has said above please post a screenshot of your rule and I'm sure the people on here can advise you on how to get things working.

I posted a screen shot of the rule in this thread once already, it is comment #7. When built from scratch the only expresion that runs is the first, that beeing the first (AND) befor the OR. The next two (AND) expresions will not report true so the then can carry on.

So you haven't re-written it then as per the suggestion in post 14. You need to use parenthesis for you expression to work.
As you have it it will never work as you want it too.

Here is an example of what I believe you are trying to achieve from a parenthesis point of view.
image

The screen shot above is after I build from scratch. It will only run if the first OR statement is true. If the first OR statement is true the THEN gets execute. If the second or third OR statement is true the THEN statment does not execute. The second and third OR statements do not report true and allow the then to run. I then try to edit with additional perins and I get the errors “Double operator” or “miss ordered perins”, so I haven't posted a screen shop of a rule I cannot complete

Yep that is a good example, but when I build it it doesn't parenthesi like it should just as your example. When I build from scrtch it does not atomaticly insert the proper parens and I don't see the option for me to select the parens I want to use so then I try to edit and we now that doesn't work.

Which is why I have said go into edit and erase that expression and rebuild it as I have said in post 14. Please have a look at the example above.

If all else fails, delete that rule and start again from scratch.

Ah OK. Perhaps we are getting somewhere now.
It does not automatically put the parens in. You have to select them.
When you start to build the conditions, select
Conditional Actions.
The select
IF (conditions) THEN.
Now in Define Condition select
--> ( sub - expression
Now select your conditions seperated by an AND and finish as I have said above selecting
Now in Define Condition select
end- sub - expression )
Now select an
OR
and repeat the process above to select your expressions separated by an AND.

Thank you. I'll do this tonight. That is what I believe I was doing wrong. By not selecting "sub - expression" I was not getting what I wanted. Thanks again, sorry I was lacking the clear communication needed for abtaining this solution. I'll look forward to the fix in the edit.

1 Like

Did you ever get the rule written and get it working?

Thanks for checking in on me. Yes, after you helped me become aware that I should be using sub-expression I was able to get it correct. Good lesson.

I new what I wanted and if I were able to edit I would have gotten there. Thanks again for your help.

1 Like