Uhrzeit

ioBroker Skript um zu prüfen, ob die aktuelle Uhrzeit innerhalb eines bestimmten Zeitfensters liegt

Mit ioBroker und JavaScript lässt sich (fast) alles einstellen, umstellen, kontrollieren oder überwachen. Mit diesem Skript kannst Du eine Funktion implementieren, die prüft, ob die aktuelle Uhrzeit im Bereich einer Zeitspanne liegt. Diese arbeitet auch tagübergreifend. So kann eine Startzeit bei 05:00:00 liegen und um 04:30:00 enden. Somit ist klar, das der Endzeitpunkt am nächsten Tag liegt.

Skript in ioBroker anlegen

Dieses Skript legst Du am Besten wieder im global Bereich an, damit es auch von anderen Skripten im common Bereich genutzt werden kann.

function Zeitbereich(startTime,endTime) {
     // Aktuelles Datum abholen
     var currentDate = new Date();
     // Startdatum formatieren   
     var startDate = new Date(currentDate.getTime());
     startDate.setHours(startTime.split(":")[0]);
     startDate.setMinutes(startTime.split(":")[1]);
     startDate.setSeconds(startTime.split(":")[2]);
 
     // Enddatum formatieren
     var endDate = new Date(currentDate.getTime());
     endDate.setHours(endTime.split(":")[0]);
     endDate.setMinutes(endTime.split(":")[1]);
     endDate.setSeconds(endTime.split(":")[2]);
 
     //Setze Zeitbereich zurück
     var valid_time_frame = false
     
     if (endTime > startTime) {
         // Zeitbereich ist im gleichen Tag
         valid_time_frame = (currentDate >= startDate && currentDate <= endDate) ? true : false;
     } else {
         // Zeitbereich endet im nächsten Tag
         valid_time_frame = (currentDate >= endDate && currentDate <= startDate) ? false : true;
     }
     return valid_time_frame;
 }

Andere Skripte können nun die Funktion Zeitbereich(start,ende); nutzen.
Der Funktionsaufruf ist wie folgt:

if (Zeitbereich("05:00:00","04:30:00")) {
     // Zeitbereich zwischen 5 Uhr morgens und 4:30 Uhr des nächsten Morgens
     // Hier kannst Du etwas ausführen lassen, was zu dem Zeitraum passt.
 }
 
 if (Zeitbereich("09:00:00","13:00:00")) {
     // Zeitbereich zwischen 9 Uhr morgens und 13:00 Uhr mittags
     // Hier kannst Du etwas ausführen lassen, was zu dem Zeitraum passt.
 }
 

Dieses Skript lässt sich hervorragend mit meinem Beitrag:
HomeMatic Sprachausgabe mit Alexa, ioBroker und JavaScript verwenden.

Ein Gedanke zu „ioBroker Skript um zu prüfen, ob die aktuelle Uhrzeit innerhalb eines bestimmten Zeitfensters liegt

  1. Pingback: HomeMatic Sprachausgabe mit Alexa, ioBroker und JavaScript | Kreyenborg.koeln

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.