I have been scratching my head for a while trying to find a workaround for the time based issue on SmartThings.
For those who are not familiar with the “time based” issue, there seem to have a major problem with the service SmartThings is using for scheduling. It stops working after a while. It can be reset, but it will eventually fail again.
SmartThings says that they are working on migrating to a new scheduling service that will be able to handle the growth of the ST platform, but there is no official timeline for when that will be completed.
Yesterday, I finally was able to have my time based scenarios to work the way I wanted.
Here is my recipe.
In the IDE, I created a virtual switch for every time based event that I wanted.
I used “Simulated Switch” as device type.
Then using the Rule Machine SmartApp, I created rules that performed the desired action when a switch was turned On (I also make sure to turn Off the other switches in the actions list)
Finally, I created Recipes in IFTTT.
The recipes are based on the “time and date” channel and of course the “SmartThings” channel.
As long as the IFTTT service is up and running, my time based action are working.
Ironically, there was a major outage on the IFTTT service yesterday before I created my recipes.
I have more scheduling issues with IFTTT than SmartThings. I have a wake up call at 5:30. It constantly goes off later (sometime 3 minutes, once last week it was close to 45 minutes late). Usually 2 minutes delay. Plus, IFTTT only allows scheduling in 15 minute intervals, so I can’t do anything at 5:25.
ST’s current scheduler is actually more reliable. Most of the delay with the ST is at most a minute for me. A minute is a rare maximum. On average, less than 15 seconds. It has only missed the schedule once.
You are right that IFTTT has some latency, I do experience 3 minutes delay myself.
However, the current SmartThings scheduler, despite being accurate when it works, does not work for me most of the time.
I prefer a time event being late 3 minutes than not occurring at all.
I was also having frequent time-based failures. I did something similar to the OP. I have a set of time-based rules in rule-machine that weren’t firing (mostly related to thermostat changes). I created a simulated button, then created a trigger event in Rule Machine. When the simulated button is pushed it evaluates all my time-based rules.
I then created a IFTTT recipes that push the button throughout the day causing the rules to be evaluated.
I have had all my rules fire right on time for the last few days. Hope it continues.