NEWS
[gelöst] Benötige hilfe bei "einfachem" Script
-
Hallo!
Ich bräuchte Hilfe.
Für die meisten warscheinlich eine Kleinigkeit aber ich komme nicht weiter, da ich gerade erst mit Java angefangen habe.
Folgende Situation.
iCal Adapter liefert vier Kalendervariablen (Früh,Spät,Nacht und Urlaub) jeweils mit true oder false.
Ich möchte diese vier Variablen in einer zusammenfassen.
Dazu das angehängte Script. Leider stellt er die Variable bzw. die Werteliste nicht um.
Muss ich bei einer Werteliste was anderes als setState benutzen?
Ich hoffe mir hilft jemand.
Grüße!
// Timer schedule ("*/30 * * * *",function() { // Früh var current_state1 = getState("ical.0.events.0.today.Früh"/*Früh*/).val; if (current_state1 === true) setState("hm-rega.0.9729"/*Früh*/, 0); // Spät var current_state2 = getState("ical.0.events.0.today.Spät"/*Spät*/).val; if (current_state2 === true) setState("hm-rega.0.9729"/*Spät*/, 1); // Nacht var current_state3 = getState("ical.0.events.0.today.Nacht"/*Nacht*/).val; if (current_state3 === true) setState("hm-rega.0.9729"/*Nacht*/, 2); // Frei var current_state4 = getState("ical.0.events.0.today.Urlaub"/*Urlaub*/).val; if (current_state4 === true) setState("hm-rega.0.9729"/*Frei*/, 3); });
-
Hast du mit
Console.log("meine ausgabe")
mal getestet ob auch eine deiner Prüfungen aktiv wird?
Es ist ical.0.events.0.today.Nacht ein Boolean oder ein String gespeichert?
-
Ich glaube ich habe gleich mehrere Fehler mit den Klammern gemacht.
Im einzelnen funktioniert es.
Habe also für jede Variable ein Script angelegt.
Der Tipp mit dem Consolenlog war hilfreich.
Jetzt müsste ich gucken wie ich die zusammengefüht bekomme und mit:
schedule ("*/30 * * * *",function()
versehe.
var current_state1 = getState("ical.0.events.0.today.Früh"/*Früh*/).val; if (current_state1 === true) setState("hm-rega.0.2360"/*Früh*/, 0);
-
Muss ich bei einer Werteliste was anderes als setState benutzen? `
Nein, setState() passt.
@Jankb89:setState("hm-rega.0.9729"/*Früh*/, 0); // Spät var current_state2 = getState("ical.0.events.0.today.Spät"/*Spät*/).val; if (current_state2 === true) setState("hm-rega.0.9729"/*Spät*/, 1); ```` `
Weshalb hat die SV mit eier ID ("hm-rega.0.9729") unterschiedliche Namen (Früh/Spät) ?
-
iCal Adapter liefert vier Kalendervariablen (Früh,Spät,Nacht und Urlaub) jeweils mit true oder false. `
Dann müssen diese Datenpunkte sicherlich nur einmal täglich abgefragt werden ?schedule ("3 3 * * *",function() { // täglich um 3:03 Uhr var sv = 3; // Urlaub if(getState("ical.0.events.0.today.Früh"/*Früh*/).val) sv = 0; if(getState("ical.0.events.0.today.Spät"/*Spät*/).val) sv = 1; if(getState("ical.0.events.0.today.Nacht"/*Nacht*/).val) sv = 2; setState("hm-rega.0.9729", sv); // Werteliste-SV });
-
Muss ich bei einer Werteliste was anderes als setState benutzen? `
Nein, setState() passt.
@Jankb89:setState("hm-rega.0.9729"/*Früh*/, 0); // Spät var current_state2 = getState("ical.0.events.0.today.Spät"/*Spät*/).val; if (current_state2 === true) setState("hm-rega.0.9729"/*Spät*/, 1); ```` `
Weshalb hat die SV mit eier ID ("hm-rega.0.9729") unterschiedliche Namen (Früh/Spät) ? `
Es wird mit setState 0 auf früh und mit 1 auf spät gesetzt.
Ja die Abfrage genügt 1x tägl. zum testen hatte ich kürzer gesetzt-