@Nezmo thank you, got it. have you checked to see if the cancel all pending tasks, cancels only the wait timer for that one piston or cancels all wait timers that are active at that time for that instance of webcore? so, if you have only one instance of webcore for all your pistons, it will cancel all wait timers across all your pistons?
It’s just for that piston.
I have to use the tileSetLevel() option for my Samsung R1 speaker to change the volume
Leave the Speak Text Volume blank.
Add a tileSetLevel() and then look for the Parameter button and select integer that gives you field to enter your volume level.
Works well for me.
thats awesome. thanks @Nezmo
Is there a way to ‘search’ for a variable? Say for example, I have 10 variables that start like this:
TEMPHIGH_bedroom
TEMPHIGH_livingroom
TEMPHIGH_garage
TEMPHIGH… and so on
Right now they’re booleans, but I might have a use for an actual list being returned. Basically I want to dynamically generate a list of variables (or devices for that matter) that start with - in this case - TEMPHIGH_. That way if I create more pistons or add to a piston something that adds to a new variable I created starting with TEMPHIGH_, I don’t need to update more than one piston.
The use case above is that some pistons will set the TEMPHIGH variables to True with another piston looking at all the variables starting with that name and essentially say if ‘any of’ are True, then do a thing. If ‘all are’ false, do a different thing etc. I can manually populate the list but it’d be nice to simplify that process.
Related: Might also be useful to say get a list off all devices with a ‘Temperature’ attribute and see if any exceed some value etc etc. Or switches, or contact sensors etc.
If thats been covered somewhere, please link me (brain still waking up).
@anon36505037 I don’t really have anything worked out into a piston yet, but here’s a rundown:
Device A goes above a temperature: turn on attic fan
Device B goes above a temperature: turn on attic fan
Device A drops below threshold - don’t turn off attic fan because Device B is still above a temperature
Device C detects motion: turn on attic fan for 2 minutes (its a litter box with a vent right above it )
So basically if any device tied to the attic fan goes above its threshold, turn on the fan. But only if ALL the devices drop below their threshold do we turn it off.
That make more sense? I’d rather each piston not have to figure out whether or not to turn the fan off, but basically ‘queue’ the fan requests so to speak, and then de-queue them. I tried doing a counter, but realized that if I didn’t get re-triggering right when something like the motion sensor gets triggered again, the number grew… large. I could fix that, but that just sounds like a lot of tweaking.
I am essentially trying to do the same thing (see here) but, broadcast to all of my speakers; hence my variable called ‘sonos’.
I think…again, it’s what ive posted here. what i imagine i would like to happen, is coded correctly. However, i do not hear the speak to text i’ve programmed when any door is open. And as for the volume, ive set that within task rather than create a separate task to set the volume level.
Don’t want to butt in but I love a challenge.
Would this work for you???
is there a method to modify the results page or provide info/values/tiles when I execute a piston by URL?
There doesn’t appear to be much code in there…
@bangali l changed the line as you said
(isBetween($now, addMinutes($sunrise, -15), addMinutes($sunset, 15)) ? 100 : 100)
The light came on before sunset…
So I changed the sunset and sunrise around
But the light still comes on with motion (before sunset)
Hhhmmmm… I’m learning a lot here
Thanks
@SteMac you are welcome.
look forward to it.
@SteMac the way that example is set, the light will always come on with motion but it will be set to a different level of brightness at 2 different times of day. the only time the light will not turn off with motion is if you have manually turned the light on using a switch.
if you tell me a bit about what you need … i will try to help with modifying the piston to your specific need.
@bangali got it… cleverly done
What about
Light does not come on during daylight hours
15 min before sunset if the motion sensor is activated the light comes on for x seconds/minutes
(Stays on whilst there is motion)
Then turns off when motion stops
All the way to
15 min after sunrise
@SteMac thank you.
after line 24 insert this additional condition for the first if
and delete line 31 the set level line if you dont need it.
Is there a way to add turn on option to the dropdown menu when using thermostat. I have a Fidure thermostat. I have it when the sliding glass door is open for 5 minutes to shut off Fidure. No matter what I select for the door closed the Fidure will not turn on. I have a feeling it wants the turn on command before the auto or AC setting.
Thanks @bangali, I will insert the line and have a play
All good fun
Just like to say thanks for all your time and help
Gotta keep the original piston for further use
you are welcome.
have fun!
This works… but doesn’t really address the underlying ‘I want to be as lazy as possible’ issue - whereby instead of having to update and change multiple pistons (assuming I’m using one piston for each device - hypothetically), I want a bunch of variables that are essentially grouped and then a piston looks at the group. In practice the thought that had come to mind was that if I named them all by starting with THISTYPEOFTHING_thedevice, then I could have a variable that’s automatically addressing everything starting with ‘THISTYPEOFTHING’ etc.
I’m starting to think however that putting all of this into one piston instead of a bunch is probably more practical and I just need to shift my mentality about it - though being able to wildcard variables would be nice…