Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Entwicklung
    4. lgtv Adapter zur Steuerung von LG WebOS SmartTVs

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    lgtv Adapter zur Steuerung von LG WebOS SmartTVs

    This topic has been deleted. Only users with topic management privileges can see it.
    • F
      FloW da FunK @rh1212 last edited by FloW da FunK

      @rh1212

      Hallo rh1212 und Community!
      Ich bin ein kompletter Neuling was ioBroker betrifft und habe es mittels der Anleitung von rh1212 soweit geschafft, dass ich über die "launch app" des LG TV Adapter, unter Erstellung der Objekte und Verwendung von Blockly, gewisse "Apps" auf meinem LG TV zum starten bringe. Wenn ich bei den erstellten Objekten in ioBroker den Button dahinter anklicke, startet auch auf meinem TV jede App die ich anklicke. In Blockly habe ich im Baustein TEXT immer den Wert eingetragen, welchen mir das Objekt Launch App als Wert angezeigt hat (z.B. für HDMI-1 -> com.webos.app.hdmi1) eingetragen.

      Ich binde dann diese Objekte in dem iot.0 Adapter unter "Alexa-Geräte" ein. Jedoch sagt mir der Adapter, dass er manche Objekte nicht einbinden möchte (siehe Screenshot). Warum macht der Adapter das??? Gibt es da vielleicht eine andere Lösung?

      Auch im Log kann ich keine Fehlermeldung finden.
      Danke im Voraus für eure Hilfe 😉

      EDIT: Ich versuche die ganzen Befehle natürlich mittels Echo-dot umzusetzen.

      Logfile.jpg lgtv.0_Adapter.jpg Einbindung_iot_cloud.jpg Blockly.jpg

      1 Reply Last reply Reply Quote 0
      • D
        dirkhe Developer last edited by

        Hast du den smartname korrekt gesetzt? Passt Role und Type ?

        F 1 Reply Last reply Reply Quote 0
        • F
          FloW da FunK @dirkhe last edited by FloW da FunK

          @dirkhe

          Ich habe das alles so wie im Screenshot rechts oben eingegeben. Rolle ist bei allen state und Type bei allen button.
          Was verstehst du unter Smartname? Die ID oder den Namen... entschuldige ich bin wirklich ein Noob gg versuche aber dazu zu lernen. 😉

          Also wie beschrieben funktionieren auch alle button in ioBroker ohne Probleme, jedoch bekomme ich bei der Einbindung in iot.0 Adapter bei mehreren "App's" die im oben angeführten Screenshot angezeigte Botschaft.
          "Gerät lgtv.0.Extras_Ordner.Netflix wurde nicht hinzugefügt.

          EDIT: Habe jetzt ein 'Wake on lan' Script eingebaut und versucht dieses im iot.0 Adapter unter Alexa-Geräte einzubinden. Auch da bekam ich die "Botschaft", dass es nicht hinzugefügt wurde. Es liegt also glaube ich nicht am lgtv.0 Adapter, denn auch die "Wake on Lan" Funktion startet in ioBroker ganz normal. Es wird wohl am iot.0 Adapter liegen.....

          Danke für deine Hilfe
          Lg

          1 Reply Last reply Reply Quote 0
          • D
            dirkhe Developer last edited by

            Geh mal in der Object Ansicht auf den Bleistift. Dann unter RAW, da siehst du den smartname

            {
              "_id": "lgtv.0.states.power",
              "type": "state",
              "common": {
                "name": "Switch TV power",
                "role": "switch",
                "type": "boolean",
                "read": true,
                "write": true,
                "smartName": {
                  "de": "Tv,Fernseher"
                }
              },
              "native": {},
              "acl": {
                "object": 1636,
                "state": 1636,
                "owner": "system.user.admin",
                "ownerGroup": "system.group.administrator"
              },
              "from": "system.adapter.admin.0",
              "user": "system.user.admin",
              "ts": 1584040988961
            }
            
            F 2 Replies Last reply Reply Quote 0
            • F
              FloW da FunK @dirkhe last edited by

              @dirkhe sagte in lgtv Adapter zur Steuerung von LG WebOS SmartTVs:

              "smartName": { "de": "Tv,Fernseher" }

              Hallo dirkhe!

              Beim durchstöbern des Forum habe ich bemerkt, dass mehrere User seit Anfang März probleme mit der Einbindung von Geräten in iot.0 Adapter haben.
              Siehe Link: https://forum.iobroker.net/topic/11288/cloud-adapter-smart-gerät-hinzufügen-geht-nicht/26

              Es liegt also definitiv nicht am lgtv.0 adapter.

              {
                "from": "system.adapter.admin.0",
                "user": "system.user.admin",
                "ts": 1584970466099,
                "common": {
                  "name": "Amazon Prime Video",
                  "role": "button",
                  "type": "object",
                  "desc": "Manuell erzeugt",
                  "read": true,
                  "write": true
                  "smartName": "Amazon"
                  
                },
                "native": {},
                "acl": {
                  "object": 1636,
                  "owner": "system.user.admin",
                  "ownerGroup": "system.group.administrator",
                  "state": 1636
                },
                "_id": "lgtv.0.Extras_Ordner.Amazon_Prime_Video",
                "type": "state"
              }
              

              Wenn ich den Smartname im RAW zu ändern versuche und das Ganze speichere, zeigt er mir sofort eine Fehlermeldung an.Fehler beim Parsen.jpg

              Ich werde die ganzen Einbindungen in iot.0 Adapter mit dem kleinen Workaround machen müssen, wie sie im anderen Thread beschrieben sind.

              Vielen DANK für deine Bemühungen!!!!

              1 Reply Last reply Reply Quote 0
              • F
                FloW da FunK @dirkhe last edited by FloW da FunK

                @dirkhe

                Problem gelöst!!!

                Ich hab einfach den Typ von Button auf Switch geändert und siehe da! Es lässt sich in iot.0 Adapter integrieren und der Sprachbefehl via ALEXA funktioniert auch!!!

                Nochmals DANKE für deine Bemühungen und gesund bleiben! 😉

                1 Reply Last reply Reply Quote 0
                • K
                  kniwweli @knx last edited by

                  @knx hast du es hinbekommen mit netflix?

                  1 Reply Last reply Reply Quote 0
                  • K
                    killroy2 last edited by

                    Hallo,
                    ich verwende Version 1.1.6.
                    Wenn ich Wert false auf
                    lgtv.0.states.power
                    schreibe geht der Fernseher aus, soweit okay.
                    Schreibe ich nochmal false, geht der Fernseher an. Ist das plausibel oder ein Fehler?

                    Vielen Dank

                    1 Reply Last reply Reply Quote 0
                    • D
                      dirkhe Developer last edited by

                      Lt Code dürfte das nicht passieren. Kannst du mal auf debug stellen und das dann hier Posten? Hast du den Haken bei schalte als Fernbedienung gesetzt?

                      K 1 Reply Last reply Reply Quote 0
                      • arteck
                        arteck Developer Most Active last edited by

                        bei mir geht der garnicht an

                        1 Reply Last reply Reply Quote 0
                        • K
                          killroy2 @dirkhe last edited by

                          @dirkhe Nein. Wenn ich "Schalten Sie den Fernseher als Ferbedienungstaste aus" aktiviere so geht turnOff und power nicht mehr. Was macht die Einstellung?

                          Das ist das Log.
                          Erst mache ich aus - ok - "appId":""
                          dann nochmal aus - State change "states.power" - VALUE: false -> Sending turn OFF command to WebOS TV
                          dann geht die Kiste an - "appId":"com.webos.app.livetv"

                          lgtv.0	2020-06-07 10:44:22.109	debug	(14278) tv/getCurrentChannel: {"channelId":"7_22_6_6_1089_12060_1","dualChannel":{"dualChannelId":null,"dualChannelTypeName":null,"dualChannelTypeId":null,"dualChannelNumber":null},"isScrambled":false
                          lgtv.0	2020-06-07 10:44:21.294	debug	(14278) tv/getCurrentChannel: {"channelId":"7_22_6_6_1089_12060_1","dualChannel":{"dualChannelId":null,"dualChannelTypeName":null,"dualChannelTypeId":null,"dualChannelNumber":null},"isScrambled":false
                          lgtv.0	2020-06-07 10:44:20.692	debug	(14278) renew connection in one minute for stable subscriptions...
                          lgtv.0	2020-06-07 10:44:20.671	debug	(14278) cur app is com.webos.app.livetv
                          lgtv.0	2020-06-07 10:44:20.670	debug	(14278) DEBUGGING getForegroundAppInfo: {"subscribed":true,"appId":"com.webos.app.livetv","returnValue":true,"windowId":"","processId":""}
                          lgtv.0	2020-06-07 10:44:20.066	debug	(14278) Sending turn OFF command to WebOS TV: 192.168.0.14
                          lgtv.0	2020-06-07 10:44:20.065	debug	(14278) State change "states.power" - VALUE: false
                          lgtv.0	2020-06-07 10:44:15.680	debug	(14278) TV is off
                          lgtv.0	2020-06-07 10:44:14.177	debug	(14278) DEBUGGING getForegroundAppInfo: {"subscribed":true,"appId":"","returnValue":true,"windowId":"","processId":""}
                          lgtv.0	2020-06-07 10:44:13.988	debug	(14278) Sending turn OFF command to WebOS TV: 192.168.0.14
                          lgtv.0	2020-06-07 10:44:13.988	debug	(14278) State change "states.power" - VALUE: false
                          
                          1 Reply Last reply Reply Quote 0
                          • D
                            dirkhe Developer last edited by

                            Ich habe jetzt gerade mal in den code geschaut:

                            
                                                case 'states.power':
                                                    if (!state.val){
                                                        adapter.log.debug('Sending turn OFF command to WebOS TV: ' + adapter.config.ip);
                                                        if (adapter.config.power){
                                                            sendCommand('button', {name: 'power'}, (err, val) => {
                                                                if (!err) adapter.setState('states.power', state.val, true);
                                                            });
                                                        } else {
                                                            sendCommand('ssap://system/turnOff', {message: state.val}, (err, val) => {
                                                                if (!err) adapter.setState('states.power', state.val, true);
                                                            });
                                                        }
                                                    } 
                            

                            Also so wie ich den code verstehe, wird bei angehakter checkbox ein key-command zum TV geschickt, also quasi, als wenn du auf die Fernbedienung clickst. Sonst wird halt expliziet das Ausschaltkommando geschickt

                            Was mich wundert ist, wie du den state setzt? Der reagiert nämlich nur, wenn du den ack nicht setzt. Und zumindest über die admin konsole bekomme ich das erbeute setzten, wenn der bereits auf false ist, gar nicht hin. Also ich bekomme deine Zeile 7 gar nicht reproduziert. Ich denke, es macht auch kein Sinn, abzufragen ob der TV aus ist, denn vlt. ist aus irgendeinem Grund ein Schiefstand im System, dann hätte man die Möglichkeit, darüber nochmal extra zu schalten.

                            1 Reply Last reply Reply Quote 0
                            • K
                              killroy2 last edited by

                              Ich setzte den State entweder per NodeRed oder in Objekte, Checkbox weg und dann auf den Haken.

                              Wenn ich den Fernseher lange aus habe (> 1 Minute) reagiert er wie ich erwarten würde mit Timeout:

                              } else {
                                  sendCommand('ssap://system/turnOff', {message: state.val}, (err, val) => {
                                  adaptetr.log.error('yyy err' + err);
                                  if (!err) adapter.setState('states.power', state.val, true);                                                                                                                                                                                                            });
                              
                              lgtv.0	2020-06-07 16:53:31.679	debug	(18117) yyy err Error: timeout
                              lgtv.0	2020-06-07 16:53:31.677	debug	(18117) ERROR! Response from TV: Error: timeout
                              

                              Sieht für mich so aus als interpretiert der Ferseher das zweite Kommando falsch.

                              1 Reply Last reply Reply Quote 0
                              • D
                                dirkhe Developer last edited by

                                Wieso den Haken weg? Der ist doch schon weg wenn du das erste mal auf false setzt oder nicht?

                                Wie sieht denn das log aus, wenn du das 1. mal auf false setzt, steht denn dann da "yyy err" ohne fehler?

                                K 1 Reply Last reply Reply Quote -1
                                • K
                                  killroy2 @dirkhe last edited by

                                  @dirkhe genau, checkbox weg (lassen)

                                  Wenn ich den State das erste mal auf false setze kommt kein Fehler

                                  lgtv.0	2020-06-07 18:43:35.963	debug	(20017) TV is off
                                  lgtv.0	2020-06-07 18:43:34.462	debug	(20017) DEBUGGING getForegroundAppInfo: {"subscribed":true,"appId":"","returnValue":true,"windowId":"","processId":""}
                                  lgtv.0	2020-06-07 18:43:34.294	debug	(20017) yyy err null
                                  lgtv.0	2020-06-07 18:43:34.174	debug	(20017) Sending turn OFF command to WebOS TV: 192.168.0.14 Power:false
                                  lgtv.0	2020-06-07 18:43:34.172	debug	(20017) State change "states.power" - VALUE: false
                                  
                                  1 Reply Last reply Reply Quote 0
                                  • D
                                    dirkhe Developer last edited by

                                    Dann hat er power doch auf false gesetzt, also ist die checkbox doch gar nicht mehr gesetzt. Dann kannst du die über die Objekte doch gar nicht mehr auf false setzen?

                                    1 Reply Last reply Reply Quote 0
                                    • K
                                      killroy2 last edited by

                                      screen-capture.webm Ich mache mal ein Video, ich hoffe das klappt.

                                      Anyway, ich habe jetzt einen Filter eingebaut der power zurückliest und keine gleichen Werte schreibt. Somit kann ich den Fernseher über verschiedene Bedienstellen (Vis, Fernbedienung, App) synchron halten.

                                      1 Reply Last reply Reply Quote 0
                                      • D
                                        dirkhe Developer last edited by

                                        Das ist echt interressant, das habe ich eben auch so gemacht, bei mir passiert da nichts im log. Iregndwie komisch...

                                        1 Reply Last reply Reply Quote 0
                                        • S
                                          schmax last edited by

                                          Hi Zusammen,

                                          bin auch fleißig am Testen des Adapters und bislang sehr zufrieden. Leider lassen sich mit meinem Modell keine Sender anwählen, das Thema wurde ja schon ausführlich diskutiert - kann damit aber gut leben.

                                          Woran ich aktuell scheiter: Ich möchte gerne direkt die Amazon Prime Video App starten.

                                          • Sofern der TV bereits an ist und der Adapter verbunden funktioniert der Start der App über Javascript und "LaunchApp" problemlos.
                                          • Sofern der TV jedoch noch aus ist, muss ich diesen zunächst per WOL wecken, auch das klappt soweit einwandfrei. Leider scheitere ich gerade daran, ein Script zu bauen, das nun abwartet bis der Adapter verbunden ist, um DANN die korrekte Amazon Prime Video App zu triggern. Ich habe schon verschiedene Varianten ausprobiert, hier ein Beispiel:
                                            amazon.GIF

                                          Habt ihr dafür eine schlauere Lösung oder einen "Trick", den ich übersehe?

                                          Danke und Grüße
                                          schmax

                                          D 1 Reply Last reply Reply Quote 0
                                          • D
                                            dirkhe Developer @schmax last edited by

                                            @schmax Entweder du macht es über einen timer, der dann dann den Wert nach einer bestimmten Zeit, die du mal beobachten müsstest oder du subscrbst dich an den online datenpunkt und setzt dann den prime app DP und unsubscribst dich anschliessed.
                                            https://github.com/ioBroker/ioBroker.javascript/blob/master/docs/en/javascript.md#unsubscribe

                                            S 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            607
                                            Online

                                            31.8k
                                            Users

                                            79.9k
                                            Topics

                                            1.3m
                                            Posts

                                            lgtv
                                            113
                                            861
                                            274516
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo