[Released] Rule 4.0

Ah, yes, the Conditions are shared. But you can create a separate Condition in any Conditional Action. That Condition would also become available for other buttons, but you don't have to use it. Create new ones, don't change one that you have in use. There is a single list of Conditions.

1 Like

Aaaaah now I see. I was confused, I assumed the "manage or create conditions" button was also the location where you specify which conditions are applied. Now I realize that is not so, that it is just a quick way to edit or add conditions, the application of the conditions themselves happens in the conditional action section. That explains a whole bunch of strange behavior I have encountered, can't believe I missed that, thank you so much!

1 Like

Hi, I'm stuck with my rule. The purpose is to control a Domoticz CoCo dim switch from Hubitat. I have a virtual dimswitch on my dashboard. Changing it triggers the rule below.
I'm using local variables to fetch dimlevel of the virtual dimmer and recalculating it for the dim switch in Domoticz. Following, a http call is made to Domoticz to set the dimlevel. I'm using the local variable to set this dimlevel, but this just doesn't work. Nothing happens, when the level of the virtual dimmer > 0. If I turn the virtual dimmer off (or set to 0), the ELSE part fires and that works. It seems that using a local variable in the HTTP call does not get assigned.
Hardcoding the HTTP call to

Send GET to: http://192.168.1.174:8090/json.htm?type=command&param=switchlight&idx=638&switchcmd=Set%20Level&level=12

does work.

Any help or ideas about what I'm doing wrong or to get this fixed?


SOLVED

The trick was splitting the local string variable into several variables, which are concatenated into the desired string.
Specifically:

Set urlDom to '%serverDom%%commandDom%%dimLevelDom%'
Send GET to: %urlDom%

I'll add my vote for a RM trigger of "changed to...from....". I can't figure out a workaround either...I want a changed from Mode A to Mode B trigger, but I can't figure out how to set a global variable to the mode...

1 Like

I also don't see a direct way of storing the mode, but a workaround is to test for each mode then store a string.

For example

using local/global variables curMode and lstMode
Test if mode changes
set lstMode to curMode
if mode is "Away"
     set curMode to "Away"
else if mode is "Night"
    set curMode to "Night"
etc etc
now test the mode changes from A to B
2 Likes

Thanks. That works, albeit tedious and not future-proof to mode additions/revisions. Best we've got at the moment though it seems.

1 Like

Well.. In your original post you were only interested in when changes from A to B.. If that is the case.. It can be scaled down..

True, good point.

1 Like

I'm new to HE after finally having enough with Smartthings ADT. I could make my routines and automations work, but they were so unreliable that my wife wouldn't want anything to do with my smart devices. I'm hoping HE is different, but as I'm reading through the documentation and posts I'm finding myself struggling with basic automation that I easily put together on ST.

For starters, I've created several scenes for the living room and kitchen lights. The trigger will be motion or lack of it. The LR and kitchen have separate motion detectors.

My goal is to create different lighting scenes for the kids during different times off the day. When no motion is detected I want the lights to turn off. For example, at 4pm to 6pm, I want the lighting scene to be concentrate (full brightness) when motion is detected (separate for the kitchen and LR). When no motion is detected after 10 minutes the lights shut off. If motion is detected during that 10 minute timer I want the lights to stay on. At 6pm to 6:30pm the lights dim to 50% with the same motion rules as the previous scene....and so on with the additional scenes I have.

I can create the scenes, have them switch, but cannot have the lights shut off interupted when motion is resumed.

Any help is appreciated and thank you in advance.

Like this?

Only thing it wont do is dim at 6 if there is still motion
You could add 6pm as a trigger and it would return the run and dim,

are you using modes? All of this is possible using the built in app "motion lighting" its great. Works best with modes though. So just have your mode's be your different times of day.

1 Like

I found modes the following morning and am working on getting it integrated. Is there a limit to the number of modes I can create?

Mode is just a WORD. I don't think there's a practical limit, but you need an App to shift between the Words you create.

In other words, you can create 24 Modes, one for each hour of the Day. But that's it, you now have a list of 24 words. To be usable, the actual Mode needs to shift from one word to another. That requires an App (or Rule).

The built in modes (the words) are Day Night Evening and Away. Left alone, nothing happens. Mode remains Day. You can install and use the built-in App called Mode Manger to establish times and patterns of shifting between Day and Evening, etc.

You can delete all the built in words and use "Spring Summer Autumn and Winter" but you'd have to write your own App (or Rules) to shift Mode between your chosen words.

And finally, once you have all the words defined and a mechanism for shifting between them, you can Start to Use them in Rules and other Automations that have Mode as an option.

Slowly it's sinking in. I've created 5 different modes based on time and various lighting scenes. Then I setup Motion Lighting to control the scenes based upon which mode is active.

I can see the options for programming are many times more than ST even with Webcore.

What I'm struggling with now is support for various devices, which work in ST, but don't in HE:
Skybell HD doorbell
Schlage lock
Yale lock
Arlo cameras
etc....

Bond doesn't work directly, but I found a user created APP, which allows full functionality.
Is there a collection of HE user create APPs, that we can sort through or are they sprinkled throughout the forum?

All in all I'm happy I made the transition. The automation has been reliable so far and this is coming from ST crashing multiple times a month.

Sorry got on a tangent. Thanks for the reply.

Locks work with Hubitat. There are native/built-in Drivers for "Generic ZWave Lock" and "Generic Zigbee Lock"

Having Locks join your mesh is an entirely different question and I've read at least 50 answers (possibly 500 :slight_smile: ) with what seems like every home having different results, from "worked first time" to "It simply never works" With dozens of helpful suggestions. Use the search button of this Forum to find a device specific answer. I have two Yales, a Keyless Deadbolt from 2017 and one received a week ago, a Lever Lock. They are both on my ZWave mesh working properly.

The Yale T1L lock I have isn't on the HE list of supported locks, but I'll try to connect it again.

@bravenel, would it be possible in a future version of RM to have local/cloud endpoints accept http arguments (whether get or post) the value of which could be accessed with the '%var_name%' syntax? This would allow, for example, a rule to trigger from a local/cloud endpoint and send a notification that could include the value of a get/post argument as part of the notification text. Thanks

It does this now, putting the argument into %value%.

Great! Thanks

Just curious, with Wink shooting itself in the foot, and a mass migration out happening, what are your future plans with Rule x.0 to help those people along? I've kinda found Rule to be really powerful and useful, but, at times, really complicated and hard to debug or navigate, especially around events that require sequential durations and explaining why they fail.

Even simple things like a "Cancel" or "changed mind" button next to "Done" is missing from certain areas and steps, so I don't always have an easy way back if i accidentally went into the wrong event, action, or trigger would be welcome. Right now, i have to chance a "browser back button" (ill advised) or do required step to complete a condition i didn't need or want to then promptly delete it and try again.