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.
    • P
      pix last edited by

      @LaGra:

      Hallo Pix.

      Mir geht es nicht darum den LG Fernseher einzuschalten. Dies erledigt mein Broadlink via IR.

      Ich versuche im laufenden Betrieb des TV diesen auf zB.: HDMI 1 umzuschalten.

      on({id: 'javascript.0.scriptEnabled.Kanäle_TV.HDMI_Steamlink', change: "ne"}, function (obj) {
        var value = obj.state.val;
        var oldValue = obj.oldState.val;
        if (getState("javascript.0.scriptEnabled.Kanäle_TV.HDMI_Steamlink").val === false) {
          setState( "lgtv.0.input"/*Select input source*/,'HDMI_1',on);
        }
      });
      

      oder auch

      on({id: 'javascript.0.scriptEnabled.Kanäle_TV.HDMI_Steamlink', change: "ne"}, function (obj) {
        var value = obj.state.val;
        var oldValue = obj.oldState.val;  {
          setState( "lgtv.0.input",'HDMI_1' );
        }
      });
      

      Tun dies mit zB.: Alexa, schalte Steamlink ein.

      Der Script wird erkannt und der TV schaltet auch auf HDMI1 um.

      Nur leider etwas unsauber, da er eine Fehlermeldung in den Log schreibt.

      ` > javascript.0 2017-11-24 08:59:10.498 info Start javascript script.js.Kanäle_TV.HDMI_Steamlink

      javascript.0 2017-11-24 08:59:10.491 warn at Object. (script.js.Fernseher.Steamlink:4:5)

      javascript.0 2017-11-24 08:59:10.473 warn Wrong type of lgtv.0.input: "string". Please fix, while deprecated and will not work in next versions. `

      Ich wollte später auch HDMI2 und HDMI3 jeweils durch einen eigenen Script mit Alexa steuerbar machen. So das ich meine

      PS4 und Kodibox nutzen kann.

      Ich habe keine Erfahrung mit Javascript und bin daher froh, dass ich es bis hierher schon geschafft habe. Allerdings nervt mich diese Fehlermeldung.

      Wie kann ich die umgehen? Ein Scriptbeispiel wäre echt nett, da ich sonst wirklich nur Bahnhof verstehe, wenn die ITler mit

      ihren Texten um die Ecke kommen.

      MfG LaGra `

      Kannst du bitte das gesamte Skript posten, das den Fehler verursacht? Im Log steht, das Zeile 4 ab Zeichen 5 ein Problem macht.

      Die Zeile darunter sagt, dass der Datenpunkt mit einer Zeichenkette gefüllt wird. Das ist aber falsch. Ich vermute, es muss eine Zahl rein. Ich vermute 0 für HDMI1, 1 für HDMI 2 usw.

      Mit Steam Link kenne ich mich nicht aus. Gibt es einen Adapter, der das Signal schickt?

      Das zweite Code-Beispiel im zitierten Post hat ja auch einen Fehler: Da sind geschweifte Klammern, aber es gibt keine IF-Abfrage. Die davor stattfinden Zuweisung der Variablen ist auch nicht nötig, da diese Variablen nicht weiter verwendet werden.

      Sehe ich das richtig? Deine Alexa-Anbindung schaltet das ganze Skript javascript.0.scriptEnabled.Kanäle_TV.HDMI_Steamlink ein?

      Ich würde für jeden HDMI Kanal ein Boolean-Objekt anlegen und das als Smartobjekt mit Alexa verbinden

      const delay = 3; // Verzögerung in s bis zu Rückstellung der Objekte auf false
      
      const idHDMI1 = 'javascript.0.Kanäle_TV.HDMI1';
      const idHDMI2 = 'javascript.0.Kanäle_TV.HDMI2';
      const idHDMI3 = 'javascript.0.Kanäle_TV.HDMI3';
      const idKanal = "lgtv.0.input"/*Select input source*/;
      
      createStates(idHDMI1, false, {
         name: 'HDMI 1',
         type: boolean,
         role: 'switch',
         smartName:	{
             de: 'Eingang eins'
          }
      };
      createStates(idHDMI2, false, {
         name: 'HDMI 2',
         type: boolean,
         role: 'switch',
         smartName:	{
             de: 'Eingang zwei'
          }
      };
      createStates(idHDMI3, false, {
         name: 'HDMI 3',
         type: boolean,
         role: 'switch',
         smartName:	{
             de: 'Eingang drei'
          }
      };
      
      on(idHDMI1, function(obj) {
          if (obj.state.val) setState(idKanal, 0);
          setStateDelayed(idHDMI1, false, delay * 1000);
      });
      on(idHDMI2, function(obj) {
          if (obj.state.val) setState(idKanal, 1);
          setStateDelayed(idHDMI2, false, delay * 1000);
      });
      on(idHDMI3, function(obj) {
          if (obj.state.val) setState(idKanal, 2);
          setStateDelayed(idHDMI3, false, delay * 1000);
      });
      
      

      Das Skript setzt voraus, dass lgtv.0.input auf Zahlen wartet. Das Skript legt automatisch Smartnames an. Also nur Alexa Smarthome Geräte aktualisieren. Danach sollte "Alexa, schalte Eingang eins ein" auf HDMI1 schalten, usw.

      Nach dem Aufruf durch Alexa wird das Objekt auf true gesetzt und dadurch im Skript die entsprechende Funktion ausgelöst (1,2 oder 3). Darin wird dann der passende Befehl zum Schalten des TV abgesetzt (setState()). Damit Alexa später mal wieder auf diesen Eingang schalten kann (true), muss dieser wieder auf false zurückgesetzt werden. Das passiert dann zweitversetzt nach delay Sekunden.

      Bitte um Feedback!

      Pix

      1 Reply Last reply Reply Quote 0
      • L
        LaGra last edited by

        Hallo Pix.

        Hat sich bereits erledigt. Funktioniert jetzt alles zu meiner Zufriedenheit.

        Ich habe jetzt wie von gBonfire empfohlen den Type im Reiter Objekte von "Logikwert" auf "Zeichenkette" geändert

        3319_objekt.png

        und anschießend diesen Blockly getüftelt.

        3319_script.png

        Jetzt kann ich nachdem ich im Cloud Adapter den Script ausgewählt habe und mit Namen versehen habe

        diesen auch mit Alexa steuern.

        zB.: Alexa, Steamlink an

        Schon schaltet der TV auf HDMI1 ohne Fehlermeldung in Log.

        Das ganze geht auch mit lg.0.launch oder lg.0.channel

        bei lg.0.launch

        3319_livetv.png

        und bei lg.0.channel

        3319_rtl.png

        allerdings muss man bei lg.0.channel im Reiter Objekte keine Änderung vornehmen.

        > Mit Steam Link kenne ich mich nicht aus. Gibt es einen Adapter, der das Signal schickt?

        Würde mich freuen wenn es dafür mal irgendwann einen Adapter geben würde.

        Der Steamlink ist eine Streamingbox von Value um Steam Spiele auf dem TV zu spielen.

        MfG LaGra

        1 Reply Last reply Reply Quote 0
        • P
          pix last edited by

          Hallo,

          danke fürs Posten der Lösung. Immer gut, wenn auf eine Frage auch die Lösung kommt. Dann könne auch andere profitieren.

          Adapterwünsche bitte separat in einem eigenen Thread veröffentlichen "Adapterwunsch: Steamlink"

          Gruß

          Pix

          1 Reply Last reply Reply Quote 0
          • D
            dermario last edited by

            Hi, wie würde eine Lösung für

            "Alexa, Fernseher leiser" / lauter aussehen? Es müsste dann z.B. 5x auf "VolumeUp" gedrückt werden (weil man sonst die Veränderung nicht merkt) muss ja irgendwie mit dem Schleifenobjekt "wiederhole 5x" eingestellt werden aber bekomme es nicht hin 😞

            1 Reply Last reply Reply Quote 0
            • D
              dermario last edited by

              @dermario:

              Hi, wie würde eine Lösung für

              "Alexa, Fernseher leiser" / lauter aussehen? Es müsste dann z.B. 5x auf "VolumeUp" gedrückt werden (weil man sonst die Veränderung nicht merkt) muss ja irgendwie mit dem Schleifenobjekt "wiederhole 5x" eingestellt werden aber bekomme es nicht hin 😞 `

              Okay, habs einfach über eine Szene hinbekommen, in der ich mit 500ms Verzögerung hintereinander den gleichen Befehl sende 😉 In Alexa dann über eine Routine eingebunden "Alexa, Fernseher lauter" - läuft 🙂

              1 Reply Last reply Reply Quote 0
              • G
                gfn.Bl4ck last edited by

                Ich habe den Adapter erfolgreich konfiguriert und kann auch über den Objekte Reiter im iobroker die Befehle senden.

                Leider taucht mein TV nicht in der Liste der Smart Geräte auf.

                Kann mir dabei jemand helfen?

                1 Reply Last reply Reply Quote 0
                • P
                  pdmetze last edited by

                  @gfn.Bl4ck:

                  Ich habe den Adapter erfolgreich konfiguriert und kann auch über den Objekte Reiter im iobroker die Befehle senden.

                  Leider taucht mein TV nicht in der Liste der Smart Geräte auf.

                  Kann mir dabei jemand helfen? `

                  Meinst du Smart Devices vom Cloud Adapter? Er wird dort nicht automatisch hinzugefügt. Du kannst einzelne Befehle über das Plus-Symbol oben links hinzufügen. Dazu musst du aber vermutlich für jeden Datenpunkt/Befehl ein einzelnes Device erstellen (z.B. je ein Device für "Lauter", "Leiser"…)

                  @SchuetzeSchulz, erstmal Danke für die Arbeit! Ich muss leider nochmal auf den Datenpunkt "on" kommen, leider funktioniert dieser auch nicht, wenn ich in einer App bin (z.B. Netflix)... Kann man das erkennen und kannst du das auch noch einbauen?

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

                    @pdmetze:

                    @SchuetzeSchulz, erstmal Danke für die Arbeit! Ich muss leider nochmal auf den Datenpunkt "on" kommen, leider funktioniert dieser auch nicht, wenn ich in einer App bin (z.B. Netflix)… Kann man das erkennen und kannst du das auch noch einbauen? `

                    Hallo 🙂

                    wie im Github Issue schon beschrieben mal den Adapter vom Github neu installieren und testen 🙂

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

                      Auf Github (und demnächst im offiziellen Repo hoffe ich) liegt die Version 1.0.3:

                      Auf einigen TVs muss zum Wechseln in die Amazon Prime App nicht "prime" als Datenpunkt für "launch" gesetzt werden, sondern "amazon".

                      Auch die Erkennung, ob der Fernseher eingeschaltet ist (Datenpunkt "on") funktioniert jetzt auch zuverlässig (auch wenn man sich am TV in einer App befindet).

                      1 Reply Last reply Reply Quote 0
                      • Plasmachef
                        Plasmachef last edited by

                        Hallo SchuetzeSchulz,

                        erst mal herzlichen Danke für die Arbeit, die du in den Adapter gesteckt hast!

                        Er ist wirklich eine Bereicherung, zumal er zuverlässiger ist als IR-Signale.

                        Leider funktioniert bei mir der Channel-Wechsel nicht.

                        Weder als Wert noch als String bekomme ich mein Gerät zum Umschalten auf einen anderen Sendeplatz.

                        Selbst eine direkte Änderung in den Objekten zeigt keine Wirkung.

                        Kann ich dich dabei unterstützen, dass es bei mir klappt (mein Model: LG 43UF6809)?

                        Schon mal Dank im Voraus.

                        Grüße

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

                          Hallo,

                          vielen Dank für das Lob 🙂

                          Also ich habe das bei mir gerade mal ausprobiert.

                          Setze ich in Objekte lgtv.0.channel auf z.B. 3 schaltet er bei mir auch auf Kanal 3.

                          Wichtig ist, dass diese Kanaländerung natürlich nur für den "Live TV" Modus funktioniert, NICHT wenn

                          Du einen externen Receiver wie z.B. Sky oder Telekom Entertain hast.

                          Ansonsten die Adapterinstanz mal auf "Debug" stellen und versuchen den Kanal zu wecheln.

                          Dann kannst Du ja mal schauen, ob im Log ein Fehler ausgegeben wird.

                          1 Reply Last reply Reply Quote 0
                          • Plasmachef
                            Plasmachef last edited by

                            Hallo SchuetzeSchulz,

                            und danke für die schnelle Antwort.

                            "LiveTV" Modus ist klar … hab ihn aber extra nochmal aktiviert.

                            Hier das gezogene Log:

                            lgtv.0	2018-02-01 18:49:30.445	debug	Polling OnlineStatus
                            lgtv.0	2018-02-01 18:49:30.432	debug	Connecting to WebOS TV: ws://192.168.1.138:3000
                            lgtv.0	2018-02-01 18:49:30.403	debug	Polling channel
                            lgtv.0	2018-02-01 18:48:30.409	debug	Connecting to WebOS TV: ws://192.168.1.138:3000
                            lgtv.0	2018-02-01 18:48:30.405	debug	Connecting to WebOS TV: ws://192.168.1.138:3000
                            lgtv.0	2018-02-01 18:48:30.404	debug	Polling Input
                            lgtv.0	2018-02-01 18:48:30.403	debug	Polling OnlineStatus
                            lgtv.0	2018-02-01 18:48:30.397	debug	Connecting to WebOS TV: ws://192.168.1.138:3000
                            lgtv.0	2018-02-01 18:48:30.395	debug	Polling channel
                            lgtv.0	2018-02-01 18:48:28.674	debug	Connecting to WebOS TV: ws://192.168.1.138:3000
                            lgtv.0	2018-02-01 18:48:28.671	debug	Sending switch to channel 4 command to WebOS TV: 192.168.1.138
                            lgtv.0	2018-02-01 18:48:11.773	debug	Connecting to WebOS TV: ws://192.168.1.138:3000
                            lgtv.0	2018-02-01 18:48:11.771	debug	Switching to LiveTV on WebOS TV: 192.168.1.138
                            lgtv.0	2018-02-01 18:48:11.771	debug	Sending launch command livetv to WebOS TV: 192.168.1.138
                            lgtv.0	2018-02-01 18:47:30.407	debug	Connecting to WebOS TV: ws://192.168.1.138:3000
                            lgtv.0	2018-02-01 18:47:30.400	debug	Connecting to WebOS TV: ws://192.168.1.138:3000
                            lgtv.0	2018-02-01 18:47:30.397	debug	Connecting to WebOS TV: ws://192.168.1.138:3000
                            lgtv.0	2018-02-01 18:47:30.396	debug	Polling Input
                            lgtv.0	2018-02-01 18:47:30.393	debug	Polling OnlineStatus
                            lgtv.0	2018-02-01 18:47:30.391	debug	Polling channel
                            lgtv.0	2018-02-01 18:46:41.112	debug	Connecting to WebOS TV: ws://192.168.1.138:3000
                            lgtv.0	2018-02-01 18:46:41.099	debug	Sending switch to channel 4 command to WebOS TV: 192.168.1.138
                            lgtv.0	2018-02-01 18:46:30.378	info	Ready. Configured WebOS TV IP: 192.168.1.138
                            lgtv.0	2018-02-01 18:46:30.370	info	starting. Version 1.0.3 in /opt/iobroker/node_modules/iobroker.lgtv, node: v6.12.3
                            lgtv.0	2018-02-01 18:46:30.318	debug	statesDB connected
                            lgtv.0	2018-02-01 18:46:30.244	debug	objectDB connected
                            
                            

                            Danke für drüberschaun!

                            Grüße und schönen Abend 🙂

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

                              Hmm, der Adapter macht was es soll und wirft keinen Fehler aus:

                              lgtv.0   2018-02-01 18:46:41.099   debug   Sending switch to channel 4 command to WebOS TV: 192.168.1.138
                              

                              Verstehe ich nicht. Bei mir geht es wie gesagt wunderbar.

                              Können andere mit dem Adapter hier diese Funktion mal austesten???

                              Könnte jetzt höchstens sein, dass Dein TV das - warum auch immer - nicht unterstützt???

                              1 Reply Last reply Reply Quote 0
                              • Plasmachef
                                Plasmachef last edited by

                                Hallo SchuetzeSchulz,

                                da ich leider von Technik bzw. Programmierung nicht viel Ahnung habe, kann ich nur versuchen dich mit Infos zu versorgen 😞

                                Hier gibt es Infos zu dem verwendeten Protokoll:

                                http://developer.lgappstv.com/TV_HELP/i … ations.htm

                                Hier eine Java Lösung:

                                http://book2s.com/java/src/package/com/ … rvice.html

                                Und hier weitere Infos/Kommandos

                                https://www.npmjs.com/package/lgtv2

                                Vielleicht findest du ja bei Gelegenheit mal Zeit drüber zu schauen um die Abweichungen zu entdecken.

                                An dieser Stelle schon mal herzlichen Dank dafür!

                                Viele Grüße

                                P.S.: mach dir aber bitte wegen mir keinen Stress …

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

                                  Hallo,

                                  Grundlage meines Adapters ist <url url="https://www.npmjs.com/package/lgtv2">[](</s>https://www.npmjs.com/package/lgtv2<br/>
                                  )
                                  [https://www.npmjs.com/package/lgtv2](</s>https://www.npmjs.com/package/lgtv2<br/>
                                  )</url>

                                  Demzufolge muss es eigentlich funktionieren. Bisher bist Du leider auch der Einzige wo es nicht funktioniert 😞

                                  Hast Du sonst mal versucht, den Adapter zu deinstallieren und komplett neu zu installieren und einzurichten?

                                  AN ALLE ANDERE: Könnt Ihr bei Euch das Verhalten mal versuchen zu reproduzieren?

                                  1 Reply Last reply Reply Quote 0
                                  • Plasmachef
                                    Plasmachef last edited by

                                    so…

                                    Instanz gelöscht

                                    Adapter gelöscht

                                    Raspi rebootet

                                    Adapter über "Katze" installiert

                                    Instanz angelegt

                                    Instanz IP eingetragen

                                    TV eingeschaltet

                                    TV auf liveTV geschaltet

                                    Kanal 7 aktuell am laufen

                                    Objekt "channel" von Hand geändert (auf 4)

                                    TV unverändert

                                    Objekt "channel" aktualisiert sich (nach ein paar Sekunden) auf 7 zurück

                                    war leider nix 😞

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

                                      Hmm, dann habe ich leider keine Idee 😞

                                      Müssen wir mal auf die anderen warten, ob bei denen das Problem auch auftritt.

                                      1 Reply Last reply Reply Quote 0
                                      • R
                                        rh1212 last edited by

                                        @SchuetzeSchulz:

                                        Hmm, dann habe ich leider keine Idee 😞

                                        Müssen wir mal auf die anderen warten, ob bei denen das Problem auch auftritt. `

                                        Hallo!

                                        danke für Deine Arbeit.

                                        Bei mir funktionier diese funktion auch nicht, also ich wenn die 3 schreibe, dann passiert nichts.

                                        Andere frage, ist das möglich andere Apps alleine hinzufügen die ich auf mein TV habe? oder funktioniert nur mit diese Apps?

                                        Danke!

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

                                          Könnten die, bei denen das Umschalten des Kanals nicht funktioniert mir mal bitte das verwendete TV-Modell nennen?

                                          1 Reply Last reply Reply Quote 0
                                          • R
                                            rh1212 last edited by

                                            @SchuetzeSchulz:

                                            Könnten die, bei denen das Umschalten des Kanals nicht funktioniert mir mal bitte das verwendete TV-Modell nennen? `

                                            LG 55LF652V

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            737
                                            Online

                                            31.6k
                                            Users

                                            79.4k
                                            Topics

                                            1.3m
                                            Posts

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