ioBroker.lgtv - Adapter zur Steuerung von LG WebOS SmartTVs

Wie man einen Adapter entwickelt, oder wie man debuggen kann.
Rookie50
starter
Beiträge: 12
Registriert: 19.01.2017, 09:33

Re: ioBroker.lgtv - Adapter zur Steuerung von LG WebOS SmartTVs

Beitrag von Rookie50 » 03.07.2017, 13:03

Hi,

ich habe ein "hoffentlich kleines" Problem mit meinem LG TV mit WebOS 4.31.05 und dem LGTV Adapter. Der indicator.online erkennt nicht, dass der Fernseher eingeschaltet ist und bleibt auf "false". Ich kann allerdings die Eingänge des Fernsehers (HDMI1, HDMI 2, usw.) mit dem Datenpunkt Input ändern. So kann ich ausschließen, dass es sich um eine falsche IP-Adresse in der Konfiguration handelt.

Mein älterer LG mit der WebOS 1.4.0-2525 funktioniert dabei einwandfrei.

Was könnte das Problem sein? Das Gerät antwortet auf ein ICMP Ping. Allerdings weiß ich nicht, wie der online Status in diesem Adapter abgefragt wird.

Gruß

Robert
CCU2 (2.27.8) mit zig Schalt und Thermostat Aktoren, usw.
ioBroker auf RasPI3

Benutzeravatar
SchuetzeSchulz
professional
Beiträge: 445
Registriert: 11.01.2015, 21:14

Re: ioBroker.lgtv - Adapter zur Steuerung von LG WebOS SmartTVs

Beitrag von SchuetzeSchulz » 03.07.2017, 13:12

Halo Robert,

indicator.online ist aber nicht der Datenpunkt für die Erkennung ob der TV eingeschaltet ist.
Der richtige Datenpunkt sollte "on", also z.B. "lgtv.0.on" sein.

Rookie50
starter
Beiträge: 12
Registriert: 19.01.2017, 09:33

Re: ioBroker.lgtv - Adapter zur Steuerung von LG WebOS SmartTVs

Beitrag von Rookie50 » 03.07.2017, 13:21

SchuetzeSchulz hat geschrieben:Halo Robert,

indicator.online ist aber nicht der Datenpunkt für die Erkennung ob der TV eingeschaltet ist.
Der richtige Datenpunkt sollte "on", also z.B. "lgtv.0.on" sein.
Hi,

natürlich, ich habe in der falschen Spalte geschaut. Der Datenpunkt heißt "on"!!! Mein Fehler :o
Aber die Zeile war richtig ;)

Wie ermittelt der Adapter, ob der TV an oder aus ist?

Gruß
Robert
CCU2 (2.27.8) mit zig Schalt und Thermostat Aktoren, usw.
ioBroker auf RasPI3

Benutzeravatar
SchuetzeSchulz
professional
Beiträge: 445
Registriert: 11.01.2015, 21:14

Re: ioBroker.lgtv - Adapter zur Steuerung von LG WebOS SmartTVs

Beitrag von SchuetzeSchulz » 03.07.2017, 13:25

Eigentlich recht simpel.
Der Adapter fragt vom TV den aktuellen Kanal ab und schreibt diesen in den Datenpunkt "channel".
Im gleichen Zuge (wenn erfolgreich ein Kanal ermittelt wurde), wird der Datenpunkt "on" auf true gesetzt:

Code: Alles auswählen

function pollChannel() {
	adapter.log.debug('Polling channel');
	sendCommand('ssap://tv/getCurrentChannel', null, function (err, channel) 
	{
		var JSONChannel, ch;
		JSONChannel = JSON.stringify(channel);
		if (JSONChannel) ch = JSONChannel.match(/"channelNumber":"(\d+)"/m);
		if (!err && ch) 
		{
			adapter.setState('channel', ch[1], true);
			adapter.setState('on', true, true);
		} 
		else 
		{
			adapter.setState('channel', '', true);
			adapter.setState('on', false, true);
		}
	});
}

Rookie50
starter
Beiträge: 12
Registriert: 19.01.2017, 09:33

Re: ioBroker.lgtv - Adapter zur Steuerung von LG WebOS SmartTVs

Beitrag von Rookie50 » 03.07.2017, 13:33

SchuetzeSchulz hat geschrieben:Eigentlich recht simpel.
Der Adapter fragt vom TV den aktuellen Kanal ab und schreibt diesen in den Datenpunkt "channel".
Im gleichen Zuge (wenn erfolgreich ein Kanal ermittelt wurde), wird der Datenpunkt "on" auf true gesetzt:
Ahhh, und genau da liegt der Hund begraben ;-)

Ich benutzte kein Live TV, sondern einen externen Receiver. Kannst Du evtl. auch dem "input" abfragen? Dann sollten eigentlich alle Verwendungszwecke abgedeckt sein. Soweit ich weiß, wird beim einschalten nicht automatisch eine App geladen.

Gruß

Robert
CCU2 (2.27.8) mit zig Schalt und Thermostat Aktoren, usw.
ioBroker auf RasPI3

Benutzeravatar
SchuetzeSchulz
professional
Beiträge: 445
Registriert: 11.01.2015, 21:14

Re: ioBroker.lgtv - Adapter zur Steuerung von LG WebOS SmartTVs

Beitrag von SchuetzeSchulz » 03.07.2017, 14:10

Hallo Robert,

kannst Du bitte mal den Adapter frisch von Github (https://github.com/SMundt/ioBroker.lgtv) neu installieren und testen?

Rookie50
starter
Beiträge: 12
Registriert: 19.01.2017, 09:33

Re: ioBroker.lgtv - Adapter zur Steuerung von LG WebOS SmartTVs

Beitrag von Rookie50 » 03.07.2017, 14:44

SchuetzeSchulz hat geschrieben:Hallo Robert,

kannst Du bitte mal den Adapter frisch von Github (https://github.com/SMundt/ioBroker.lgtv) neu installieren und testen?
Hi,

getestet!! Nun funktioniert der Datenpunkt auch bei mir! Super gut und danke dafür!!

Darf ich noch einen Änderungswunsch äußern? Ich würde gerne Steckdosen schalten, wenn der Eingang an TV auf HDMI3 und Komponente geschaltet wird. Also per TV Fernbedienung. Dafür müssten der Input abgefragt werden. Ich habe den Datenpunkt "Input" auch schon auf "read" gesetzt, aber es wird nichts abgefragt.

Gruß
Robert
CCU2 (2.27.8) mit zig Schalt und Thermostat Aktoren, usw.
ioBroker auf RasPI3

Benutzeravatar
SchuetzeSchulz
professional
Beiträge: 445
Registriert: 11.01.2015, 21:14

Re: ioBroker.lgtv - Adapter zur Steuerung von LG WebOS SmartTVs

Beitrag von SchuetzeSchulz » 03.07.2017, 14:53

Hallo Robert,

das wäre eher eine Funktion die Du per Script realisieren kannst.
Der Adapter sollte nur für die Fernseher sein :)

So ähnlich sollte das gehen (ungetestet):

Code: Alles auswählen

function Schalte_Steckdosen(){
	var TVInput = getState("lgtv.0.input").val;
	if (TVInput = "HDMI_3")
	{
		// Hier das Ausführen, was bei TV Input HDMI3 passieren soll
	}
	if (TVInput = "COMP_1")
	{
		// Hier das Ausführen, was bei TV Input Komponente passieren soll
	}
}

Rookie50
starter
Beiträge: 12
Registriert: 19.01.2017, 09:33

Re: ioBroker.lgtv - Adapter zur Steuerung von LG WebOS SmartTVs

Beitrag von Rookie50 » 03.07.2017, 15:42

SchuetzeSchulz hat geschrieben:Hallo Robert,

das wäre eher eine Funktion die Du per Script realisieren kannst.
Der Adapter sollte nur für die Fernseher sein :)
Ja natürlich sollte es nur für den Fernseher bleiben ;-)

Du hast mich da falsch verstanden. Ich benötige auch nur das Auslesen des am TV eingestellten Eingangs. Leider gibt es bei Deinem Adapter keine Änderung von "input", wenn ich den Eingang am TV mit der Fernbedienung umschalte.

Gruss

Robert
CCU2 (2.27.8) mit zig Schalt und Thermostat Aktoren, usw.
ioBroker auf RasPI3

Benutzeravatar
SchuetzeSchulz
professional
Beiträge: 445
Registriert: 11.01.2015, 21:14

Re: ioBroker.lgtv - Adapter zur Steuerung von LG WebOS SmartTVs

Beitrag von SchuetzeSchulz » 03.07.2017, 15:47

Ach das meinst Du :) Sorry...

Das geht leider nicht, da es im LG TV SDK leider keinen Befehl zum Abfragen des derzeit eingestellten Eingangs gibt :(

Rookie50
starter
Beiträge: 12
Registriert: 19.01.2017, 09:33

Re: ioBroker.lgtv - Adapter zur Steuerung von LG WebOS SmartTVs

Beitrag von Rookie50 » 03.07.2017, 17:09

ohh, dass ist sehr schade. Dann muss ich mal schauen, ob ich das irgendwie anders lösen kann.

Aber trotzdem danke!!! für Deine tolle Arbeit am Adapter.

Gruß

Robert
CCU2 (2.27.8) mit zig Schalt und Thermostat Aktoren, usw.
ioBroker auf RasPI3

hobbyquaker
Site Admin
Beiträge: 21
Registriert: 13.07.2014, 10:41
Kontaktdaten:

Re: ioBroker.lgtv - Adapter zur Steuerung von LG WebOS SmartTVs

Beitrag von hobbyquaker » 04.07.2017, 13:25

SchuetzeSchulz hat geschrieben:Ach das meinst Du :) Sorry...

Das geht leider nicht, da es im LG TV SDK leider keinen Befehl zum Abfragen des derzeit eingestellten Eingangs gibt :(
doch, das geht. Mit meiner lgtv2 lib einfach ein subscribe auf getForegroundAppInfo machen (hdmi eingänge sind auch nur "apps")

Benutzeravatar
SchuetzeSchulz
professional
Beiträge: 445
Registriert: 11.01.2015, 21:14

Re: ioBroker.lgtv - Adapter zur Steuerung von LG WebOS SmartTVs

Beitrag von SchuetzeSchulz » 04.07.2017, 19:41

Danke Hobbyquaker für den Tip,

ohne Deine Lib wäre der Adapter eh so gut wie wertlos :)

@Robert: Kannst Du den Adapter nochmal direkt von der Github-URL installieren und testen ob der Input jetzt in den Datenpunkt geschrieben wird?

kmxak
professional
Beiträge: 848
Registriert: 10.03.2017, 21:00

Re: ioBroker.lgtv - Adapter zur Steuerung von LG WebOS SmartTVs

Beitrag von kmxak » 04.07.2017, 20:06

habe es getestet aber ich finde es etwas verwirrend.

Zu einen kommt die Meldung das er an ist erst nach 1-2 minuten. Gut das ist bestimmt eine einstellungssache.

Den Input hat er zumindest bei mir nicht gewechselt.

Auch finde ich es etwas wirr mit dem Input und dem launch

Fände es besser mit aktueller Status
und input und launch als wählbare umschaltziele zusammen.
Gruß Alex

HP Gen 8 ESXi + HP Gen 7 ESXi Backup Server - VM Debian FHEM + ioBroker
Pi3 RaspberryMatic, Wemos D1, NodeMCU, Odroid C2, Pi3 + Zero W

Benutzeravatar
SchuetzeSchulz
professional
Beiträge: 445
Registriert: 11.01.2015, 21:14

Re: ioBroker.lgtv - Adapter zur Steuerung von LG WebOS SmartTVs

Beitrag von SchuetzeSchulz » 04.07.2017, 20:57

Den Intervall kannst Du in der Adapterkonfiguration einstellen.

Das mit launch und input habe ich jetzt nicht verstanden.

launch ist für das Starten von Apps und input zum Auslesen des aktuellen Eingangs und zum Umschalten der Eingänge am Fernseher.
Was ist daran verwirrend? Verstehe ich gerade leider nicht.

kmxak
professional
Beiträge: 848
Registriert: 10.03.2017, 21:00

Re: ioBroker.lgtv - Adapter zur Steuerung von LG WebOS SmartTVs

Beitrag von kmxak » 04.07.2017, 21:10

bei mir steht dann manchmal in beiden was.
Ohne am TV zu schauen weiß ich nicht was gerade aktiv ist.

2 Objekte wären gut.

einmal aktuell aktive app
und einmal eine auswahl mit allen apps (auch eingänge) die man schalten kann
Gruß Alex

HP Gen 8 ESXi + HP Gen 7 ESXi Backup Server - VM Debian FHEM + ioBroker
Pi3 RaspberryMatic, Wemos D1, NodeMCU, Odroid C2, Pi3 + Zero W

Benutzeravatar
SchuetzeSchulz
professional
Beiträge: 445
Registriert: 11.01.2015, 21:14

Re: ioBroker.lgtv - Adapter zur Steuerung von LG WebOS SmartTVs

Beitrag von SchuetzeSchulz » 04.07.2017, 21:31

Hmm, ich warte mal auf Meinungen anderer User.
Bei mir steht auch in beiden was. In "Input" der aktuelle Eingang und in "launch" die zuletzt mittels Datenpunkt gestartete App.

Für welchen Zweck bräuchtest Du denn die aktuell aktive App?

kmxak
professional
Beiträge: 848
Registriert: 10.03.2017, 21:00

Re: ioBroker.lgtv - Adapter zur Steuerung von LG WebOS SmartTVs

Beitrag von kmxak » 04.07.2017, 21:36

brauchen nicht unbedingt.

Dachte mit deiner letzten Änderung wäre das möglich.

Vielleicht läuft da was bei mir auch nicht richtig. Ich muss mir das nochmal genau ansehen hab aber wenig zeit aktuell.
Gruß Alex

HP Gen 8 ESXi + HP Gen 7 ESXi Backup Server - VM Debian FHEM + ioBroker
Pi3 RaspberryMatic, Wemos D1, NodeMCU, Odroid C2, Pi3 + Zero W

Rookie50
starter
Beiträge: 12
Registriert: 19.01.2017, 09:33

Re: ioBroker.lgtv - Adapter zur Steuerung von LG WebOS SmartTVs

Beitrag von Rookie50 » 05.07.2017, 10:13

Hallo SchuetzeSchulz,

ganz klar, DAUMEN HOCH!!! Jetzt funktioniert der Adapter so, wie ich ihn einsetzten möchte. Wähle ich einen Eingang, wird die entsprechende Steckdose meiner mFi Powerleiste eingeschaltet. Sobald ich den Fernseher ausschalte, werden die Steckdosen, abhängig vom Gerät nach kurzer Zeit wieder ausgeschaltet.

Ich danke Dir und auch hobbyquaker für die, zumindest für mich, sinnvollen Änderungen!!!

Gruß
Robert
CCU2 (2.27.8) mit zig Schalt und Thermostat Aktoren, usw.
ioBroker auf RasPI3

hobbyquaker
Site Admin
Beiträge: 21
Registriert: 13.07.2014, 10:41
Kontaktdaten:

Re: ioBroker.lgtv - Adapter zur Steuerung von LG WebOS SmartTVs

Beitrag von hobbyquaker » 05.07.2017, 16:21

Hab grade gesehn dass du das per polling abfragst. Würde ich von abraten, ist dank der subscribe Methode der lgtv2 lib nicht notwendig.

Antworten