NEWS
[Gelöst] Frage zum Befehl "setState" in einem WeckerScript
-
Hallo zusammen,
in einem WeckerScript von mir zerlege ich die 'Weckzeit, 06:30, string' mit dem Befehl:
> WKZeit = getState(instanz + pfad0 + 'WeckZeit').val.split(':');jetzt möchte ich mit
` > setState(instanz + pfad0 + 'Weckzeit_Stunden', WKZeit[0]);setState(instanz + pfad0 + 'Weckzeit_Minuten', WKZeit[1]); `
die Stunden, Minuten setzen - dies funktioniert leider nicht… Könnte mir bitte jemand auf die Sprünge helfen? ;)
Danke, Gruß
Marcus
-
Schau mal direkt auf dem Reiter "Log", da es dort evtl. weitere Warnungen gibt, z.B. dann, wenn die beiden Datenpunkte nicht existieren. `
Danke euch zusammen… ;)
ER mault, wenn man am 'Scriptanfang' die Datenpunkte schon erstellt, obwohl die dann beim zweiten Start des Scripts schon vorhanden sind...
Habe es so gelöst:
! ````
WKZeit = getState(instanz + pfad0 + 'WeckZeit').val.split(':');
if(logging) log('Wecker wurde auf '+WKZeit[0]+':'+WKZeit[1]+' Uhr gestellt');
createState(instanz + pfad0 + 'Weckzeit_Stunden', {def: WKZeit[0] ,type: 'string',name: 'Weckzeit_Stunden'}); // Weckzeit in Stunden
createState(instanz + pfad0 + 'Weckzeit_Minuten', {def: WKZeit[1] ,type: 'string',name: 'Weckzeit_Stunden'}); // Weckzeit in Minuten
timer = schedule(WKZeit[1] + ' ' + WKZeit[0] + ' * * *', WeckerEin);
on({id: instanz + pfad0 + 'WeckZeit'}, function(dp) { // Trigern bei Änderung
WKZeit = dp.state.val.split(':');
clearSchedule(timer); // altes Schedule löschen
timer = schedule(WKZeit[1] + ' ' + WKZeit[0] + ' * * *', WeckerEin);
setState(instanz + pfad0 + 'Weckzeit_Stunden', WKZeit[0]); // Weckzeit_Stunden aktualisieren
setState(instanz + pfad0 + 'Weckzeit_Minuten', WKZeit[1]); // Weckzeit_Minuten aktualisieren
if(logging) log('Wecker wurde auf '+WKZeit[0]+':'+WKZeit[1]+' Uhr neu gestellt');
});8-) …ein Buch mit vielen :?: :?: :?: Gruß Marcus
Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.
Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.
Mit deinem Input könnte dieser Beitrag noch besser werden 💗
Registrieren Anmelden