Sony TV HX-, NX-Serie

Begonnen von StephanH, 03 Dezember 2013, 12:55:57

Vorheriges Thema - Nächstes Thema

Michi240281

#90
Hallo,

ich bin im Besitz eines Sony KDL-52-HX-905 TVs.

Nun die Frage, ob ich ihn mit dem Modul steuern kann? Ich bin mir garnicht sicher, ob der Fernseher überhaupt über eine LAN-Schnittstelle verfügt?!?

Grüße
Michael
FHEM auf QNAP per VM / HM LAN Adapter / diverse HM-Devices
QNAP TVS 463
VU+ Duo4kSE
Sony 75ZD9

vuffiraa


Zitat von: Michi240281 am 15 Januar 2015, 15:50:58
Hallo,

ich bin im Besitz eines Sony KDL-52-HX-905 TVs.

Nun die Frage, ob ich ihn mit dem Modul steuern kann? Ich bin mir garnicht sicher, ob der Fernseher überhaupt über eine LAN-Schnittstelle verfügt?!?

Grüße
Michael

Laut den technischen Daten gibt es eine LAN-Schnittstelle, das ist erst mal positiv. Dagegen spricht, dass er nicht bei der SideView App von Sony gelistet ist.
Man müsste ihn mal ins Netzwerk einbinden und dann schauen, ob es offene Ports gibt. Aber ich glaube, das er eher nicht für die Steuerung über LAN vorbereitet ist.

Gruß
Ulf
FHEM 5.8 auf Cubietruck, Raspi B+

Weinzierl KNX IP BAOS 770, Homematic, EnOcean

Michi240281

Dann werde ich erstmal versuchen, ihn ins LAN zu kriegen.

Laut der Sony Internetseite hat er eine LAN Schnittstelle, wie du schon richtig geschrieben hast. Aber was wäre denn dann noch ne Voraussetzung, ihn darüber zu steuern?
FHEM auf QNAP per VM / HM LAN Adapter / diverse HM-Devices
QNAP TVS 463
VU+ Duo4kSE
Sony 75ZD9

vuffiraa

Naja, die Möglichkeit ein Netzwerkkabel anzuschließen sagt noch nichts darüber aus, welche Kommunikation darüber möglich ist. Sony hat in den verschiedenen (Jahrgangs-)Serien unterschiedliche Möglichkeiten umgesetzt.
Wenn der TV angeschlossen ist, könnte man schauen, welche Ports offen sind. Dann kann man schauen, welche Kommunikation auf den offenen Ports möglich ist. Ich habe hierzu aber für deinen TV nichts im Netz gefunden.
FHEM 5.8 auf Cubietruck, Raspi B+

Weinzierl KNX IP BAOS 770, Homematic, EnOcean

bsl02

#94
Hallo,
ich habe seit Weihnachten ;-) den Sony BRAVIA KDL-50W829B mit Netzwerk; ich denke es ist ein Modell aus 2014.
Jetzige Software-Version darauf ist PKG2.232EUA.

Leider bekomme ich den mit bisherigen Varianten des Moduls "70_BRAVIA.pm" nicht zum kontakten mit FHEM.
Die Handy-Fernbedienung mit "TV Sideview" (Android) klappt aber gut.

Auf dem FHEM-Cubietruck habe ich nachinstalliert
sudo apt-get install libdata-guid-perl
sudo apt-get install libjson-perl


und in FHEM definiert
define SonyTV BRAVIA 192.168.115.151

Frage: Auf welche Weise könnte ich das Gerät belauschen / weitere Informationen beisteuern?
Das gute Stück hört laut "Fing"-Portscan (Android) auf Port 80.

Gruß, Stefan

/Edit: Keine Ahnung ob sich hiermit etwas anfangen lässt, werde ich nachher testen:
https://blog.yrden.de/2014/11/14/remote-control-bravia-tvs-with-authentication.html
RPi3 (FHEM) / CUL V3 868 (FS20) / nanoCUL868 (HM) / RFXtrx433 (IT & ELRO) / MAX!Cube (Thermostate, Fenster) / Bluetooth (presence Handy) / Sonoff mit Tasmota // Audio: RPi3 mit "max2play"-Image (Squeezeserver+Player) / Video: Synology-NAS mit TVheadend, Triax TSS400 Sat-IP Converter

vuffiraa

Hallo Stefan,
Du solltest es mal mit dem Attribute requestFormat = Json probieren. Die Registrierung dann in 2 Schritten ausführen, wie in Post #85 beschrieben. Das ist aber wegen Mangel eines passenden Gerätes nicht getestet. Bei den Versuchen solltest du aber noch verbose = 5 einstellen, dann sieht man im Log ganz gut, was da über die Leitung geht. Das Log kannst du dann hier posten oder auch per PM, dann schau ich, was man ändern kann.
Gruß Ulf
FHEM 5.8 auf Cubietruck, Raspi B+

Weinzierl KNX IP BAOS 770, Homematic, EnOcean

bsl02

Hallo Ulf,

Danke für den Vorschlag.
Heute nur ein kurzer Statusbericht, ich teste morgen noch in Ruhe. Ggfs. kommt dann auch die Logdatei ;-)

Vorweg: Ich teste hier mit den Versionen "70_BRAVIA.pm" vom 24. und 25.12.2014 und hoffe letztere ist noch aktuell.

Meine Definition:
define SonyTV BRAVIA 192.168.115.151
Weitere Testdefinitionen folgten....

Habe in der Weboberfläche zusammengeklickt:
set SonyTV requestFormat json
set SonyTV register            # zunächst ohne weitere Eingabe
                              # Auf dem TV erscheint jetzt auch das Passwort 4 Ziffern
set SonyTV register xxxx    # (xxxx = Passwort)


Das TV scheint das Passwort nicht zu akzeptieren, zumindest verschwindet nach  Zeitablauf die Reg-Maske auf dem Bildschirm.

Beim Blick in die Readings hat sich aber wohl etwas getan:
ZitatauthCookie        HASH(0x33091e8)
registrationUUID            3ce7cb80-71eb-4e4b-8b3b-4a3591bfedf8

Morgen lösche ich die zusätzlichen Testdefinitionen und probiere in Ruhe noch einmal.

Bis dann, Stefan
RPi3 (FHEM) / CUL V3 868 (FS20) / nanoCUL868 (HM) / RFXtrx433 (IT & ELRO) / MAX!Cube (Thermostate, Fenster) / Bluetooth (presence Handy) / Sonoff mit Tasmota // Audio: RPi3 mit "max2play"-Image (Squeezeserver+Player) / Video: Synology-NAS mit TVheadend, Triax TSS400 Sat-IP Converter

vuffiraa

Zitat von: bsl02 am 22 Januar 2015, 01:42:39
Das TV scheint das Passwort nicht zu akzeptieren, zumindest verschwindet nach  Zeitablauf die Reg-Maske auf dem Bildschirm.

Beim Blick in die Readings hat sich aber wohl etwas getan:
Morgen lösche ich die zusätzlichen Testdefinitionen und probiere in Ruhe noch einmal.

Dann scheint das noch nicht richtig zu klappen. Ein Log wäre hilfreich  ;)
Bei deinen Readings sieht man das Problem auch, da authCookie ein Hash ist. Das sollten eher ein paar lesbare Zeichen sein.
Diese registrationUUID wird im Modul erzeugt, daher scheint hier alles ok.

Das Modul vom 25.12. ist aktuell.
FHEM 5.8 auf Cubietruck, Raspi B+

Weinzierl KNX IP BAOS 770, Homematic, EnOcean

dave0815

Hallo,

ich habe gestern erstmalig von dem Modul 70_BRAVIA.pm gelesen und möchte mich für die bisherige Arbeit daran bedanken.
Bei meinem KDL-37EX725 hat die Registrierung auf Anhieb geklappt und channelUp/Down sowie volume funktioniert. Weitere Funktionen sowie das Zweitgerät KDL-32W655 werde ich in den kommenden Tagen testen.

Gruß,
David

dave0815

#99
Hallo,

Ich kann beim Registrieren meines KDL-32W655 das gleiche wie Stefan (Antwort #95) beobachten,  requestFormat = json.
Hier die Log Ausgaben:
1) zuerst set SonyTV_SZ register

2015.01.22 20:33:01 5: BRAVIA SonyTV_SZ: called function BRAVIA_GetStatus()
2015.01.22 20:33:01 5: BRAVIA SonyTV_SZ: called function BRAVIA_SendCommand()
2015.01.22 20:33:01 5: BRAVIA SonyTV_SZ: API command 'getStatus' not supported by device.

2015.01.22 20:33:27 5: BRAVIA SonyTV_SZ: called function BRAVIA_Set()
2015.01.22 20:33:27 2: BRAVIA set SonyTV_SZ register
2015.01.22 20:33:27 5: BRAVIA SonyTV_SZ: called function BRAVIA_SendCommand()
2015.01.22 20:33:27 4: BRAVIA SonyTV_SZ: REQ register
2015.01.22 20:33:27 5: BRAVIA SonyTV_SZ: POST http://192.168.150.194:80/sony/accessControl ({"method":"actRegister","params":[{"clientid":"Fhem Remote:8A0FAFA2-A26D-11E4-A97F-56334935AF14","nickname":"Fhem Remote (fhem_remote)","level":"private"},[{"value":"yes","function":"WOL"}]],"id":8,"version":"1.0"})
2015.01.22 20:33:28 5: BRAVIA SonyTV_SZ: called function BRAVIA_Set()
2015.01.22 20:33:28 5: BRAVIA SonyTV_SZ: called function BRAVIA_Get()
2015.01.22 20:33:28 5: BRAVIA SonyTV_SZ: called function BRAVIA_ReceiveCommand() rc: HTTP/1.1 401 Unauthorized
Content-Type: application/json
Content-Length: 37
Connection: close
WWW-Authenticate: Basic realm="Private Page"
Date: Thu, 22 Jan 2015 19:33:27 GMT

{"error":[401,"Unauthorized"],"id":8} err:  data: {"error":[401,"Unauthorized"],"id":8}
2015.01.22 20:33:28 4: BRAVIA SonyTV_SZ: RCV register
2015.01.22 20:33:28 4: BRAVIA SonyTV_SZ: RES register - {"error":[401,"Unauthorized"],"id":8}
2015.01.22 20:33:29 5: BRAVIA SonyTV_SZ: called function BRAVIA_Set()


2) dann mit angezeigtem PIN set SonyTV_SZ register 1055


2015.01.22 20:33:40 5: BRAVIA SonyTV_SZ: called function BRAVIA_Set()
2015.01.22 20:33:40 2: BRAVIA set SonyTV_SZ register 1055
2015.01.22 20:33:40 5: BRAVIA SonyTV_SZ: called function BRAVIA_SendCommand()
2015.01.22 20:33:40 4: BRAVIA SonyTV_SZ: REQ register/1055
2015.01.22 20:33:40 5: BRAVIA SonyTV_SZ: POST http://192.168.150.194:80/sony/accessControl ({"method":"actRegister","params":[{"clientid":"Fhem Remote:8A0FAFA2-A26D-11E4-A97F-56334935AF14","nickname":"Fhem Remote (fhem_remote)","level":"private"},[{"value":"yes","function":"WOL"}]],"id":8,"version":"1.0"})
2015.01.22 20:33:40 5: BRAVIA SonyTV_SZ: called function BRAVIA_Set()
2015.01.22 20:33:40 5: BRAVIA SonyTV_SZ: called function BRAVIA_Get()
2015.01.22 20:33:40 5: BRAVIA SonyTV_SZ: called function BRAVIA_ReceiveCommand() rc: HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 28
Connection: close
Date: Thu, 22 Jan 2015 19:33:40 GMT

{"error":[5,"Illegal JSON"]} err:  data: {"error":[5,"Illegal JSON"]}
2015.01.22 20:33:40 4: BRAVIA SonyTV_SZ: RCV register/1055
2015.01.22 20:33:40 4: BRAVIA SonyTV_SZ: RES register/1055 - {"error":[5,"Illegal JSON"]}
2015.01.22 20:33:41 5: BRAVIA SonyTV_SZ: called function BRAVIA_Set()

2015.01.22 20:34:01 5: BRAVIA SonyTV_SZ: called function BRAVIA_GetStatus()
2015.01.22 20:34:01 5: BRAVIA SonyTV_SZ: called function BRAVIA_SendCommand()
2015.01.22 20:34:01 5: BRAVIA SonyTV_SZ: API command 'getStatus' not supported by device.
2015.01.22 20:34:14 5: BRAVIA SonyTV_SZ: called function BRAVIA_Set()


Gruß,
David

vuffiraa

Hallo David,

der erste Aufruf sieht soweit ok aus. Das der mit HTTP/1.1 401 Unauthorized zurückkommt ist so richtig, da ja dann bei dir die PIN angezeigt wird. Beim zweiten Aufruf ist noch irgendwas nicht richtig. Dein TV sollte da nicht mit {"error":[5,"Illegal JSON"]} antworten. Ich stehe aber etwas auf dem Schlauch, was hier nicht stimmt:
(
  { "method":"actRegister",
    "params":[
              { "clientid":"Fhem Remote:8A0FAFA2-A26D-11E4-A97F-56334935AF14",
                "nickname":"Fhem Remote (fhem_remote)",
                "level":"private" },
                [{ "value":"yes",
                   "function":"WOL" }]
             ],
    "id":8,
    "version":"1.0" }
)


Wer kann hier mit z.B. Postman mal den korrekten Request herausfinden?

Gruß Ulf
FHEM 5.8 auf Cubietruck, Raspi B+

Weinzierl KNX IP BAOS 770, Homematic, EnOcean

onkel-tobi

Hallo,

Ich habe einen Sony KDL-w805, so wie es aussieht wird der nicht unterstützt?
Der TV lässt sich zwar einbinden, aber getstatus/register klappt nicht:

API command 'getStatus' not supported by device.

Hat jemand evtl. noch eine Idee?

Danke & Gruß,
Tobi

vuffiraa


Zitat von: onkel-tobi am 28 Januar 2015, 21:45:21
Hallo,

Ich habe einen Sony KDL-w805, so wie es aussieht wird der nicht unterstützt?
Der TV lässt sich zwar einbinden, aber getstatus/register klappt nicht:

API command 'getStatus' not supported by device.

Hat jemand evtl. noch eine Idee?

Danke & Gruß,
Tobi

Hallo Tobi,

Lies dir mal meine Beiträge #96 und #85 durch. Momentan ist das Modul aber noch in der Entwicklung, also noch nicht so viel erwarten.

Gruß Ulf
FHEM 5.8 auf Cubietruck, Raspi B+

Weinzierl KNX IP BAOS 770, Homematic, EnOcean

onkel-tobi

HI,

also ich habe dasselbe Problem wie dave.
Wie genau/wo wird denn der Pin mitgegeben?

2015.02.08 21:37:48 5: BRAVIA eg_wz_tv: called function BRAVIA_Set()
2015.02.08 21:37:48 2: BRAVIA set eg_wz_tv register 4340
2015.02.08 21:37:48 5: BRAVIA eg_wz_tv: called function BRAVIA_SendCommand()
2015.02.08 21:37:48 4: BRAVIA eg_wz_tv: REQ register/4340
2015.02.08 21:37:48 5: BRAVIA eg_wz_tv: POST http://192.168.178.99:80/sony/accessControl ({"method":"actRegister","params":[{"clientid":"Fhem Remote:8a768fcb-e562-4629-a399-30fcff7d5fd2","nickname":"Fhem Remote (fhem_remote)","level":"pr
ivate"},[{"value":"yes","function":"WOL"}]],"id":8,"version":"1.0"})
2015.02.08 21:37:48 4: HttpUtils url=http://192.168.178.99:80/sony/accessControl
2015.02.08 21:37:48 5: Triggering eg_wz_tv (1 changes)
2015.02.08 21:37:48 5: Notify loop for eg_wz_tv register 4340
2015.02.08 21:37:48 4: eventTypes: BRAVIA eg_wz_tv register 4340 -> register .*
2015.02.08 21:37:48 4: http://192.168.178.99:80/sony/accessControl: HTTP response code 200
2015.02.08 21:37:48 4: HttpUtils http://192.168.178.99:80/sony/accessControl: Got data, length: 28
2015.02.08 21:37:48 5: BRAVIA eg_wz_tv: called function BRAVIA_ReceiveCommand() rc: HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 28
Connection: close
{"error":[5,"Illegal JSON"]} err:  data: {"error":[5,"Illegal JSON"]}
2015.02.08 21:37:48 4: BRAVIA eg_wz_tv: RCV register/4340
2015.02.08 21:37:48 4: BRAVIA eg_wz_tv: RES register/4340 - {"error":[5,"Illegal JSON"]}
2015.02.08 21:37:48 5: Triggering eg_wz_tv (1 changes)
2015.02.08 21:37:48 5: Notify loop for eg_wz_tv authCookie: HASH(0x2233cb8)
2015.02.08 21:37:48 4: eventTypes: BRAVIA eg_wz_tv authCookie: HASH(0x2233cb8) -> authCookie: HASH(0x2233cb8)


Sehe zwar, dass er im log auftaucht, aber wird er auch übergeben?
Wie müßte die URL in etwa aussehen, damit ich das am PC mal testen kann und evtl. mehr Infos liefern kann?

DAnke & Gruß,

Tobi

vuffiraa

Hallo,

ich habe Dank der tatkräftiger Unterstützung auch hier aus dem Forum eine neue Version des Moduls fertiggestellt, mit der auch die Verbindung zu den 2014er Modellen von Sony klappen sollte.
Außerdem habe ich noch den Wunsch aufgegriffen, die Statusabfragen per Upnp abschaltbar anzubieten. Dazu gibt es einen neuen Set-Parameter 'upnp', der 'on' oder 'off' enthalten kann. Bei 'on' oder wenn der Parameter nicht gesetzt wird, wird Upnp für den Status benutzt.

Zitat von: onkel-tobi am 08 Februar 2015, 22:04:57
Wie genau/wo wird denn der Pin mitgegeben?
Die 2. Registrierung erfolgt per Basis Authentication. Hier dient die Pin als Kennwort. Sehen kann man das im Header des Request, dort gibt es dann ein Attribut 'Baisc Authentication' mit einer codierten Zeichenkette.

Gruß Ulf
FHEM 5.8 auf Cubietruck, Raspi B+

Weinzierl KNX IP BAOS 770, Homematic, EnOcean