20

I've a specific use case, where once an If-this-then-that trigger happens, I want an action to occur, but I do not want that action to happen for at least 30 minutes.

When a WeMo switch is switched on, send a "SwitchOff" action 30 minutes later, to ensure the switch isn't on for more than 30 - 45 minutes at a time

Is there anyway to do this?

4

Yes there is an (unofficial) way. I developed a tool for this. You can consult this post: https://grapeot.me/adding-a-delay-to-ifttt-recipes.html

Example usage:

http://lab.grapeot.me/ifttt/delay?event={EVENT}&t={DELAY IN MINUTES}&key={YOUR KEY}

{YOUR KEY} is the key in IFTTT Maker Channel. More details are available in the post.

4

I have a slightly hacky solution for creating an IFTTT timer / delay; I'll use the wemo as an example:

When the wemo turns on, have another recipe to detect that and create a google cal event via the google cal channel. Here's the key, use a google cal with the time zone set behind your actual time zone. Eg if you're in the Eastern time zone, set the cal to Central. I use the Google quick add, and make sure to use a unique keyword in the event, eg #wemoturnedon

Now that you have events being created in Google cal. by your wemo, you simply setup another google cal recipe to look for that event. Use the search trigger so you can specifically find the #wemoturnedon keyword. The recipe can then be set to turn the wemo back off again.

2

IFTTT states in their help file:

Personal Recipes check for new Trigger data every 15 minutes. Some Recipes have “Quick Triggers” that will run as soon as they receive Trigger data. Quick Triggers can be identified by a lightning bolt icon.

So for setting up a recipe based on a WeMo switch to only fire every 30 minutes you'd have to set up a service in between WeMo and IFTTT (one that IFTTT works with) that would trigger a Quick Trigger at 30 minutes so that you could have your delay.

As of right now with IFTTT the solution you're looking for isn't possible without a third-party intermediate solution.

  • As you describe it, the delay will be between 0 and 29 minutes. Par exemple, if you would like to turn on your lights 30 minutes after sunset: the WeMo looks for triggers every 30 minutes, it might look for a trigger 1 minute before sunset, take no action and wait 30 minutes. The action will take place with the next check, 29 minutes after sunset. Would it instead check for triggers 1 minute after sunset, then you will see the light turn on instantly. If you want a 30min. delay, you must have separate timer that is activated on the IFTTT-trigger. The lights must be switched by the timer – user64067 Mar 23 '14 at 23:07
  • " then, not by IFTTT" was the second part of the comment that was truncated when I converted it. – jonsca Mar 24 '14 at 7:19
  • Quick Triggers are now known as "DO". There is also a mobile app for DO button. – IgorGanapolsky Jun 5 '16 at 23:36
2

Another solution is to link your IFTTT account to Numerous, then use Numerous countdown timers to trigger things.

Note, however, that this solution suffers from the same limitation that the other solutions do involving the up-to-15-minute delay in triggering IFTTT recipes when underlying conditions are met: If you set up a recipe to trigger an action when a Numerous countdown timer hits zero, then the action will trigger without delay, but if you set up recipes to trigger at a fixed interval before or after a Numerous countdown timer hits zero, the recipes (at least in my experience) won’t trigger at exactly that point in time but will trigger within about 15 minutes.

The other limitation with this solution is that you can’t (to my knowledge) use IFTTT to set a Numerous countdown timer to any time other than the present—you can’t count up from, say, 30 minutes in the past or down to, say, 2 hours in the future.

  • There is no Numerous on Google Play for Android. Have you tried checking? – IgorGanapolsky Jun 5 '16 at 23:30
  • Numerous service has been shutdown due to lack of funding. Thus, this answer doesn't makes sense now – Deepak Yadav Nov 28 '16 at 11:53
1

For Wemo devices, you can set up a rule in the Wemo app to turn off after a certain length of time without the need to have a complex IFTTT recipe to turn it off for you.

0

I came across this page from a web search and thought I might offer another Google Calendar solution. In contrast to Dan's solution, this method offers more granular control than his hour-by-hour delays of time zone hackery.

In this example, I have a Ring doorbell. When it detects motion, it triggers IFTTT to turn on my porch and flood lights. A few minutes later, a Google calendar event's ending prompts IFTTT to turn the lights off. Here's the recipe:

  1. Log into https://calendar.google.com/ . Create a new calendar separate from your primary. Mine is named Doorbell. Set it to your proper time zone.
  2. In IFTTT, create the following applets:
    1. If motion is detected, then turn on the lights.
    2. If motion is detected, then Quick Add an event to the Doorbell calendar. The quick add text reads "motion detected CreatedAt + 15 minutes". CreatedAt is inserted as an ingredient from the drop-down menu adjacent to the text entry.
    3. If an event ends on the Google calendar named "Doorbell", turn off the lights.

The secret sauce is how the Google Calendar Quick Add event text is phrased. CreatedAt added via the ingredients drop-down list sets the beginning of the calendar appointment to the time the motion is detected. + 15 minutes sets the duration. Since it's the end of the appointment that IFTTT monitors, this determines the timing.

The timing of execution isn't exact. IFTTT documents a +/- 15-minute window for firing an action triggered by the end of a Google Calendar event. In my experimentation this evening, the lights are turning off about 5 - 7 minutes early, and there was about a minute difference between the two lights when I didn't link them in a scene. It's close enough for government work as-is though. If you want your lights to stay on for about 10 minutes, then use + 15 minutes in your quick add text.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.