BOSE SoundTouch ab Juli 2026

Begonnen von Prof. Dr. Peter Henning, 17 Juli 2026, 10:32:22

Vorheriges Thema - Nächstes Thema

Prof. Dr. Peter Henning

In diesen Thread wird nach diversen Änderungen und der Übernahme der Maintenance durch mich das Modul SoundTouch weiter diskutiert.

LG

pah

FlatTV

Hi pah,

Hast du mein issue gesehen?
Meine ST zeigen regelmäßig keine Uhrzeit mehr an, besonders nach einem Kaltstart (Netzstecker).
Mit diesem Patch kann man einen Warmstart (reboot) auslösen und die Uhrzeit erscheint wieder.
Vielleicht magst du das ja mit einchecken, mir hilft das jedenfalls sehr.

+++ /opt/fhem/FHEM/98_BOSEST.pm 2026-06-03 20:18:59.240342748 +0200
@@ -236,7 +236,8 @@
                 "saveChannel:07,08,09,10,11,12,13,14,15,16,17,18,19,20 ".
                 "origin saveState:noArg restoreState restoreVolAndOff ".
                 "addDLNAServer:".$hash->{helper}{dlnaServers}." ".
-                "removeDLNAServer:".ReadingsVal($hash->{NAME}, "connectedDLNAServers", "noArg");
+                "removeDLNAServer:".ReadingsVal($hash->{NAME}, "connectedDLNAServers", "noArg")." ".
+                "reboot:noArg";
 
     #--check parameters for set function
     #DEVELOPNEWFUNCTION-1
@@ -404,6 +405,8 @@
     } elsif($workType eq "restoreVolAndOff") {
         my $wait = (defined($params[0]) && looks_like_number($params[0]))?$params[0]:0;
         InternalTimer(gettimeofday()+$wait, "BOSEST_restoreVolumeAndOff", $hash, 0);
+    } elsif($workType eq "reboot") {
+        return BOSEST_reboot($hash);
     #-- end NEW
     } else {
         return SetExtensions($hash, $list, $name, $workType, @params);
@@ -2822,6 +2825,28 @@
   }
 }
 
+#############################################################################
+
+sub BOSEST_reboot
+{
+    my ($hash) = @_;
+    my $host   = $hash->{helper}{IP};
+    my $port   = 17000;
+
+    my $socket = IO::Socket::INET->new(
+        PeerAddr => $host,
+        PeerPort => $port,
+        Proto    => 'tcp',
+        Timeout  => 5
+    );
+    return "cannot connect" unless($socket);
+
+    print $socket "sys reboot\r\n";
+    close($socket);
+
+    readingsSingleUpdate($hash, "state", "rebooting", 1);
+    return undef;
+}
 1;
 
 =pod
Raspi4 - Docker mit deconz, openccu, fhem, alexa-fhem, alexa-cookie-service, nginx und AfterTouch. Fhem noch mit CUL, BOSE-ST und Alexa (Connector)

Prof. Dr. Peter Henning

Gerne doch. Und in die CommandRef habe ich es auch eingefügt.

LG

pah

FlatTV

Hi pah,

Ich bin es wieder - mein Log meckert immer und wirkt dadurch sehr unaufgeräumt.
Das ist die Soundtouch 300 ohne Bass Modul.
Hättest du Lust das zu bereinigen?

2026.10.27 08:52:47.205 3: BOSEST: Unknown event, please implement:
$VAR1 = {
          'updates' => {
                         'audiospeakerattributeandsetting' => {
                                                                'audiospeakerattributeandsetting' => {
                                                                                                       'subwoofer01' => {
                                                                                                                          'available' => 'false',
                                                                                                                          'active' => 'false',
                                                                                                                          'wireless' => 'false',
                                                                                                                          'controllable' => 'true'
                                                                                                                        },
                                                                                                       'rear' => {
                                                                                                                   'available' => 'false',
                                                                                                                   'active' => 'false',
                                                                                                                   'controllable' => 'true',
                                                                                                                   'wireless' => 'false'
                                                                                                                 }
                                                                                                     }
                                                              },
                         'deviceID' => '9884E307C182'
                       }
        };

2026.10.27 08:52:47.206 3: BOSEST: Unknown event, please implement:
$VAR1 = {
          'updates' => {
                         'audiospeakerattributeandsetting' => {
                                                                'audiospeakerattributeandsetting' => {
                                                                                                       'subwoofer01' => {
                                                                                                                          'controllable' => 'true',
                                                                                                                          'wireless' => 'false',
                                                                                                                          'active' => 'false',
                                                                                                                          'available' => 'false'
                                                                                                                        },
                                                                                                       'rear' => {
                                                                                                                   'wireless' => 'false',
                                                                                                                   'controllable' => 'true',
                                                                                                                   'available' => 'false',
                                                                                                                   'active' => 'false'
                                                                                                                 }
                                                                                                     }
                                                              },
                         'deviceID' => '9884E307C182'
                       }
        };

2026.10.27 08:53:18.188 3: BOSEST: Unknown event, please implement:
$VAR1 = {
          'updates' => {
                         'audiospeakerattributeandsetting' => {
Raspi4 - Docker mit deconz, openccu, fhem, alexa-fhem, alexa-cookie-service, nginx und AfterTouch. Fhem noch mit CUL, BOSE-ST und Alexa (Connector)

betateilchen

was stört Dich da konkret? Die Meldung selbst oder die Tatsache, dass das Modul das event nicht verarbeiten kann?

Die Meldung selbst kannst Du über einen passenden verbose-Level loswerden.
----------
Es ist mir egal, wer Dein Vater ist.
Solange ich hier angele, läufst Du hier nicht übers Wasser!
----------

FlatTV

Eigentlich beides.

Das fhem Log wir bei mir dadurch ,,unsauber" und den Loglevel möchte ich schon im Standard betreiben.
Die Meldung ist ja erst ab den letzten Änderungen hinzugekommen.
Raspi4 - Docker mit deconz, openccu, fhem, alexa-fhem, alexa-cookie-service, nginx und AfterTouch. Fhem noch mit CUL, BOSE-ST und Alexa (Connector)

Prof. Dr. Peter Henning

OK, werde ich machen, allerdings dauert das ein paar Tage.

LG

pah

betateilchen

Zitat von: Prof. Dr. Peter Henning am 29 Oktober 2026, 09:47:18OK, werde ich machen, allerdings dauert das ein paar Tage.

Zitat von: FlatTV am 29 Oktober 2026, 06:31:38Das fhem Log wir bei mir dadurch ,,unsauber" und den Loglevel möchte ich schon im Standard betreiben.

@FlatTV es gibt ja immer zwei Möglichkeiten, das Logging zu beeinflussen.

Bis pah die Änderungen umgesetzt hat, kannst Du in der Moduldatei in Zeile 1809 den Loglevel auf 4 umstellen. Damit brauchst Du den verbose Level nicht zu ändern.

Log3 $hash, 4, "BOSEST: Unknown event, please implement:\n".Dumper($wsxml);
----------
Es ist mir egal, wer Dein Vater ist.
Solange ich hier angele, läufst Du hier nicht übers Wasser!
----------

FlatTV

Vielen lieben Dank!

Grüße von der windigen Küste
Jörg
Raspi4 - Docker mit deconz, openccu, fhem, alexa-fhem, alexa-cookie-service, nginx und AfterTouch. Fhem noch mit CUL, BOSE-ST und Alexa (Connector)

Treibhaus

Hallo,

Thema :BOSEST SPEAK

Ich habe nun nicht nachvollzogen ob die Vorschläge aus dem geschlossen Topic  [Neues Modul] BOSE SoundTouch
zuvor umgesetzt wurden.
File         Rev   Last Change
98_BOSEST.pm 31674 2026-09-22 07:55:24Z phenning

Meine BOSE-STs wurden schlussendlich und werden mit ST-Reborn auf Stand gehalten.
(falls es nebenbei von Interesse ist)
Aktuell ist mir aufgefallen, das die Sprachausgabe nicht funktioniert.

2026.11.10 12:37:10 5: BOSEST: finished mojo loop
2026.11.10 12:37:10 4: BOSEST: set /speaker => <play_info><app_key>Ml7YGAI9JWjFhU7D348e86JPXtisddBa</app_key><url>http://translate.google.com/translate_tts?ie=UTF-8&amp;tl=de&amp;client=tw-ob&amp;q=Test</url><service>Test</service><volume>21</volume></play_info>
2026.11.10 12:37:10 4: BOSEST: success: <?xml version="1.0" encoding="UTF-8" ?><Error value="403" name="HTTP_STATUS_FORBIDDEN" severity="Unknown">unsupported device</Error>
2026-11-10 12:37:10 BOSEST BOSE_xyz(geändert)xyz speak "Test" de 40
2026.11.10 12:37:10 5: BOSEST: run mojo loop

Dir URL: http://translate.google.com/translate_tts?ie=UTF-8&amp;tl=de&amp   ist nicht mehr erreichbar.


1. Könnte man das korrigieren ? Oder ist das nur bei mir falsch ?
2. Könnte man einen eigenen tts-server als/zum Eintrag(en) in dem Modul vorsehen ?


Andernfalls kann man Texte bei den per ST-Reborn wieder hersgestellten ST-Boxen per JSon:

curl -X POST "http://192.z.x.y:17008/api/announce" -H "Content-Type: application/json" -d "{\"text\":\"Es ist nur ein Test\",\"volume\":40,\"lang\":\"de\"}"
  abspiele. 

Vermisse es allerdings per BoseST.

Gruß Jörg
Signatur:
Raspberry 5 & NVMe + HM-Module für 3 Etagen (inkl  Garage/Garten) 
+BSC EnOcean TCM310 -Fensterkontakt,-Bewegungsmelder
+ 1-wired Temp-Sensoren + RHASSPY-Spracherkennung

Prof. Dr. Peter Henning

Zitat von: Treibhaus am 10 November 2026, 12:53:24Vermisse es allerdings per BoseST.
Für die Erzeugung von Sprachnachrichten gibt es viele Wege - beispielsweise benutze ich grundsätzlich Amazon Polly, und um konsistent zu sein wird das bei mir auf allen Audiogeräten mit derselben Stimme verwendet.

Bottom Line: Die Erzeugung der Sprachnachricht ist keine Sache, die in ein spezifischen Audiomodul hineingepackt werden sollte. Mittelfristig wird das also aus BoseST ganz verschwinden.

ZitatIch habe nun nicht nachvollzogen ob die Vorschläge aus dem geschlossen Topic  [Neues Modul] BOSE SoundTouch
zuvor umgesetzt wurden.
Dann würde ich doch einfach mal die CommandRef lesen und schauen, was alles umgesetzt wurde. ::)

LG

pah