[82_LGTV_WebOS.pm] Modul für LG TV's mit WebOS

Begonnen von CoolTux, 08 Februar 2017, 00:02:58

Vorheriges Thema - Nächstes Thema

CoolTux

Zitat von: the ratman am 14 Februar 2017, 18:16:40
trotz deiner lib ... absturz

Ich werde in der nächsten Version heute Abend mal einen Schutz einbauen.
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

CoolTux

Zitat von: ToM_ToM am 14 Februar 2017, 18:19:46
Hier nochmal das Log vom 1. Absturzt mit dem neuen Modul.
Kann es sein dass du auf ein Reading zugreifen möchtest welches es bei mir noch nicht gibt?

2017.02.14 15:54:00 1: readingsUpdate(LG55UH950V,state,on) missed to call readingsBeginUpdate first.
2017.02.14 15:54:00 1: stacktrace:
2017.02.14 15:54:00 1:     main::readingsBulkUpdate            called by /opt/fhem/FHEM/82_LGTV_WebOS.pm (312)
2017.02.14 15:54:00 1:     main::LGTV_WebOS_TimerStatusRequest called by /opt/fhem/FHEM/82_LGTV_WebOS.pm (684)
2017.02.14 15:54:00 1:     main::LGTV_WebOS_Handshake          called by /opt/fhem/FHEM/82_LGTV_WebOS.pm (528)
2017.02.14 15:54:00 1:     main::LGTV_WebOS_Open               called by /opt/fhem/fhem.pl (2902)
2017.02.14 15:54:00 1:     main::HandleTimeout                 called by /opt/fhem/fhem.pl (606)
2017.02.14 15:54:00 1: readingsUpdate(LG55UH950V,presence,present) missed to call readingsBeginUpdate first.
2017.02.14 15:54:00 1: stacktrace:
2017.02.14 15:54:00 1:     main::readingsBulkUpdate            called by /opt/fhem/FHEM/82_LGTV_WebOS.pm (313)
2017.02.14 15:54:00 1:     main::LGTV_WebOS_TimerStatusRequest called by /opt/fhem/FHEM/82_LGTV_WebOS.pm (684)
2017.02.14 15:54:00 1:     main::LGTV_WebOS_Handshake          called by /opt/fhem/FHEM/82_LGTV_WebOS.pm (528)
2017.02.14 15:54:00 1:     main::LGTV_WebOS_Open               called by /opt/fhem/fhem.pl (2902)
2017.02.14 15:54:00 1:     main::HandleTimeout                 called by /opt/fhem/fhem.pl (606)
garbage after JSON object, at character offset 118 (before "\x{81}j{"type":"resp...") at /opt/fhem/FHEM/82_LGTV_WebOS.pm line 746.
2017.02.14 15:54:01 1: BlockingInformParent (BlockingStart): Can't connect to localhost:49719: IO::Socket::INET: connect: Verbindungsaufbau abgelehnt


Das ist interessant. Vielen Dank.
Ich muss mal schauen. Kann es sein das die Leute bei denen es Abstürzt sehr aktuell ist und bei denen wo es geht paar Wochen kein Update gemacht wurde?
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

CoolTux

Zitat von: vitolinker am 14 Februar 2017, 18:17:49
Alles läuft immer noch bei mir, bei der Firmware habe ich Version 4.05.45 bei einem 55EG9109.
Bei den Einstellungen habe ich den Eindruck, dass der Fernseher mit MagicRemote sehr langsam reagiert. Vielleciht haben wir mit den vielen Readings jetzt auch Last auf dem TV erzeugt.
Vielleicht wollen wir die Abfragefrequenz konfigurierbar machen?
Fürs Testen so 10s und später vielleicht dann auf 30 oder 60s um die Last gering zu halten?

Das können wir gerne dann noch einstellbar machen. Im Moment wird alle 15s 5mal was abgerufen. Immer mit 2s Verzögerung.
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

ToM_ToM

Hey, habe es jetzt nochmal mit Verbose 5 gestartet.
Auffällig ist, dass fhem mit der neuen Modul-Version ca. 5 min zum starten braucht und mein Pi auf volle 1008 MHz läuft.
Danach kommt aber trotzdem der Absturz.
Anbei die letzten Zeilen des LOGs:

2017.02.14 18:27:08 4: LGTV_WebOS (LG55UH950V) - ReadFn gestartet
2017.02.14 18:27:08 5: LGTV_WebOS (LG55UH950V) - received correct JSON string, start response processing: {"type":"error","id":"request_1487093214.70804","error":"401 insufficient permissions (not registered)","payload":{}}j{"type":"response","id":"register_1487093214.97782","payload":{"pairingType":"PROMPT","returnValue":true}}
2017.02.14 18:27:08 4: LGTV_WebOS (LG55UH950V) - JSON detected, run LGTV_WebOS_WriteReadings
2017.02.14 18:27:08 5: LGTV_WebOS (LG55UH950V) - Corrected JSON String: {"type":"error","id":"request_1487093214.70804","error":"401 insufficient permissions (not registered)","payload":{}}j{"type":"response","id":"register_1487093214.97782","payload":{"pairingType":"PROMPT","returnValue":true}}
garbage after JSON object, at character offset 118 (before "\x{81}j{"type":"resp...") at /opt/fhem/FHEM/82_LGTV_WebOS.pm line 768.
Hardware: BananaPi, Busmaster CUL, SanDisk 16GB Ultra SD, 16 GB USB-Stick | Software: Armbian, FHEM 5.8

vitolinker

Ich glaube was unseren braven LG ausbremst ist die Abfrage nach dem TV Guide, hier kommt quasi das ganze Abendprogramm ziemlich geschwätzig rein. Getestet mit Verbose 5 im Eventmonitor bei laufendem TV ohne sonstige Aktionen.
Das Programm sollten wir dann noch seltener abfragen.

vitolinker

@TomTom, kann es sein, dass den TV noch gar nicht nach dem löschen der REadings gepaired ist?
Probiere doch mal den TV aus, modul neu laden, readings löschen und dann TV an und dann gleich das Pairing neu beginnen, bevor die Readings gelesen werden...

CoolTux

Zitat von: ToM_ToM am 14 Februar 2017, 18:32:03
Hey, habe es jetzt nochmal mit Verbose 5 gestartet.
Auffällig ist, dass fhem mit der neuen Modul-Version ca. 5 min zum starten braucht und mein Pi auf volle 1008 MHz läuft.
Danach kommt aber trotzdem der Absturz.
Anbei die letzten Zeilen des LOGs:

2017.02.14 18:27:08 4: LGTV_WebOS (LG55UH950V) - ReadFn gestartet
2017.02.14 18:27:08 5: LGTV_WebOS (LG55UH950V) - received correct JSON string, start response processing: {"type":"error","id":"request_1487093214.70804","error":"401 insufficient permissions (not registered)","payload":{}}j{"type":"response","id":"register_1487093214.97782","payload":{"pairingType":"PROMPT","returnValue":true}}
2017.02.14 18:27:08 4: LGTV_WebOS (LG55UH950V) - JSON detected, run LGTV_WebOS_WriteReadings
2017.02.14 18:27:08 5: LGTV_WebOS (LG55UH950V) - Corrected JSON String: {"type":"error","id":"request_1487093214.70804","error":"401 insufficient permissions (not registered)","payload":{}}j{"type":"response","id":"register_1487093214.97782","payload":{"pairingType":"PROMPT","returnValue":true}}
garbage after JSON object, at character offset 118 (before "\x{81}j{"type":"resp...") at /opt/fhem/FHEM/82_LGTV_WebOS.pm line 768.


Das ist ein guter Log. Wichtig ist das ich den JSON String sehe. Der hier Schein ok.
Ich mache für die wo es nicht geht heute Abend mal was zum testen fertig. Ich bilde mir ja immer noch ein das es was mit dem Encode zu tun hat.

Welches Debian habt ihr? Jessie?
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

CoolTux

Zitat von: vitolinker am 14 Februar 2017, 18:33:43
Ich glaube was unseren braven LG ausbremst ist die Abfrage nach dem TV Guide, hier kommt quasi das ganze Abendprogramm ziemlich geschwätzig rein. Getestet mit Verbose 5 im Eventmonitor bei laufendem TV ohne sonstige Aktionen.
Das Programm sollten wir dann noch seltener abfragen.

Das sollte nicht so viel sein. Bei mir sind das immer so 30 Einträge. Sind ja nur die Guides für den aktuellen Kanal.
Man kann sich das mit einem list DEVICENAME genau anschauen.
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

vitolinker


the ratman

dito

btw
also fürs tv-programm halt ich z.b. http://www.tvbrowser.org/ für sinnvoller.
da ließe sich sicher ein modul/plugin für bauen ...
→do↑p!dnʇs↓shit←

vitolinker

Auf Pro7 sind es bei mir 95 Einträge..., ich mir die Liste lieber in FHEM wenn gebraucht aus dem Internet ziehen...
Edit nee, nach Refresh war es Kabel 1

CoolTux

Zitat von: vitolinker am 14 Februar 2017, 18:43:02
Auf Pro7 sind es bei mir 95 Einträge..., ich mir die Liste lieber in FHEM wenn gebraucht aus dem Internet ziehen...

Ok das ist zu viel. Da wir nur die ersten zwei verwenden, wollte später zwar eigentlich noch ein get Befehl machen mit Webanzeige, werde ich das ganze auf max 5 begrenzen.
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

vitolinker

Für mich ist heute erst einmal Schluss mit Testen. Lasse das 0.0.61 Modul installiert. Es ist Valentinstag und wenn ich jetzt noch weiter testen würde, gäb's Fernsehverbot... ;-)

CoolTux

Ich habe mal Version 0.0.62 ins Git geladen. Der channelGuid wird jetzt nur aktuallisiert wenn man das attribut channelguid 1 setzt.
Wenn jetzt noch ein Problem ist dann liegt es am Encode
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

vitolinker