NEWS
Sayit/ SONOS falscher Ausgabetext
-
Update - gelöst. Liegt an Google. Mit z.b. AWS Polly - Deutsch - Marlene funktioniert die Ansage.
Hallo zusammen,
ich habe seit gestern das Problem, dass SONOS über Sayit die in einem Skript zusammengesetzte Texte nicht mehr "vorliest", sondern immer die letzte ausgegebene Ansage ausgibt, wenn die Ansage getriggert wird.
Das Skript überprüft die Fensterkontakte und wenn die Haustür geöffnet wird, wird der vorzuelsende Text zusammengebaut, z.B.
"Fenster Büro Post, Terrassentür Wohnzimmer, Terrassentür Esszimmer, Fenster WC geöffnet"
Das hat bisher hervorragend funktioniert, seit gestern nicht mehr.
Im Log-File steht:
sayit.0 2018-07-12 07:31:18.174 error Cannot get file: received file is too short sayit.0 2018-07-12 07:31:18.068 info saying: Fenster Büro Post Terrassentür Wohnzimmer Terrassentür Esszimmer Fenster WC geöffnet sonos.0 2018-07-12 07:31:17.087 info try to control id sonos.0.root.1xx_xxx_xxx_xxx.tts with {"val":"64;http://1xx.xxx.xxx.xxx:8082/state/sayit.0.tts.mp3","ack":false,"ts":1531373477083,"q":0,"from":"system.adapter.sayit.0","lc":153137347708 sayit.0 2018-07-12 07:31:17.067 info Set "sonos.0.root.1xx_xxx_xxx_xxx.tts: 64;http://1xx.xxx.xxx.xxx:8082/state/sayit.0.tts.mp3 sayit.0 2018-07-12 07:31:17.062 info saying: /opt/iobroker/node_modules/iobroker.sayit/scifi.mp3
Es scheint, dass der Text zu lang ist und nicht konvertiert wird. Wenn ich per Telegram einen kürzeren Text an ioBroker sende, wird er über SONOS ausgegeben.
cloud.0 2018-07-12 10:17:04.659 info received all objects sonos.0 2018-07-12 10:16:56.024 info try to control id sonos.0.root.1xx_xxx_xxx_xxx.tts with {"val":"50;http://1xx.xxx.xxx.xxx:8082/state/sayit.0.tts.mp3","ack":false,"ts":1531383416022,"q":0,"from":"system.adapter.sayit.0","lc":153138341602 sayit.0 2018-07-12 10:16:56.020 info Set "sonos.0.root.1xx_xxx_xxx_xxx.tts: 50;http://1xxx.xxx.xxx.xxx:8082/state/sayit.0.tts.mp3 sayit.0 2018-07-12 10:16:55.858 info saying: der generierte Text darf nicht zu lang sein sonos.0 2018-07-12 10:16:54.870 info try to control id sonos.0.root.1xx_xxx_xxx_xxx.tts with {"val":"40;http://1xx.xxx.xxx.xxx:8082/state/sayit.0.tts.mp3","ack":false,"ts":1531383414865,"q":0,"from":"system.adapter.sayit.0","lc":153138335349 text2command.0 2018-07-12 10:16:54.858 info Response: der generierte Text darf nicht zu lang sein wird ausgegeben sayit.0 2018-07-12 10:16:54.857 info Set "sonos.0.root.1xx_xxx_xxx_xxx.tts: 40;http://1xx.xxx.xxx.xxx:8082/state/sayit.0.tts.mp3 sayit.0 2018-07-12 10:16:54.856 info saying: /opt/iobroker/node_modules/iobroker.sayit/scifi.mp3 text2command.0 2018-07-12 10:16:54.848 info Say ID text2command.0.Ansage: der generierte Text darf nicht zu lang sein text2command.0 2018-07-12 10:16:54.848 info processText: "Ansage der generierte Text darf nicht zu lang sein"
Kennt jemand die (neue) Grenze bzgl. der Länge des konvertierbaren Textes? Gibt es möglicherweise einen Workaround, z.B. den Text zu zerlegen, um mehrere MP3s hintereinander abzuspielen? Wäre super, wenn das im Blockly-Block schon hinterlegt wäre. Ich verwende bei mir "Google - Deutsch"