Korzystam ze zgrabnego małego przepisu IFTTT, który automatycznie reaguje na wiadomości tekstowe otrzymywane przez Google Voice. Ten , by być precyzyjnym.
Potrzebuję go tylko do pracy, kiedy jestem w pracy, więc włączam i wyłączam go ręcznie każdego dnia w razie potrzeby.
Czy jest jakiś sposób, aby przepis był aktywny tylko w określonych godzinach? Na przykład między 9 rano a 5 po południu w dni powszednie?
Na początku myślałem, że kanał Data i czas będzie przydatny, ale nie wygląda na to, aby można go było wykorzystać do wyzwalania istniejących przepisów lub łączenia przepisów.
Przeprowadziłem wyszukiwanie w Internecie i znalazłem ten post na r / IFTTT, zadając to samo pytanie i nie otrzymując odpowiedzi.
źródło
Nie moje, ale to działa świetnie dla mnie! Wejdź na https://platform.ifttt.com/maker i utwórz aplet i użyj go w sekcji kodu filtru. * .Skip () jest ważne, aby ustawić anuluj akcję po wyzwoleniu. PS nie jest koderem!
// Change startTime and stopTime to set the time range when you want // your service's action (the 'That') to happen: // var startTime = moment('03:00 pm', "HH:mm a"); var stopTime = moment('06:00 pm', "HH:mm a"); // // startTime is the first time when the action can happen // stopTime is the last time the action can happen... until time // reaches the next startTime. // // Notes: // - startTime can be later than stopTime. For example, startTime // can be 10:00pm and stopTime 06:00am. This means actions can // happen from 10pm of one day until 6am of the next day but // not between 6am and 10pm of either day. // // - startTime cannot be the same as stopTime // // - 'Skip' messages are written when the service's action does not // happen, such as after the stopTime and before the next // start time. // // - If you want to use this code with a service other than // Gmail.sendYourselfAnEmail, you must change the lines that // reference Gmail.sendYourselfAnEmail.skip to the skip method // for your service. // // -------------------------- // // The code converts everything to minutes for comparision purposes // var startTimeMinutes = startTime.minutes() + startTime.hours() * 60; var stopTimeMinutes = stopTime.minutes() + stopTime.hours() * 60; var triggerTimeMinutes = Meta.triggerTime.minutes() + Meta.triggerTime.hours()* 60; // // StartTime = stopTime not allowed. // // Set some defaults... // var doThat = new Boolean(false); var whatsup = "'That' has been skipped"; // // If start time is less than stop time, then the range is assumed to // be a continuous period during a single day. E.g., 9am-6pm. // if ((startTimeMinutes<stopTimeMinutes) && (triggerTimeMinutes >= startTimeMinutes && triggerTimeMinutes <= stopTimeMinutes)) { doThat = Boolean(true); whatsup = "range within a single day"; } // // If start time > stop time, then the range is assumed to span // midnight (12am). E.g. 10pm-6am. This range covers parts of two // days. // else if ((startTimeMinutes>stopTimeMinutes) && (triggerTimeMinutes > startTimeMinutes || triggerTimeMinutes < stopTimeMinutes)) { doThat = Boolean(true); whatsup = "range spans midnight"; } // // Out of range... // if (doThat == false) {
AndroidMessages.sendAMessage.skip("Event happened outside time range (" + whatsup +") - time of trigger was "+Meta.triggerTime.format('LT')+", but start time to allow the action is "+ startTime.format('LT') + " and stop time is "+ stopTime.format('LT') + " Debug info: minutes are "+triggerTimeMinutes + " " + startTimeMinutes + " " + stopTimeMinutes); } // // The following code can be uncommented for debugging. It writes // an entry to the activity log instead of performing the // action. // // else // { // IfNotifications.sendNotification.setMessage("Action can happen (" + whatsup +") - time of trigger was "+Meta.triggerTime.format('LT')+", start time is "+ startTime.format('LT') + ", and stop time is "+ stopTime.format('LT') + ". Debug info: Minutes are trigger="+triggerTimeMinutes + ", start=" + startTimeMinutes + ", and stop=" + stopTimeMinutes); // } // }
źródło
Innym sposobem na osiągnięcie tego, bez uciekania się do tworzenia ręcznego apletu, jest użycie Stringify.com jako pośrednika.
Pozwala na włączenie do przepływów węzła „tylko jeśli” (Stringify flow = IFTTT przepis). Jeśli masz szczęście, Stringify obsługuje już to, co chcesz uruchomić, ale jest tylko kilka „rzeczy”, które obsługują - w porównaniu do ogromnej liczby na IFTTT.
Możesz ustawić receptury „wejściowe” na IFTTT, które będą wyzwalać wyzwalacz Stringify, oraz recepturę „wyjściową”, która będzie wyzwalana przez akcję Stringify.
Na przykład:
źródło