Hallo zusammen,
in dem BRAVIA Modul werden bei mir die Umlaute im Titel "currentTitle"
mit Fragezeichen ausgegeben.
Kennt jemand eine Lösung für das Problem?
Vielen Dank vorab.
Gruß Mark
Fhem info:
Release : 5.7 FeatureLevel: 5.7
OS : linux
Arch : x86_64-linux-gnu-thread-multi
Perl : v5.20.2
Mach mal bitte ein list vom Device wenn so ein Fragezeichenumlaut Teil drin steht.
Schau mal ob Du
libencode-perl
installiert hast.
Hallo,
libencode-perl war nicht installiert. Eine Installation hat das Problem nicht gelöst.
Hier das Listing (Bis zur Senderliste).
Gruß Mark
Internals:
CHANGED
CHANNELCOUNT 50
DEF 192.168.11.154 10
INTERVAL 10
NAME Sony_TV_WZ
NR 679
STATE on
TYPE BRAVIA
generation
modelName
name
Readings:
2017-01-23 18:20:25 area DEU
2017-01-30 18:19:52 authCookie F2EFCA41ABAEE82A6CF21BF2715637C57EC1DDCA
2017-01-30 18:19:52 authExpires Mo., 13 Feb. 2017 17:19:51 GMT+00:00
2017-01-23 18:19:50 authMaxAge 1209600
2017-02-03 17:00:50 channel VOX
2017-02-03 17:00:50 channelId 0008
2017-02-03 17:00:50 ci_durationSec 3600
2017-01-26 21:37:48 ci_id -
2017-01-27 18:57:11 ci_mediaType -
2017-01-26 21:37:48 ci_overlapStatus -
2017-01-27 18:57:11 ci_playSpeed -
2017-01-26 21:37:48 ci_quality -
2017-01-26 21:37:48 ci_recordingStatus -
2017-01-26 21:37:48 ci_repeatType -
2017-02-03 17:00:50 ci_startDateTime 2017-02-03T17:00:00+0100
2017-02-03 17:00:50 ci_tripletStr 1.1089.12060
2017-02-03 17:00:50 ci_uri tv:dvbs?trip=1.1089.12060&srvName=VOX
2017-01-23 18:20:25 country XEU
2017-01-26 21:37:48 currentMedia -
2017-02-03 17:00:50 currentTitle Zwischen T�ll und Tr�nen
2017-01-23 18:20:25 generation 4.3.0
2017-02-03 16:34:24 input tv:dvbs
2017-01-23 18:20:25 language ger
2017-01-23 18:20:25 macAddr 10:4F:A8:EF:F6:9C
2017-01-23 18:20:25 modelName KD-55XD8005
2017-01-28 15:24:28 mute off
2017-01-23 18:20:25 name BRAVIA
2017-02-03 16:33:57 power on
2017-02-02 09:11:25 presence present
2017-01-23 18:19:16 registrationUUID 448487037e98a91ce0262aa842962092
2017-01-23 17:26:25 requestFormat json
2017-02-03 16:33:57 state on
2017-02-02 19:06:47 volume 29
Eigentlich hätte das das Problem lösen sollen. Wurde das Reading auch nach der Installation von libencode geschrieben? Kannst mal bitte das Reading neu schreiben. Am besten mit einem anderen Wert.also umschalten oder so, so das ein anderer Titel mit Umlaut kommt.
Denke mal Ulf wird sich heute Abend ansonsten Mal melden.
Hi,
libencode installiert, FHEM Neustart und hier ein neues Reading.
Danke auch schonmal für die Unterstützung.
Gruß Mark
Internals:
CHANGED
CHANNELCOUNT 50
DEF 192.168.11.154 10
INTERVAL 10
NAME Sony_TV_WZ
NR 679
STATE on
TYPE BRAVIA
generation
modelName
name
Readings:
2017-01-23 18:20:25 area DEU
2017-01-30 18:19:52 authCookie F2EFCA41ABAEE82A6CF21BF2715637C57EC1DDCA
2017-01-30 18:19:52 authExpires Mo., 13 Feb. 2017 17:19:51 GMT+00:00
2017-01-23 18:19:50 authMaxAge 1209600
2017-02-03 18:59:14 channel arte_HD
2017-02-03 18:59:14 channelId 0009
2017-02-03 18:59:14 ci_durationSec 2700
2017-01-26 21:37:48 ci_id -
2017-01-27 18:57:11 ci_mediaType -
2017-01-26 21:37:48 ci_overlapStatus -
2017-01-27 18:57:11 ci_playSpeed -
2017-01-26 21:37:48 ci_quality -
2017-01-26 21:37:48 ci_recordingStatus -
2017-01-26 21:37:48 ci_repeatType -
2017-02-03 18:59:14 ci_startDateTime 2017-02-03T18:25:00+0100
2017-02-03 18:59:14 ci_tripletStr 1.1019.10302
2017-02-03 18:59:14 ci_uri tv:dvbs?trip=1.1019.10302&srvName=arte HD
2017-01-23 18:20:25 country XEU
2017-01-26 21:37:48 currentMedia -
2017-02-03 18:59:14 currentTitle Transoce�nica - Die l�ngste Busreise der Welt (5/5)
2017-01-23 18:20:25 generation 4.3.0
2017-02-03 16:34:24 input tv:dvbs
2017-01-23 18:20:25 language ger
2017-01-23 18:20:25 macAddr 10:4F:A8:EF:F6:9C
2017-01-23 18:20:25 modelName KD-55XD8005
2017-01-28 15:24:28 mute off
2017-01-23 18:20:25 name BRAVIA
2017-02-03 16:33:57 power on
2017-02-03 17:34:24 presence present
2017-01-23 18:19:16 registrationUUID 448487037e98a91ce0262aa842962092
2017-01-23 17:26:25 requestFormat json
2017-02-03 16:33:57 state on
2017-02-02 19:06:47 volume 29
Ok da muss ich heute Abend noch mal in Ruhe im Code schauen. Aber eventuell meldet sich der Ulf bis dahin.
Kann ja mal an seine Küchenscheibe klopfe ;D
Also ich kann da erstmal keinen Fehler finden. Ulf macht zwar den Funktionsaufruf für decode_utf8 anders aber so sollte er trotzdem klappen. Kann es aber auch nicht kontrollieren.
Moin,
Hab dein Klopfen nicht gehört ;)
Das Encoding ist damals eher durch Probieren entstanden, kann ich mir aber auch noch mal anschauen. Welcher Browser ist es denn?
Moin moin,
Browser ist der aktuelle Firefox, denke aber das spielt heir keine Rolle. Den Titel sende ich an einen TelegramBot, der keinen Titel sendet, wenn Umlaute enthalten sind.
Zitat von: vuffiraa am 05 Februar 2017, 11:52:08
Moin,
Hab dein Klopfen nicht gehört ;)
Das Encoding ist damals eher durch Probieren entstanden, kann ich mir aber auch noch mal anschauen. Welcher Browser ist es denn?
Hab mich nicht getraut. Glaube ich schulde Dir noch ein Bier und das hatte ich gerade nicht ;D
Habe im Code geschaut gehabt, Du hast es zwar anders gemacht wie im Bosch Modul aber deswegen nicht falsch. Gibt ja auch keine Fehlermeldung.
Du hast im Bravia Modul beim Aufruf einen Klassenaufruf gemacht, das geht im Normalfall auch. Du kannst das aber mal testweise als Funktionsaufruf machen wie im Boschmodul und Mal schauen was passiert.
Ob Klassenaufruf oder Funktionsaufruf sollte wirklich keinen Unterschied machen. Wenn ich bei meinem Firefox die Zeichenkodierung auf "westlich" stelle, sehe ich Umlaute. Aber ich denke, der TV wird doch wohl Unicode liefern. Ich ahne schon, dass Sony das bei jedem Modell wieder anders macht. Bei meinem alten TV haben die Umlaute gestimmt...
Zitat von: vuffiraa am 05 Februar 2017, 12:56:45
Ob Klassenaufruf oder Funktionsaufruf sollte wirklich keinen Unterschied machen. Wenn ich bei meinem Firefox die Zeichenkodierung auf "westlich" stelle, sehe ich Umlaute. Aber ich denke, der TV wird doch wohl Unicode liefern. Ich ahne schon, dass Sony das bei jedem Modell wieder anders macht. Bei meinem alten TV haben die Umlaute gestimmt...
Bedeutet im schlimmsten Fall Ersetzen.
Vielleicht könnte uns Mark mal den dazugehörigen JSON String liefern.
Das kann ich gerne machen, benötige dann aber ein kurzes "howto".
Verbose auf fünf stellen. Dann sollte im Log sowas kommen
called function BRAVIA_ReceiveCommand() rc: err: data:
Wobei man sich dann fragen kann, mit welchem Encoding wird ins Log geschrieben. Ich kann mir das Log aber auch selber erzeugen, wie immer brauche ich nur etwas Zeit dafür.
Spannend, im Log siehts gut aus:
2017.02.05 15:54:26 5: BRAVIA Sony_TV_WZ: called function BRAVIA_ReceiveCommand() rc: HASH(0x4b76cb8) err: data: {"result":[{"uri":"tv:dvbs?trip=1.1089.12020&srvName=RTL2","source":"tv:dvbs","title":"RTL2","dispNum":"0007","tripletStr":"1.1089.12020","programTitle":"Zuhause im Glück - Unser Einzug in ein neues Leben","startDateTime":"2017-02-05T14:00:00+0100","durationSec":7140}],"id":1}
2017.02.05 15:54:26 4: BRAVIA Sony_TV_WZ: RCV getContentInformation
2017.02.05 15:54:26 4: BRAVIA Sony_TV_WZ: RES getContentInformation - {"result":[{"uri":"tv:dvbs?trip=1.1089.12020&srvName=RTL2","source":"tv:dvbs","title":"RTL2","dispNum":"0007","tripletStr":"1.1089.12020","programTitle":"Zuhause im Glück - Unser Einzug in ein neues Leben","startDateTime":"2017-02-05T14:00:00+0100","durationSec":7140}],"id":1}
2017.02.05 15:54:26 5: BRAVIA Sony_TV_WZ: called function BRAVIA_Set()
2017.02.05 15:54:26 5: BRAVIA Sony_TV_WZ: called function BRAVIA_Set()
2017.02.05 15:54:26 5: BRAVIA Sony_TV_WZ: called function BRAVIA_SendCommand()
2017.02.05 15:54:26 4: BRAVIA Sony_TV_WZ: REQ upnp/getVolume
2017.02.05 15:54:26 5: BRAVIA Sony_TV_WZ: POST http://192.168.11.154:52323/upnp/control/RenderingControl (<?xml version="1.0"?><s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/" s:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"><s:Body><u:GetVolume xmlns:u="urn:schemas-upnp-org:service:RenderingControl:1"><InstanceID>0</InstanceID><Channel>Master</Channel></u:GetVolume></s:Body></s:Envelope>)
2017.02.05 15:54:26 5: BRAVIA Sony_TV_WZ: header X-CERS-DEVICE-ID: fhem_remote
Cookie: auth=F2EFCA41ABAEE82A6CF21BF2715637C57EC1DDCA
Soapaction: "urn:schemas-upnp-org:service:RenderingControl:1#GetVolume"
Content-Type: text/xml
2017.02.05 15:54:26 5: BRAVIA Sony_TV_WZ: called function BRAVIA_SendCommand()
2017.02.05 15:54:26 4: BRAVIA Sony_TV_WZ: REQ upnp/getMute
2017.02.05 15:54:26 5: BRAVIA Sony_TV_WZ: POST http://192.168.11.154:52323/upnp/control/RenderingControl (<?xml version="1.0"?><s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/" s:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"><s:Body><u:GetMute xmlns:u="urn:schemas-upnp-org:service:RenderingControl:1"><InstanceID>0</InstanceID><Channel>Master</Channel></u:GetMute></s:Body></s:Envelope>)
2017.02.05 15:54:26 5: BRAVIA Sony_TV_WZ: header X-CERS-DEVICE-ID: fhem_remote
Cookie: auth=F2EFCA41ABAEE82A6CF21BF2715637C57EC1DDCA
Soapaction: "urn:schemas-upnp-org:service:RenderingControl:1#GetMute"
Content-Type: text/xml
Zitat von: vuffiraa am 05 Februar 2017, 15:27:27
Wobei man sich dann fragen kann, mit welchem Encoding wird ins Log geschrieben. Ich kann mir das Log aber auch selber erzeugen, wie immer brauche ich nur etwas Zeit dafür.
Ich gehe davon aus das ins Log Raw geschrieben wird. Kann es aber nicht genau sagen.
Beim Anzeigen des Log spielt auch das Betriebssystem eine Rolle. Welche Codepage wird hier benutzt. Eigentlich muss man sich die Datei in einem Hex-Editor anschauen, das sieht man es dann genau.
Ich ändere das Modul, dass es utf8 liefert.
Ok, ich sehe wieder Umlaute.
Die neue Version ist im SVN eingecheckt und wird dann morgen per Update verteilt.
Euch einen schönen Abend!
PS: Wenn ich jetzt ein Bier hätte ;) Wann war das nächste Treffen?
Zitat von: vuffiraa am 05 Februar 2017, 20:01:28
Ok, ich sehe wieder Umlaute.
Die neue Version ist im SVN eingecheckt und wird dann morgen per Update verteilt.
Euch einen schönen Abend!
PS: Wenn ich jetzt ein Bier hätte ;) Wann war das nächste Treffen?
Klaus hatte mich auch schon angehauen. Bin bisschen in Zeitnot im Moment. Ich würde gerne wenn dann März machen wenn es passt.
Vielen Dank für die schnelle Hilfe. Der Titel ist jetzt korrekt. Der TelegramBot verweigert es zwar immer noch die "Umlauttitel" zu senden, woran das liegt muss ich noch rausbekommen.