NEWS
Skript reagiert nicht mehr auf Aktualisierung von Objekt
-
@daniello sagte: das Skript nicht reagiert.
Sicher? Ändere mal den Debug-Block auf "Info", da mit "Debug" vermutlich keine Log-Ausgabe erfolgt.
-
@daniello sagte in Skript reagiert nicht mehr auf Aktualisierung von Objekt:
Bin grad nicht sicher was genau ich zeigen sollte:
wer oder was aktualisiert wie den eigenen Datenpunkt.
oder Ist das kein eigener Datenpunkt, sondern ein DP vom Alexa Adapterdann zeig mal die Objekte
-
Danke .. das wusste ich nicht. Ich dachte Debug ist nur gesprächiger als Info .. jetzt gibt es auch ein Signal d.h. das Skript tut doch was.
Aber .. und das war der eigentliche Begin der Odyssee: Ich verwende ja den LGTV-Adapter für das wechseln von TV auf Fire TV .. nichts Spannendes. Irgendwann funtionierte es nicht mehr. Mir ist aufgefallen, das das Triggern der Befehle am direkt an den Adapter-Objekten immer zuverlässig funktioniert. Ich kann Input-Source auf HDMI stellen oder ich kann per App Launch Fire TV starten .. auch wenn es keine App ist (sondern der Cube am HDMI).
Das Skript macht eigentlich nichts anderes - funktionerte nun aber wochenlang gar nicht. Nun hab ich es von 4 Malen zwei Mal geschaft per Input Source umzuschalten .. es ist also nicht besonders zuverlässig.
Und das App Starten klappt überhaupt nicht.
Es gibt also einen (für mich) unerklärlichen Unterschied, warum es am Adapterobjekt klappt .. nicht aber über das Skript. Ich teste die einzeln:
-
@daniello Also wird getriggert, aber nichts ausgeführt?
Dann wäre nicht der "eigene Datenpunkt" sondern die LG-Datenpunkte das Problem?
Dann bitte die Objektdaten dieser beiden DP zeigen. -
Es ist noch schlimmer .. die Felder im Objekt das LG-Adapters werden richtig beschrieben .. aber es passiert trotzdem nichts.
(bei Input Source nun sporadisch).Insofern sind wir m.E. über die eigenen Objekte hinaus.
Kann es sein, dass was mit dem Admin oder dem JS-Adapter nicht stimmt, sodass die Befehle über das Skript zwar am Adapter ankommen aber nicht ausgeführt werden?
Ich glaub ich muss mal am adapter debug anwerfen und manuell und per skript vergleichen.
-
@daniello sagte in Skript reagiert nicht mehr auf Aktualisierung von Objekt:
sodass die Befehle über das Skript zwar am Adapter ankommen aber nicht ausgeführt werden?
da will ich ja die ganze Zeit drauf hinaus!
Das gezeigte Skript sieht korrekt aus.
Bedingung wäre eine korrekte Änderung des Trigger DPs.jetzt kommt es auf die korrekte Beschreibung der LG DPs an.
Beides hast du noch nicht gezeigt.
Wenn auch diese kortekt befüllt würden, kann es noch am LG Adapter oder am TV oder an der Kommunikation liegen,
Dazu solltest du die LG Instanz auf Logstufe debug stellen und im log nachsehen -
Also das mit dem "Input" schaut gut aus .. vielleicht lag da irgendwo ein Furz quer .. aber bei App passiert Unterschiedliches. Der App-Entwickler meinte am Adapter sollte es nicht liegen .. da es von den Objekten aus funktioniert.
-
@daniello
Nun ist "lg_firetv" vom Typ "boolean"? Dann passt common.def nicht! -
@daniello sagte in Skript reagiert nicht mehr auf Aktualisierung von Objekt:
aber bei App passiert Unterschiedliches.
was denn?
bitte beachten:
https://forum.iobroker.net/topic/51555/hinweise-für-gute-forenbeiträge/1das hier
kann ich nicht entziffern
und aus den Objektdaten kann ich nicht zitieren
-
Oje .. hab ich inzwsichen alles verbastelt?
{ "_id": "0_userdata.0.lg_firetv", "type": "state", "common": { "name": "lg_firetv", "role": "", "type": "boolean", "read": true, "write": true, "states": "false:no;true:yes", "desc": "Manuell erzeugt", "def": "", "smartName": { "de": "", "smartType": "SWITCH" } }, "native": {}, "acl": { "object": 1636, "state": 1636, "owner": "system.user.admin", "ownerGroup": "system.group.administrator" }, "from": "system.adapter.admin.0", "user": "system.user.admin", "ts": 1750594714227 }
App über Skript
2025-06-22 16:50:05.608 - debug: lgtv.0 (1610) State change "states.launch" - VALUE: Fire TV 2025-06-22 16:50:05.609 - debug: lgtv.0 (1610) Sending launch command Fire TV to WebOS TV: 192.168.178.221 2025-06-22 16:50:05.609 - debug: lgtv.0 (1610) Opening app Fire TV on WebOS TV: 192.168.178.221
App über Adapterobjekt
2025-06-22 16:47:55.329 - debug: lgtv.0 (1610) Connection closed: 1000 2025-06-22 16:47:55.821 - debug: lgtv.0 (1610) Connecting to WebOS TV: wss://192.168.178.221:3001 2025-06-22 16:47:55.960 - debug: lgtv.0 (1610) WebOS TV Connected 2025-06-22 16:47:56.180 - debug: lgtv.0 (1610) audio/getSoundOutput: {} 2025-06-22 16:47:56.184 - debug: lgtv.0 (1610) audio/getVolume: {"muted":false,"scenario":"mastervolume_tv_speaker","active":false,"action":"requested","volume":10,"returnValue":true,"subscribed":true,"changed":["muted","volume"]} 2025-06-22 16:47:56.187 - debug: lgtv.0 (1610) DEBUGGING getForegroundAppInfo: {"appId":"com.webos.app.livetv","subscribed":true,"returnValue":true,"windowId":"","processId":"n-2205"} 2025-06-22 16:47:56.188 - debug: lgtv.0 (1610) cur app is com.webos.app.livetv 2025-06-22 16:47:56.196 - debug: lgtv.0 (1610) tv/getCurrentChannel: {"channelId":"3_49_2_0_1079_11110_1","signalChannelId":"1079_11110_1","channelModeId":1,"channelModeName":"Cable","channelTypeId":4,"channelTypeName":"Cable Digital TV","channelNumber":"2","channelName":"ZDF HD","physicalNumber":49,"isSkipped":false,"isLocked":false,"isDescrambled":false,"isScrambled":false,"isFineTuned":false,"isInvisible":false,"favoriteGroup":null,"hybridtvType":"HBBTV","dualChannel":{"dualChannelId":null,"dualChannelTypeId":null,"dualChannelTypeName":null,"dualChannelNumber":null},"returnValue":true} 2025-06-22 16:47:56.225 - debug: lgtv.0 (1610) getCurrentSWInformation: {"returnValue":true,"product_name":"webOS","model_name":"HE_DTV_WT1M_AFAAABAA","sw_type":"FIRMWARE","major_ver":"05","minor_ver":"05.90","country":"DE","device_id":"3c:cd:93:68:dc:dc","auth_flag":"N","ignore_disable":"N","eco_info":"01","config_key":"00","language_code":"de-DE"} 2025-06-22 16:47:56.227 - debug: lgtv.0 (1610) getSystemInfo: {"features": {"3d":true,"dvr":true},"receiverType":"dvb","modelName":"42LB730V- ZD","returnValue":true} 2025-06-22 16:47:56.233 - debug: lgtv.0 (1610) Service list: {"services":[{"name":"api","version":1},{"name":"audio","version":1}, {"name":"media.controls","version":1}, {"name":"media.viewer","version":1},{"name":"pairing","version":1}, {"name":"system","version":1},{"name":"system.launcher","version":1}, {"name":"system.notifications","version":1},{"name":"tv","version":1}, {"name":"webapp","version":2}],"returnValue":true} 2025-06-22 16:47:59.219 - debug: lgtv.0 (1610) tv/getCurrentChannel: {"channelId":"3_49_2_0_1079_11110_1","signalChannelId":"1079_11110_1","channelModeId":1,"channelModeName":"Cable","channelTypeId":4,"channelTypeName":"Cable Digital TV","channelNumber":"2","channelName":"ZDF HD","physicalNumber":49,"isSkipped":false,"isLocked":false,"isDescrambled":false,"isScrambled":false,"isFineTuned":false,"isInvisible":false,"favoriteGroup":null,"hybridtvType":"HBBTV","dualChannel":{"dualChannelId":null,"dualChannelTypeId":null,"dualChannelTypeName":null,"dualChannelNumber":null},"returnValue":true} 2025-06-22 16:48:00.840 - debug: lgtv.0 (1610) State change "states.launch" - VALUE: com.webos.app.hdmi2 2025-06-22 16:48:00.840 - debug: lgtv.0 (1610) Sending launch command com.webos.app.hdmi2 to WebOS TV: 192.168.178.221 2025-06-22 16:48:00.841 - debug: lgtv.0 (1610) Opening app com.webos.app.hdmi2 on WebOS TV: 192.168.178.221 2025-06-22 16:48:01.186 - debug: lgtv.0 (1610) DEBUGGING getForegroundAppInfo: {"appId":"com.webos.app.hdmi2","returnValue":true,"windowId":"","processId":"1054"} 2025-06-22 16:48:01.186 - debug: lgtv.0 (1610) cur app is com.webos.app.hdmi2
-
@daniello sagte: hab ich inzwsichen alles verbastelt?
Wenn es nun doch "boolean" sein soll, ändere:
"role": "switch", "type": "boolean", "read": true, "write": true, "states": { "false": "no", "true": "yes" }, "desc": "Manuell erzeugt", "def": false,
-
Danke Paul .. hab ich gemacht .. wirft allerdings sofort wieder diese Warnung:
Object 0_userdata.0.lg_firetv is invalid: obj.common.states has an invalid type! Expected "object", received "string" This will throw an error up from js-controller version 7.0.0!
Macht mich Irre diese Meldung .. hatte vormals auf String gestellt war aber auch wieder falsch
-
@daniello sagte: Expected "object"
Das kann nicht sein, wenn common.type = "boolean" ist.
Woher kommt der String?@daniello sagte in Skript reagiert nicht mehr auf Aktualisierung von Objekt:
hatte vormals auf String gestellt war aber auch wieder falsch
Offenbar wird doch ein String geschrieben?EDIT: Die Meldung betrifft common.states
-
Hab mal history angemacht für das Objekt:
Wobei die Warnung von Admin kommt .. also wenn ich am Objekt ändere. Beschicken tut das Feld nur der iot Adapter.
Kann es sein, das IOT ordentlich True/False sendet und der Admin das was wiederum beim Ändern des Objekts True und False als String interpretiert?
-
@daniello schreibt der true/false oder 1/0 oder "true"/"false"?
edit:
oder gar
@daniello sagte in Skript reagiert nicht mehr auf Aktualisierung von Objekt:"states": "false:no;true:yes",
-
@daniello sagte: Wobei die Warnung von Admin kommt
Die Warnung erzeugt der js-controller.
@daniello sagte in Skript reagiert nicht mehr auf Aktualisierung von Objekt:
Kann es sein, das IOT ordentlich True/False sendet und der Admin das was wiederum beim Ändern des Objekts True und False als String interpretiert?
Nein, es kann sein dass IOT "false" und "true" (als String) sendet? Ich kenne IOT nicht.
Es lässt sich leicht prüfen: -
-
@daniello sagte in Skript reagiert nicht mehr auf Aktualisierung von Objekt:
Ist die Idee
nein, ich will nur wissen was da ankommt.
@daniello sagte in Skript reagiert nicht mehr auf Aktualisierung von Objekt:
gibt "boolean" aus.
das dürfte dann nicht als String interpretiert werden.
@daniello sagte in Skript reagiert nicht mehr auf Aktualisierung von Objekt:
Hab mal history angemacht für das Objekt:
auch loggen von Quelle aktiviert?
kommt da von verschiedenen Quellen ein Wert? -
-
danke .. Objekt scheint jetzt ok zu sein
"Quelle aktivieren" finde ich nicht .. aber es kommt nur was von iot.0
Input schalten funktioniert weiterhin auch per Skript. Launch app funktioniert weiterhin nur in den Objekten.
Für mein Seelenfrieden genügt die Umschaltung über Input .. aber technisch sollte auch das andere funktionieren.