This is surely common knowledge for some of you but I thought I’d share a story, as this just made me cringe
I never understood the point in the option to “run actions in parallel” I thought if I had a list of actions to complete, HA makes it through them almost instantly, and with the varying latency of each action they wouldn’t complete at the same time anyways.
Then I tested my smoke alarm notification that I have had running for over a year.
It went-
If: list of smoke alarms detects smoke Then: Turn on the lamp next to my bed, then Send a notification to my phone.
I had made an error when setting up the lamp entity. (I made it full brightness on both scales, can only use one) this stopped the automation before the notification went out to my phone.
If it’s important that the automation makes it to the end, run in parallel!
Talk about a false sense of security
This is also why testing is important. Speaking of which, when was the last time you tested your backups?
OK daddd (or mommm) it probably is time for me to test my backups haha
Good on ya kiddo. If you want we can go to the park and play some catch after dinner.
I gotta be honest, I’m not sure I’d be willing to trust something I set up myself with general-purpose software to handle something as important as a smoke alarm alert.
That’s the sort of thing that gets hardware dedicated to the task and doesn’t rely on me configuring everything correctly and Linux not crashing because some other unrelated process had issues.
Yes this is in addition to the normal alarm. The light is incase I’m sleeping, as I may not hear the basement alarm going off. The notification is if I’m not home.
I would assume that turning on the lights and sending a push notification would happen in addition to normal smoke alarm things. An alert on my phone would be nowhere near enough if there was a real emergency, but it would be super helpful if I was out of the house
I assume that this automation is in addition to the normal alarm from the smoke detectors, but I agree with your sentiment
Parallel stuff is also used for… Well, some sequences you want to run in parallel.
That was insightful
Could you give som examples of where it’s desirable ?
Let’s say you have 2 scripts that do some stuff:
- script A: turns a light pink for 20 seconds and then through a smart speaker you can hear 30 seconds of La Macarena.
- script B: send 25 notifications to your phone, spaced by 30 seconds, in which each notification is a different letter of an encrypted message.
If you want those things to happen independently you must parallelize them.
So think about an automation that at a certain point you want to launch multiple scripts. I’d always parallelize, even if initially these scripts were “instantaneous”, because you might change these and add more complexities in the future.
Tip: be sure to se continue_on_error!
https://www.home-assistant.io/docs/scripts/#continuing-on-error
Nice tip. Thank you. I was similarly confused
Also, test your automations! Specially those critical. It’s very essy, you can virtually trigger them.