This is from webCore in SmartThings. I’m really struggling with the right way to transpose this to HomeAssistant. I think scripts are the right thing to be looking at, but having a hard time getting my head wrapped around the how. Any tips on how to get started?
Automations, scripts or something like node red.
You’ll just have to pick what works best for you.
One thing I found that worked best for me was to abandon the constructs you had in WebCoRE. They’re usually born out of working around limits in SmartThings.
Instead build requirements on what you need done and start building them from scratch using automations scripts or NodeRed.
Agreed with Nathan Curtis. I’ve made the same transition you’re making now and the closest thing to webCoRE’s somewhat sequential logic along with trigger conditions is an automation, but the logic is a fair bit different, so I’d take the basic idea of your webCoRE pistons, possibly convert it to pseudo-code, and then start in on creating an automation that does the same thing.
In my experience, it took a few attempts to get “an automation that does the same thing.” Fortunately, I’ve found this community extremely helpful in working through the details.
Also, I started out working in NodeRED because it was the sequencing was a bit more easy to follow. However, all my scripts and automations are in native YAML now.
In the case of your piston above, there may be an entirely different way to do it:
If you set up two groups, one (AdultPresent) which contains switch.Location-Heather and switch.Location-Steve and another (AnyonePresent) which contains switch.Location-Guest, switch.Location-Heather, switch.Location-Marci, and switch.Location-Steve, then AdultPresent will be ON when either Heather or Steve’s switches are on and AnyonePresent will be on when any of the four members are on (the groups will be off if none of the members are on).
(The group status is essentially the same as your AdultPresent and AnyonePresent switches in the piston.)