[Neues Modul] BOSE SoundTouch

Begonnen von dominik, 05 Januar 2016, 22:28:40

Vorheriges Thema - Nächstes Thema

Teemo

Hallo, es gibt ein Problem mit der Dekodierung von Zeichen bei der Anzeige der Geräteinformationen "list BOSE_XYZ".
Es geht um Zeichen wie "ł", "ń", "ś" usw.
Wie kann man das beheben? Wahrscheinlich liegt der Fehler im Modul selbst.

"Radio Złote Przeboje" = "Radio Złote Przeboje"

Prof. Dr. Peter Henning

ZitatIst es möglich, dass nextTrack/prevTrack zwischen den Lieblingsradios umschaltet, wenn gerade eines der Lieblingsradios läuft?
Bitte selbst nachdenken: Dann müsste die Hardware ja verschiedene Kanäle überwachen.

ZitatHallo, es gibt ein Problem mit der Dekodierung von Zeichen bei der Anzeige der Geräteinformationen "list BOSE_XYZ".
Es geht um Zeichen wie "ł", "ń", "ś" usw.
Wie kann man das beheben?
Encoding des eigenen Systems korrekt einstellen.


ZitatWahrscheinlich liegt der Fehler im Modul selbst.
Unsinn. Der Output des list-Befehls hat nichts mit dem Modul zu tun. Bitte keine wilden Spekulationen.

LG

pah


Teemo

Zitat von: Prof. Dr. Peter Henning am 09 Juli 2022, 11:42:20
Bitte selbst nachdenken: Dann müsste die Hardware ja verschiedene Kanäle überwachen.
Encoding des eigenen Systems korrekt einstellen.

Unsinn. Der Output des list-Befehls hat nichts mit dem Modul zu tun. Bitte keine wilden Spekulationen.

LG

pah

Entschuldigung für die voreilige Schlussfolgerung, Sie hatten Recht mit dem Problem der Zeichenkodierung in fhem.
Kann ich attr encode "unicode" in global verwenden - ich sehe, dass es als experimentell gekennzeichnet ist?

Teemo

#663
Hey, unterstützt das SoundTouch Wireless Link TTS?
Ich habe ein Problem, weil ich ein
2023.08.09 09:23:11 4 : BOSEST: set /speaker => <play_info><app_key>Ml7YGAI9JWjFhU7D348e86JPXtisddBa</app_key><url>http://translate.google.com/translate_tts?ie=UTF-8&amp;tl=en&amp;client=tw-ob&amp;q=To%20test</url><service>To test</service><volume>3</volume></play_info>
2023.08.09 09:23:11 4 : BOSEST: success: <?xml version="1.0" encoding="UTF-8" ?><Error value="403" name="HTTP_STATUS_FORBIDDEN" severity="Unknown">unsupported device</Error>
bekomme und ich frage mich, ob ich etwas falsch konfiguriert habe oder ob dieses Modell es einfach nicht unterstützt

michaIII

Hallo zusammen,

erst einmal herzlichen Dank an dominik für das Bosest-Modul. Nachdem es viele Jahre problemlos funktionierte, ist TTS nun leider verstummt (ungefähr seit der Meldung von Teemo). Bei mir kam im Fhem-Log allerdings der HTTP-Error 500. Nach Einschalten von verbose und Kopieren der URL in den Browser kam Http-Fehler 403. Nach Studium dieses Threads bin ich bei dem Beitrag von Fred Feuerstein vom 21.12.2020 18:41 stutzig geworden. 
Während in diesem Beitrag die Parametertrennung in der Url lediglich über das Zeichen & stattfand, sieht nun die Prametertrennung so aus : &amp;
Nach Eingabe dieser so formatierten Url im Browser kommt die Meldung 403
Nach Auskommentieren der Zeile 1020 (  $translateUrl =~ s/\&/\&amp\;/g; ) in  98_BOSEST.pm wurde die Url wieder so wie im Beitrag von Fred Feuerstein formatiert (jedenfalls steht es so im Fhem-Log). Ein Kopieren der Url aus dem fhem-log in den Browser erzeugt nun wieder eine funktionierende Sprachausgabe. Leider kommt im Fhem immer noch http-Error 500. Nun bin ich etwas ratlos. Kann hier jemand helfen ? (aufgrund der fehlenden Meldungen hier im Forum befürchte ich jedoch, dass Bose TTS von keinem außer Teemo verwendet wird. Was ich kaum glauben möchte).
 

fred_feuerstein

Also TTS funktioniert hier auf Bose 10 und Bose 20. Nach wie vor. Ich nutze das täglich viele Male.
Auf der Portable funktioniert es bekannterweise nicht.
Bei der Wireless Link bin ich nicht sicher. Die habe ich zwar auch, aber noch nicht bzgl TTS getestet.
Gruß, Fred

FHEM auf Raspberry PI 3B+ im 7Zoll TouchDisplay Gehäuse, OS: Bullseye, mit Z-Wave RaZberry-Modul, 868CUL (WMBUS), LaCrosseCUL (Temp) und knapp 300 Devices aller Art

HansDampfHH

#666
Moin. Ich habe soeben mein FHEM in einen Docker-Container verschoben. Bisher scheint wieder alles zu laufen.
Bis auf BOSEST. Zumindest bekomme ich keine Verbindung zu meiner Box. Wenn ich das Device neu anlege, bekomme ich da auch keine besondere Meldung im Log.

2023.11.07 15:24:52.357 3: BOSEST: BOSE SoundTouch v2.2.1
2023.11.07 15:31:09.598 5: BOSEST: finished discovery

Muss ich noch einen Port freigeben?

Edit:
Habe mal laut der Bose-Homepage folgende Ports in den Container durchgeschleift, leider ohne besondere Veränderung:
      - "1900:1900" # Bonjour
      - "5350:5350" # Bonjour
      - "5351:5351" # Bonjour
      - "5353:5353" # Bonjour, AirPlay
      - "17008:17008" # Bonjour, SoundTouch/Bose Music

Edit2: Hat sich erledigt, nutze macvlan. Bose Soundtouch wird wieder gefunden. Die UDP Ports waren das Problem.
FHEM Docker, CUL868, Zigbee, CCU2, Jeelink

StefanG

#667
Hallo!

Habe eine FHEM-Testinstallation aufgebaut und eine Bose ST 525 eingebunden. Funktioniert gut, aber mit folgenden Einschränkungen:

* Die Readings für Channel 1 bis 6 werden nicht mehr richtig synchronisiert, sobald man in der Bose-App Favoriten vergibt (konkret werden die Readings dann nur mit "-" befüllt). Das war in früheren App-Versionen meiner Erinnerung nach nicht möglich, ist also vermutlich bei der Modul-Erstellung so nicht berücksichtigt worden. Wenn man die Favoriten in der App wieder entfernt, werden die Channel-Readings wieder korrekt synchronisiert. -> Generell scheint die Abfrage der Presets fehlerbehaftet zu sein. Ob auf Bose- oder FHEM-Seite kann ich nicht beurteilen:

Ein funktionierender Aufruf sieht so aus:

2023.12.26 12:43:50.226 5: BOSEST: BOSEST_updatePresets
2023.12.26 12:43:50.259 5: BOSEST: processXml:
$VAR1 = {
          'presets' => {
                         'preset' => [
                                       {
                                         'ContentItem' => {
                                                            'containerArt' => 'http://cdn-radiotime-logos.tunein.com/s8007q.png',
                                                            'type' => 'stationurl',
                                                            'location' => '/v1/playback/station/s8007',
                                                            'isPresetable' => 'true',
                                                            'source' => 'TUNEIN',
                                                            'sourceAccount' => '',
                                                            'itemName' => "Hitradio \x{d6}3"
                                                          },
                                         'id' => '1',
                                         'createdOn' => '1577278945',
                                         'updatedOn' => '1577278945'
                                       },
                                       {
                                         'ContentItem' => {
                                                            'source' => 'STORED_MUSIC',
...

Ein funktionierendes Update sieht so aus:

2023.12.26 12:38:23.351 5: BOSEST: processXml:
$VAR1 = {
          'updates' => {
                         'deviceID' => '[...]',
                         'presetsUpdated' => {
                                               'presets' => {
                                                              'preset' => [
                                                                            {
                                                                              'id' => '1',
                                                                              'updatedOn' => '1577278945',
                                                                              'createdOn' => '1577278945',
                                                                              'ContentItem' => {
                                                                                                 'isPresetable' => 'true',
                                                                                                 'itemName' => "Hitradio \x{d6}3",
                                                                                                 'containerArt' => 'http://cdn-radiotime-logos.tunein.com/s8007q.png',
                                                                                                 'sourceAccount' => '',
                                                                                                 'location' => '/v1/playback/station/s8007',
                                                                                                 'type' => 'stationurl',
                                                                                                 'source' => 'TUNEIN'
                                                                                               }
                                                                            },
                                                                            {
                                                                              'updatedOn' => '1703415980',
                                                                              'id' => '2',
                                                                              'ContentItem' => {
...

Aber es gibt (m.E. in Zusammenhang mit den Favoriten) auch leere Aufrufe, die dann die Channels falscherweise löschen:

2023.12.26 12:38:21.935 5: BOSEST: processXml:
$VAR1 = {
          'updates' => {
                         'presetsUpdated' => {},
                         'deviceID' => '[...]'
                       }
        };

* BOSEST erzeugt doch viele Freezes im System. Im Modul selbst kann man ja relativ wenig konfigurieren (habe nur StaticIPs gesetzt, weil ohne die die Bose nicht gefunden wurde). Gibt es da aktuelle Erfahrungen damit, wo man ansetzen könnte? -> Scheint nur in Kombination mit Harmony aufzutreten, vermutlich eher dort zu suchen. Generell werden auftretende Freezes von FreezeMon anscheinend immer Bose zugeschoben (s:13:05:18 e:13:05:31 f:13.608 d:tmr-BOSEST_checkWebSocketConnection(BoseRec) tmr-BOSEST_checkWebSocketConnection(BoseRec)), auch wenn sie wie z.B. in diesem Fall vom HTTP-Abruf eines langen Logfiles kommen.

* Kann man das übergeordnete BOSEST-Gerät, das ja m.E. nur die Aufgabe hat, ein konkretes weiteres BOSEST-Gerät anzulegen, eigentlich wieder entfernen, sobald das zweite Gerät gefunden ist, oder sind da dann negative Nebeneffekte zu erwarten? -> Nachdem die Freezes jetzt nach Harmony-Deaktivierung verschwunden sind, kann man das als Fehlerquelle ausschließen.

Danke vorab für jegliches Feedback!

LG
Stefan

Edit1: Freezes kommen anscheinend von Harmony, nicht von BOSEST (siehe Ergänzung oben). Somit für diesen Thread erledigt.

Edit2: Detail zum Channel-Problem (siehe Ergänzung oben). Gerne um Feedback dazu, wenn Euch das etwas sagt.

ph0x

#668
Kann ich nur insofern reproduzieren, als dass Presets in der App auf ,,offen" gesetzt (also quasi gelöscht) werden, wenn man daraus einen Favoriten macht. Dieses Preset ist dann in FHEM (logischerweise) ,,-", aber alle anderen passen.
Macht man aus dem Favoriten wieder einen Preset, taucht er wieder ganz normal auf.

ph0x

#669
Ich habe auto-zone auf ,,off" gestellt und dennoch starten beim Einschalten alle Player, auch wenn ich keine Zone generiert habe. Ist das normal und wie kann ich das verhindern?

Auch in der App fangen immer alle Speaker an zu spielen, bis ich auf ,,Alle wiedergeben beenden" klicke.

Jemand einen Vorschlag?


EDIT:
Nach dem Anlegen von jeweils einer separaten Gruppe auf jedem Device scheint es sich gefangen zu haben und nicht automatisch alle Geräte mehr zu starten, sobald eines zu spielen beginnt.

fred_feuerstein

separate Gruppen/Zonen etc. habe ich nicht angelegt.

Es gibt "Play" und "PlayEverywhere" bei jedem Device. Damit steuere ich entweder Abspielen auf dem jeweiligen Device oder halt auf allen gleichzeitig.

Das funktioniert bei mir ganz normal.
Gruß, Fred

FHEM auf Raspberry PI 3B+ im 7Zoll TouchDisplay Gehäuse, OS: Bullseye, mit Z-Wave RaZberry-Modul, 868CUL (WMBUS), LaCrosseCUL (Temp) und knapp 300 Devices aller Art