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

    • Monatsrückblick - April 2025

    • Minor js-controller 7.0.7 Update in latest repo

    • Save The Date: ioBroker@Smart Living Forum Solingen, 14.06.

    lgtv Adapter zur Steuerung von LG WebOS SmartTVs

    This topic has been deleted. Only users with topic management privileges can see it.
    • M
      Miata last edited by

      Ich habe den IOBroker seit ein paar Tagen, um meinen LG über Alexa zu steuern.
      Erst einmal Lob an @SchuetzeSchulz für die gute Arbeit.
      Ich habe auch das Problem, dass eine direkte Kanal-Anwahl nicht funktioniert.

      Equipment:
      LG 60UH7709
      SW 05.30.65
      WebOS 3.3.4-4316

      Ich habe mich einmal mit dem NodeJS Modul von @hobbyquaker beschäftigt und den Befehl
      lgtv.request('ssap://tv/openChannel', {channelNumber: '1'});
      ausgeführt. Ergebnis: der LG schaltet auf Kanal 1 🙂

      Frage: gibt es eine Möglichkeit diese Befehle direkt einzugeben?

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

        Hast Du mal versucht, den Datenpunkt "states.channel" mit einer Ziffer zu beschreiben?

        M 1 Reply Last reply Reply Quote 0
        • M
          Miata @SchuetzeSchulz last edited by

          @SchuetzeSchulz

          Danke für die Antwort
          Eine direkte Kanalwahl über den LGTV Adapter funktioniert nicht

          Ich habe mich in der Zwischenzeit etwas mit JavaScript beschäftigt und folgendes Script funktioniert:

          createState("javascript.0.Kanal",1,{type:'number',role:'state'});

          var LGTV = require('lgtv2');
           
          if (getState("lgtv.0.states.on").val) {
              var lgtvobj = new LGTV({
                      url:        'ws://xxx.xxx.xxx.xxx:3000'
              });
           
              on({id: "javascript.0.Kanal", change: 'any'}, function (obj) {
                  if (Number.isInteger(getState("javascript.0.Kanal").val)) {
                      lgtvobj.request('ssap://tv/openChannel', {channelNumber: getState("javascript.0.Kanal").val.toString()}, function (error, response) {
                          if (!error)
                              log("Kanal auf " + getState("javascript.0.Kanal").val + " gesetzt", "info");
                      })
                  }
              })
          }
          .
          Problem bei der Kanalwahl über Alexa sind Kanäle > 100.
          Das ist aber systembedingt.

          Genauso lassen sich Kanäle via Alexa direkt mit Namen ansteuern

          thewhobox 2 Replies Last reply Reply Quote 0
          • thewhobox
            thewhobox @Miata last edited by

            @Miata Hey, mal ein kleiner Verbesserungsvorschlag:
            Du musst nicht dauernd getState benutzen, da du den ja schon in der Variable "obj" hast.

            createState("javascript.0.Kanal",1,{type:'number',role:'state'});
            
            var LGTV = require('lgtv2');
             
            if (getState("lgtv.0.states.on").val) {
            var lgtvobj = new LGTV({
                url:        'ws://xxx.xxx.xxx.xxx:3000'
            });
             
            on({id: "javascript.0.Kanal", change: 'any'}, function (obj) {
                if (Number.isInteger(obj.state.val)) {
                    lgtvobj.request('ssap://tv/openChannel', {channelNumber: obj.state.val}, (error, response) => {
                    if (!error)
                        log("Kanal auf " + obj.state.val + " gesetzt", "info");
                    })
                }
            });
            

            BTW für Code bitte auch den Code-Tag benutzen zwecks leserlichkeit 🙂

            1 Reply Last reply Reply Quote 0
            • thewhobox
              thewhobox @Miata last edited by

              @Miata Ich hab grad mal im Code vom LGTV Adapter nachgeschaut. Der macht genau das gleiche für "channel". Sicher das das dirket nicht geht?

              Wenn du mal nur das in ein Skript einfügst, funktioniert es dann?

              setState('idvomtv.channel', 1);
              
              M 1 Reply Last reply Reply Quote 0
              • S
                SchuetzeSchulz last edited by

                Genau eigentlich macht der Aapter nix anderes...

                1 Reply Last reply Reply Quote 0
                • M
                  Miata @thewhobox last edited by

                  @thewhobox

                  Keine Chance, weder direkt unter Objekte, noch mit Skript

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

                    Moin,

                    habe gerade ein Update auf 1.0.8 gemacht, davor lief noch 1.0.6

                    Nun gehen meine ganzen Scripte nicht mehr.

                    Habe eigentlich meine Scripts alle angepasst bezüglich des neuen Ortes.
                    Bei Objekten werden alle states auch zweimal angezeigt, nehme an einmal von meiner alten Installation und einmal von der neuen?

                    Wenn ich manuell zum Beispiel den state von Launch App ändere, dann schaltet der TV.

                    Mein altes Script funktioniert aber über Alexa nicht mehr.

                    Adapter mal komplett deinstallieren und neu drauf?

                    1 Reply Last reply Reply Quote 0
                    • sigi234
                      sigi234 Forum Testing Most Active last edited by sigi234

                      Hallo,

                      Kann mir wer helfen?

                      Connecting to WebOS TV: ws://192.168.178.57:3000
                      
                      Waiting for pairing confirmation on WebOS TV 192.168.178.57
                      
                      

                      Es kommt keine Meldung am TV

                      Model:
                      LG 43UK6300LLB

                      thewhobox 1 Reply Last reply Reply Quote 0
                      • thewhobox
                        thewhobox @sigi234 last edited by

                        @sigi234 du musst irgendeine Aktion vom Adapter auslösen, danach erscheint erst das popup auf dem TV

                        sigi234 2 Replies Last reply Reply Quote 0
                        • sigi234
                          sigi234 Forum Testing Most Active @thewhobox last edited by

                          @thewhobox sagte in IoBroker.lgtv - Adapter zur Steuerung von LG WebOS SmartTVs:

                          @sigi234 du musst irgendeine Aktion vom Adapter auslösen, danach erscheint erst das popup auf dem TV

                          Danke, geht wieder.
                          Adapter deinstalliert und neu installiert. W-Lan Verbindung neu eingerichtet und eine neue IP vergeben.
                          Erst dann kam eine Aufforderung zum Paring vom TV.

                          1 Reply Last reply Reply Quote 0
                          • sigi234
                            sigi234 Forum Testing Most Active @thewhobox last edited by sigi234

                            @thewhobox

                            Den Kanal via Vis zu schalten geht nicht, oder gibt es schon eine Lösung?
                            Habe mal alles durchgelesen.........

                            Erstelle gerade eine Vis........

                            Screenshot (4076).png

                            thewhobox 1 Reply Last reply Reply Quote 0
                            • thewhobox
                              thewhobox @sigi234 last edited by

                              @sigi234 das funktioniert auf manchen Geräte iwie nicht.

                              K 1 Reply Last reply Reply Quote 0
                              • K
                                keihuli @thewhobox last edited by

                                Hi,
                                mein Abfrage Intervall auf lv.0.states.on ist bei 10 Sekunden.
                                Ich prüfe ob sich der Wert verändert hat.... Leider wird festgestellt das sich dieser Wert alle 10 Sekunden ändert... Ich hätte erwartet wenn der Fernseher aus ist, ändert sich der Wert auch nicht.... Ist das so gewollt?

                                Gruß
                                Kai

                                oberfragger marcuskl 2 Replies Last reply Reply Quote 0
                                • oberfragger
                                  oberfragger @keihuli last edited by

                                  Moin,
                                  ich bin noch ioBroker-Neuling.

                                  Ich habe es geschafft, mittels WOL-Script und natürlich diesem Adapter, den LG aus der Ferne anzuschalten. Für das ausschalten gibt es ja einen entsprechenden Knopf in der Instanz.

                                  Das ganze habe ich dann via Szene an Alexa weitergereicht. Nun funktioniert das eher wie ein Taster. Wenn ich die Scene starte, wird je nach Status der Fernseher an oder ausgeschaltet- also wenn der Fernseher an ist- wird er ausgeschaltet. Wenn er ausgeschaltet ist , wird er angeschaltet. Das ist natürlich doof- wenn der TV an ist und ich bei Alexa auf "an" schalte.. geht der Fernseher aus.

                                  Ich möchte nun irgendwie EINEN Schalter (Switch) definieren den ich an Alexa weiterreiche. Wenn der TV an ist und ich nochmal anmache... passiert nix, wenn er aus ist und ich anmache soll er natürlich "an" gehen.

                                  Wie kann ich das Problem lösen?

                                  1 Reply Last reply Reply Quote 0
                                  • marcuskl
                                    marcuskl @keihuli last edited by marcuskl

                                    @keihuli sagte in IoBroker.lgtv - Adapter zur Steuerung von LG WebOS SmartTVs:

                                    Hi,
                                    mein Abfrage Intervall auf lv.0.states.on ist bei 10 Sekunden.
                                    Ich prüfe ob sich der Wert verändert hat.... Leider wird festgestellt das sich dieser Wert alle 10 Sekunden ändert... Ich hätte erwartet wenn der Fernseher aus ist, ändert sich der Wert auch nicht.... Ist das so gewollt?

                                    Gruß
                                    Kai

                                    Normalerweise ist der Adapter auf 60 sek. Abfrageintervall eingestellt, außer du hast dies auf 10 sek. Geändert ist das normal.
                                    Auch wenn der Fernseher aus ist, startet der Adapter alle X sek. (Die du eingestellt hast) eine Abfrage aller states, auch wenn er aus ist.

                                    Der ferneseher sagt glaub nicht den Adapter "Hallo ich bin jetzt an", sondern der Adapter fragt ab.

                                    Ich bin nicht der Entwickler, aber nach meinem Verständnis funktioniert das so.

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

                                      Ja habe ich auf 10 Sekunden aufgrund von Tests gestellt... Ich frage mich aber wieso mein Skript alle 10 Sekunden feststellt das der Wert geändert worden ist. Obwohl der Fernsehr dauerhaft an bzw. aus. Ich hätte gedacht das ein "Falls Objekt wurde geändert" nur anspringt wenn der Fernseher an oder ausgeschaltet wird....

                                      marcuskl 1 Reply Last reply Reply Quote 0
                                      • marcuskl
                                        marcuskl @keihuli last edited by

                                        @keihuli
                                        Ok normalerweise ist das auch so.
                                        Prüfst du auch mit Logik ob wahr oder falsch?
                                        Wäre vielleicht eine Lösung
                                        Fals Objekt X ist wahr bzw. Falsch mache X

                                        K 1 Reply Last reply Reply Quote 0
                                        • K
                                          keihuli @marcuskl last edited by

                                          @marcuskl
                                          Nein Logik habe ich nicht drin... Anbei der kopierte snippet. Wenn das normalerweise so ist... Aus was prüft den das "wurde geändert"? Auf den Wert true oder false kann ja nicht sein... Schaut es da gleichzeitig noch auf einen Aktualisierungsdatum?

                                          on({id: 'lgtv.0.states.on', change: "ne"}, function (obj) {
                                            var value = obj.state.val;
                                            var oldValue = obj.oldState.val;
                                            on({id: 'lgtv.0.states.on', change: "gt"}, function (obj) {
                                              var value = obj.state.val;
                                              var oldValue = obj.oldState.val;
                                              setStateDelayed('zigbee.0.group_2.state', true, false, parseInt(0, 10), false);
                                              console.log('an');
                                            });
                                          });
                                          
                                          on({id: 'lgtv.0.states.on', change: "ne"}, function (obj) {
                                            var value = obj.state.val;
                                            var oldValue = obj.oldState.val;
                                            on({id: 'lgtv.0.states.on', change: "lt"}, function (obj) {
                                              var value = obj.state.val;
                                              var oldValue = obj.oldState.val;
                                              setStateDelayed('zigbee.0.group_2.state', false, false, parseInt(0, 10), false);
                                              console.log('aus');
                                            });
                                          });
                                          

                                          Unbenannt.PNG

                                          marcuskl 1 Reply Last reply Reply Quote 0
                                          • marcuskl
                                            marcuskl @keihuli last edited by

                                            @keihuli sagte in IoBroker.lgtv - Adapter zur Steuerung von LG WebOS SmartTVs:

                                            @marcuskl
                                            Nein Logik habe ich nicht drin... Anbei der kopierte snippet. Wenn das normalerweise so ist... Aus was prüft den das "wurde geändert"? Auf den Wert true oder false kann ja nicht sein... Schaut es da gleichzeitig noch auf einen Aktualisierungsdatum?

                                            on({id: 'lgtv.0.states.on', change: "ne"}, function (obj) {
                                              var value = obj.state.val;
                                              var oldValue = obj.oldState.val;
                                              on({id: 'lgtv.0.states.on', change: "gt"}, function (obj) {
                                                var value = obj.state.val;
                                                var oldValue = obj.oldState.val;
                                                setStateDelayed('zigbee.0.group_2.state', true, false, parseInt(0, 10), false);
                                                console.log('an');
                                              });
                                            });
                                            
                                            on({id: 'lgtv.0.states.on', change: "ne"}, function (obj) {
                                              var value = obj.state.val;
                                              var oldValue = obj.oldState.val;
                                              on({id: 'lgtv.0.states.on', change: "lt"}, function (obj) {
                                                var value = obj.state.val;
                                                var oldValue = obj.oldState.val;
                                                setStateDelayed('zigbee.0.group_2.state', false, false, parseInt(0, 10), false);
                                                console.log('aus');
                                              });
                                            });
                                            

                                            Unbenannt.PNG

                                            Entschuldige, ich meine du kannst auch prüfen "Wenn Wert x ist gleich on bzw. Off, mache x

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            902
                                            Online

                                            31.6k
                                            Users

                                            79.4k
                                            Topics

                                            1.3m
                                            Posts

                                            lgtv
                                            113
                                            861
                                            238940
                                            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