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
-
Sieht auf den ersten Blick gut aus. Steht irgendwas fehlermäßiges im Log?
-
nur diese beiden Hinweise….
` > 17:31:31.961 [warn] javascript.0 at script.js.Skripte.Wecker_02:48:1
17:31:31.961 [warn] javascript.0 at script.js.Skripte.Wecker_02:49:1 `
Kann leider nichts damit anfangen.
-
Schau mal direkt auf dem Reiter "Log", da es dort evtl. weitere Warnungen gibt, z.B. dann, wenn die beiden Datenpunkte nicht existieren.
-
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