NEWS
LG OLED aktive Apps mit Hue synchronisieren ( Anfänger)
-
Mahlzeit zusammen
Ich beschäftige mich nun seit ungefähr zwei Wochen mit IoBroker und Blockly und habe / hatte folgende Idee:
Wenn mein OLED TV eine bestimmte App startet ( zum Beispiel Netflix ), soll die Lampe direkt hinter dem TV die entsprechende Farbe annehmen, hier rot. Bei Disney+ blau und so weiter. Mit Hilfe eines Freundes habe ich das Skript auch soweit hinbekommen, "Problem" ist nur, dass die Abfrage via Zeitplan und Ping alle 2 Sekunden stattfindet und mir daher alle 2 Sekunden ein Eintrag ins Log geschrieben wird bzw. alle 2 Sekunden eine Abfrage gestartet wird.
Anbei mal mein Skript zum Nachvollziehen.
Wenn es draußen hell ist, brauche ich das Licht natürlich nicht unbedingt, daher der Trigger mit Zeit.
Das wirkliche Problem hierbei ist, dass mein TV immer nur die App ausgibt, die im Vordergrund läuft... Es wird aber nicht aktualisiert durch den TV. Das heißt, sobald Netflix an ist, wird der entsprechende Wert EINMAL geschrieben, aber nicht mehr aktualisiert, es sei denn, ich wechsele die App.Unser "Workaround" war daher eine Abfrage jede oder alle 2 Sekunden, ob das noch aktuell ist. Das flutet aber mein Protokoll. Das allein wäre nicht schlimm, aber ich kann dadurch währenddessen keinerlei andere Lichtszenen oder Einstellungen fahren, weil eben durch die Abfrage andauernd überschrieben wird. Um das Ganze zu beenden konnte ich mir mit dem PING Adapter helfen, denn wenn der TV aus ist, ist er nicht mehr erreichbar und somit findet auch keine Abfrage mehr statt.
Ich möchte aber gerne dennoch per Hand oder andere Ereignisse die Lichter von Hue WÄHREND des Fernsehens ändern können... Das heisst nämlich, dass ich auch vor der definierten Zeit des Zeitplans keine andere Szene ansteuern kann, weil per Script jede Sekunde eben diese eine geschrieben wird.
Vielleicht habt ihr ja eine Idee. Wie gesagt, ich bin blutiger Anfänger, also seht mir meine Verwirrtheit nachVielen Dank schonmal
-
@rewind99 womit wird das LOG geflutet.. ich erkenne da nix
-
Das Problem ist, dass ich solange der zeitplan vom TV läuft immer eine "Szene" geschrieben wird. Deswegen kann ich in der Zeit nichts anderes oder das beenden.
In diesem Beispiel ist der Fernseher aus, also auch per Ping nicht mehr erreichbar. Weil aber der Zeitplan noch aktiv ist, startet er jede Sekunde die Szene Chillig -
@rewind99 das ding läuft JEDE Sekunde ..mal neben bei..brich das ab...und lass es sein bis du eine Lösung gefunden hast..
du überlastet die Kiste damit... -
@arteck Ja genau, daher ja meine Frage
weil der TV halt nur bei Änderung den Wert setzt. Den teilt er aber nicht aktiv mit, den setzt er als State. Und ich weiß leider nicht, wie ich das abfrage ohne einen so kurzen Abfragezeitraum...
Wenn ich es aber abbreche, dann stellt sich die Lichtszene nicht verzögerungsfrei ein, bzw. er erkennt keine Änderung wenn ich die App wechsele. -
@rewind99 na der fernseher liefert dir doch im current app was es macht.. wenn du auf diesen object triggerst dann gehts ..
zur zeit schaust du nur ob der fernseher alive ist...jetzt musst du dein script umbauen und auf current app triggern.. ändert sich dieser Wert dann steuere die scene..
halt nur "einmal" und nicht stupide wie jetzt jede sekunde -
@rewind99 sagte: sobald Netflix an ist, wird der entsprechende Wert EINMAL geschrieben, aber nicht mehr aktualisiert, es sei denn, ich wechsele die App.
Dann genügt es doch, auf "current app" zu triggern.
Wert (unter "Trigger"):
-
@arteck ich danke dir vielmals !!! Ich habe den Zeitplan entfernt und den Trigger auf Falls current App wurde aktualisiert gesetzt, jetzt gehts
Ein kleiner Denkanstoß bewirkt manchmal wunder... vielen Dank !
-
@paul53 Vielen Dank
Ja, genau das war es... Vielen Dank für die Hilfe!