NEWS
Prüfen ob Harmony-Aktivität an
-
Hallo und guten Morgen,
ich bin gerade dabei, mit ein kleines Script zu schreiben, um zu prüfen, ob eine Aktivität an, oder aus ist.
(Diese möchte ich zu einem späteren Zeitpunkt noch mit meinem Licht erweitern, sodass das licht zu einer gewissen Zeit ausgeht(falls noch an), wenn die Aktivität aus ist)
if(getState("harmony.0.Hub_Wohnzimmer.activities.Fernsehen").state = "2") { log("TV is On"); } else if(getState("harmony.0.Hub_Wohnzimmer.activities.Fernsehen").state = "0") { log("TV is off"); }
In der Log wird mir aber immer "TV is On" angezeigt, wenn ich das Script starte, obwohl die Aktivität aus ist.
Könnte mir da bitte jemand helfen.
-
if (getState("harmony.0.Hub_Wohnzimmer.activities.Fernsehen").val == 2) { log("TV is On"); } else if (getState("harmony.0.Hub_Wohnzimmer.activities.Fernsehen").val === 0) { log("TV is off"); }
die http://www.iobroker.net/docu/?page_id=5385&lang=de kennst du aber
-
Ansonsten mit Blockly solche Dinge lösen (man kann sich dann auch das Skript anzeigen lassen)
Bin auch kein Js Hirsch und behelfe mir mit switchen zwischen skript und blockly
Grüsse
-
if (getState("harmony.0.Hub_Wohnzimmer.activities.Fernsehen").val == 2) { log("TV is On"); } else if (getState("harmony.0.Hub_Wohnzimmer.activities.Fernsehen").val === 0) { log("TV is off"); }
die http://www.iobroker.net/docu/?page_id=5385&lang=de kennst du aber `
Ja, die Doku kenne ich.
Und mikiline, weil ich mit Blockly gar nicht weitergekommen bin, hab ich es in JS versuchen wollen.
-
Ich versteh hier den Sinn des Script nicht. Das wird doch alles schon in mehreren Datenpunkten des Harmony Adapters angezeigt. Warum will man das noch mal selber machen?
Mit Blockly ist es somit sehr einfach hier noch mal eine Auswertung zu machen und ich arbeite auch erst seit ein paar Wochen mit dem IObroker.
5076_2018-02-28_12_30_42-iobroker.admin.png -
Ich versteh hier den Sinn des Script nicht. Das wird doch alles schon in mehreren Datenpunkten des Harmony Adapters angezeigt. Warum will man das noch mal selber machen?
Mit Blockly ist es somit sehr einfach hier noch mal eine Auswertung zu machen und ich arbeite auch erst seit ein paar Wochen mit dem IObroker. `
Jan1, weil ich zu einem späteren Zeitpunkt z. B. sagen möchte:
"Wenn Aktion [Fernsehen] an und 'Licht" an, dann lasse 'Licht' an, ansonsten wenn Aktion [Fernsehen] aus, dann schalte 'Licht' aus, falls an.
P. S.: Muss alles im Leben einen Sinn ergeben?
-
Habe es jetzt erstmal geschafft, dass alle 10 Sekunden geprüft wird, ob die Aktivität/Aktion läuft.(Die 10 Sekunden sind erstmal testweise)
schedule("*/10 * * * * *", function (){ var state=getState("harmony.0.Hub_Wohnzimmer.activities.Musik").val; if(state == '0') { log('Musik is off'); } else if(state == '2') { log('Musik is on'); } });
Muss ich jetzt für jede Aktion diesen Block schreiben, oder kann ich keine Funktion schreiben, wo ich die verschiedenen Aktionen und Status abfragen kann?
-
Wenn man das unbedingt mit Java Script machen will, ich kann's nicht und hier ist Blockly wirklich sehr einfach.
Da nimmst ein Trigger der auf Wertänderung oder von mir aus auch auf Aktualisierung prüft und packst nen "falls dann" Block rein und gut is.
-
Wenn man das unbedingt mit Java Script machen will, ich kann's nicht und hier ist Blockly wirklich sehr einfach.
Da nimmst ein Trigger der auf Wertänderung oder von mir aus auch auf Aktualisierung prüft und packst nen "falls dann" Block rein und gut is. `
Hallo Jan1,
könntest du mir das denn bitte erklären, wie ich das in Blockly machen kann.
Denn ich stehe gerade vor der Herausforderung, ein Widget, in einer Gruppe anzuweisen, wenn eine Aktion aktiv ist, dass die CSS geändert werden soll.
Z. B. Aktion Fernsehen ist aktiv, somit soll das unten liegende Widget "CSS opacity: 1" bekommen.
-
Mit VIS habe ich noch gar nichts gemacht, deshalb weiß ich auch nicht was Du dazu brauchst und verstanden, welche DP Infos jetzt in was gewandelt und ausgewertet werden sollen hab ich auch noch nicht, da eigentlich eh alles schon da steht.
Schreib welche Werte der DPs jetzt wie interpretiert werden sollen, dann kann ich Dir dazu evt. mit Blockly was vorschlagen.
-
Hallo Jan1,
harmony.0.Hub_Wohnzimmer.activities.Fernsehen hat den Wert "2", wenn aktiv und "0", wenn nicht aktiv.
Das Objekt, welches via CSS einen anderen Wert bekommen soll, hat die ID w00027.
Vielen Dank, für deine Hilfe.