[Neues Modul] BOSE SoundTouch

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

Vorheriges Thema - Nächstes Thema

rr725

ich habe da einmal eine frage.....
kann man mit diesem modul mitgeben, mit welchem bluetooth device sich die bosebox standardmässig verbindet ?
sie soll sich eigentlich immer mit mazon Echo verbinden, jedoch verbindet sie sich immer mit meinem handy.
Vielen Dank

dominik

@Wenzel, stell bitte dennoch mal im Modul verbose=5 und poste das Log. Danke.

@rr725, seitens BOSE gibt es diese Funktionalität nicht. Wie verbindest du deinen Echo neu wenn zuerst dein Handy verbunden ist?
fhempy -  https://github.com/fhempy/fhempy: GoogleCast, Tuya, UPnP, Ring, EQ3BT, Nespresso, Xiaomi, Spotify, Object Detection, ...
Kaffeespende: https://paypal.me/todominik

Malc

Hallo Dominik,

vielen Dank für die fixe Beachtung meiner Frage!

Ich habe "attr bosesystem verbose 5" gesetzt und die Sprachausgabe gestartet: set BoseEZ speak "This is a louder message" +10"
Der entsprechende Soundtouch stoppt die aktuelle Wiedergabe, aber es kommt keine Ansage. Im minidlna Verzeichnis wird keine Datei erzeugt.

Leider bin ich nich nicht so fit in FHEM, im systemlog finde ich keine weiteren Infos, wo müsste ich das gewünschte Log finden?

Wenzel


Zitat von: dominik am 20 Dezember 2016, 19:12:30
@Wenzel, stell bitte dennoch mal im Modul verbose=5 und poste das Log. Danke.


Malc

#363
Hallo Dominik,

ich habe noch weiter probiert:

- Da ich deine Installationsanleitung bezgl. minidlna aus dem Eingangspost nicht ans rennen bekomme habe hatte ich diese
http://www.htpcguides.com/install-readymedia-minidlna-1-1-4-raspberry-pi/ Anleitung probiert und zumindest schon einmal den minidlna Server aktiviert bekommen. Zugriff mittels VLC und der Soundtouch App funktioneren.

Da ich aber keine google mp3 Dateien nach dem Speak Befehl in dem Verzeichnis bekommen habe und natürlich auch keine Sprachausgabe hören konnte habe ich weiterprobiert.

Aktuell habe ich "deine" /etc/init.d/minidlna aktiv und der minidlna läuft soweit. Nun nach dem speak Befehl zumindest schon mal die google mp3 Datei erstellt. Doch noch bleibt die BoseBox stumm.

Wenzel



dominik

Bitte BoseEZ auf verbose 5 stellen und dann shutdown reboot. Danach nochmals speak.

Das Log kannst du auch aus dem Webinterface (Links unten: Logfile) aufrufen und mir von dort hier rein kopieren.
fhempy -  https://github.com/fhempy/fhempy: GoogleCast, Tuya, UPnP, Ring, EQ3BT, Nespresso, Xiaomi, Spotify, Object Detection, ...
Kaffeespende: https://paypal.me/todominik

rr725

Zitat von: dominik am 20 Dezember 2016, 19:12:30
. Wie verbindest du deinen Echo neu wenn zuerst dein Handy verbunden ist?
bluetoothkoppelung mit bose auf dem handy "lösen"  und dann "Alexa verbinde dich mit Bluetoothlautsprecher"

Ist jedoch mein Bluetooth am Handy ausgeschaltet, ich der Bosebox Strom gebe, verbindet sie sich automatisch mit "Alexa"

Malc

Hallo Dominik,
das Logfile im Interface kenne ich, allerdings habe ich da nicht wirklich spannendes entdeckt:

2016.12.21 20:21:16 4: Connection accepted from WEB_192.168.178.51_61279
2016.12.21 20:21:16 4: WEB_192.168.178.51_61279 POST /fhem&fw_id=846&cmd=+set+Bose.EZ+speak+%22This+is+a+louder+message%22+%2B10; BUFLEN:0
2016.12.21 20:21:16 5: Cmd: >set Bose.EZ speak "This is a louder message" +10<
2016.12.21 20:21:16 4: name: /fhem&fw_id=846&cmd=+set+Bose.EZ+speak+%22This+is+a+louder+message%22+%2B10 / RL:1290 / text/html; charset=UTF-8 / Content-Encoding: gzip
/
2016.12.21 20:21:16 4: Connection closed for WEB_192.168.178.51_61273: EOF
2016.12.21 20:21:16 4: WEB_192.168.178.51_61279 GET /fhem?


Ich habe noch nicht die Stelle gefunden wie ich die Logeinträge eines bestimmten Modul, in diesem Fall BOSET, in ein eigenes Logfile lenken kann.


Zitat von: dominik am 20 Dezember 2016, 23:15:22
Bitte Bose.EZ auf verbose 5 stellen und dann shutdown reboot. Danach nochmals speak.
Das Log kannst du auch aus dem Webinterface (Links unten: Logfile) aufrufen und mir von dort hier rein kopieren.

dominik

Das sieht mir noch nicht nach verbose=5 aus.

Öffne dein Device über das Webinterface, stell dort bei den Attributen verbose auf 5. Mach nochmals speak und schau dann in /opt/fhem/log/ nach einem Logfile welches BOSEST Log Einträge hat.
fhempy -  https://github.com/fhempy/fhempy: GoogleCast, Tuya, UPnP, Ring, EQ3BT, Nespresso, Xiaomi, Spotify, Object Detection, ...
Kaffeespende: https://paypal.me/todominik

Malc

Hallo Domink,

ich bin mir realtiv sicher das es verbose 5 ist. Werde das aber heute abend noch einmal testen

Wenzel

Zitat von: dominik am 22 Dezember 2016, 20:51:33
Das sieht mir noch nicht nach verbose=5 aus.

Öffne dein Device über das Webinterface, stell dort bei den Attributen verbose auf 5. Mach nochmals speak und schau dann in /opt/fhem/log/ nach einem Logfile welches BOSEST Log Einträge hat.

Malc

Hallo Dominik,

ich habe noch mal wieder von vorne angefangen,
der aktuelle Status ist:

-minidlna Server läuft, die Bosebox kann mittels Bose App testfiles daraus abspielen.
-Wenn ich set Bose.EZ speak "Das ist ein Test."  aufrufe stoppt die aktuelle wiedergaben auf dem Gerät jedoch wird nichts ausgegeben
-im minidlna wird kein mp3 erzeugt.

Hier der Auszug aus der cfg:

define Bose BOSEST
attr Bose userattr autoAddDLNAServers staticIPs
attr Bose alias Bose System Modul BOSEST
attr Bose autoAddDLNAServers minidlna
attr Bose room Bose
attr Bose sortby 0

define Bose.EZ BOSEST 08DF1F075D48
attr Bose.EZ userattr autoZone channel_07 channel_08 channel_09 channel_10 channel_11 channel_12 channel_13 channel_14 channel_15 channel_16 channel_17 channel_18 channel_19 channel_20 ignoreDeviceIDs speakChannel ttsDLNAServer ttsDirectory ttsLanguage ttsSpeakOnError ttsVolume

attr Bose.EZ alias Esszimmer
attr Bose.EZ room Bose
attr Bose.EZ sortby 2
attr Bose.EZ ttsDLNAServer minidlna
attr Bose.EZ ttsDirectory /var/lib/minidlna
attr Bose.EZ ttsLanguage de
attr Bose.EZ ttsVolume +20
attr Bose.EZ verbose 5

Der Testaufruf: set Bose.EZ speak "Das ist ein Test."
erzeugt diese Loginfos:

2016.12.24 08:54:00 5: BOSEST: Bose.EZ, received message.
2016.12.24 08:54:00 5: BOSEST: processXml:
$VAR1 = {
          'updates' => {
                       'deviceID' => '08DF1F075D48',
                       'connectionStateUpdated' => {}
                     }
        };

2016.12.24 08:54:00 5: BOSEST: Bose.EZ, received message.
2016.12.24 08:54:00 5: BOSEST: processXml:
$VAR1 = {
          'msg' => {
                   'body' => {
                             'pingRequest' => {
                                              'pong' => 'true'
                                            }
                           },
                   'header' => {
                               'url' => 'webserver/pingRequest',
                               'deviceID' => '08DF1F075D48',
                               'request' => {
                                            'requestID' => '1',
                                            'info' => {
                                                      'type' => 'new'
                                                    }
                                          },
                               'method' => 'GET'
                             }
                 }
        };

2016.12.24 08:54:18 5: BOSEST: Bose.EZ, received message.
2016.12.24 08:54:18 5: BOSEST: processXml:
$VAR1 = {
          'updates' => {
                       'deviceID' => '08DF1F075D48',
                       'connectionStateUpdated' => {}
                     }
        };

2016.12.24 08:54:19 5: BOSEST: Bose.EZ, received message.
2016.12.24 08:54:19 5: BOSEST: processXml:
$VAR1 = {
          'updates' => {
                       'connectionStateUpdated' => {},
                       'deviceID' => '08DF1F075D48'
                     }
        };

2016.12.24 08:54:19 5: BOSEST: Bose.EZ, received message.
2016.12.24 08:54:19 5: BOSEST: processXml:
$VAR1 = {
          'msg' => {
                   'body' => {
                             'pingRequest' => {
                                              'pong' => 'true'
                                            }
                           },
                   'header' => {
                               'method' => 'GET',
                               'request' => {
                                            'info' => {
                                                      'type' => 'new'
                                                    },
                                            'requestID' => '1'
                                          },
                               'deviceID' => '08DF1F075D48',
                               'url' => 'webserver/pingRequest'
                             }
                 }
        };

2016.12.24 08:54:21 5: BOSEST: Bose.EZ, received message.
2016.12.24 08:54:21 5: BOSEST: processXml:
$VAR1 = {
          'updates' => {
                       'connectionStateUpdated' => {},
                       'deviceID' => '08DF1F075D48'
                     }
        };

2016.12.24 08:54:24 5: BOSEST: Bose.EZ, received message.
2016.12.24 08:54:24 5: BOSEST: processXml:
$VAR1 = {
          'updates' => {
                       'deviceID' => '08DF1F075D48',
                       'connectionStateUpdated' => {}
                     }
        };

2016.12.24 08:54:25 5: BOSEST: Bose.EZ, received message.
2016.12.24 08:54:25 5: BOSEST: processXml:
$VAR1 = {
          'updates' => {
                       'deviceID' => '08DF1F075D48',
                       'connectionStateUpdated' => {}
                     }
        };

2016.12.24 08:54:27 5: BOSEST: Bose.EZ, received message.
2016.12.24 08:54:27 5: BOSEST: processXml:
$VAR1 = {
          'updates' => {
                       'deviceID' => '08DF1F075D48',
                       'connectionStateUpdated' => {}
                     }
        };

2016.12.24 08:54:28 5: BOSEST: Bose.EZ, received message.
2016.12.24 08:54:28 5: BOSEST: processXml:
$VAR1 = {
          'updates' => {
                       'deviceID' => '08DF1F075D48',
                       'connectionStateUpdated' => {}
                     }
        };

2016.12.24 08:54:33 5: BOSEST: Bose.EZ, received message.
2016.12.24 08:54:33 5: BOSEST: processXml:
$VAR1 = {
          'updates' => {
                       'deviceID' => '08DF1F075D48',
                       'connectionStateUpdated' => {}
                     }
        };

2016.12.24 08:54:34 5: BOSEST: Bose.EZ, received message.
2016.12.24 08:54:34 5: BOSEST: processXml:
$VAR1 = {
          'updates' => {
                       'deviceID' => '08DF1F075D48',
                       'connectionStateUpdated' => {}
                     }
        };

2016.12.24 08:54:34 4: BOSEST: set /key => <key state="press" sender="Gabbo">STOP</key>
2016.12.24 08:54:34 4: BOSEST: success: <?xml version="1.0" encoding="UTF-8" ?><status>/key</status>
2016.12.24 08:54:34 4: BOSEST: set /key => <key state="release" sender="Gabbo">STOP</key>
2016.12.24 08:54:34 4: BOSEST: success: <?xml version="1.0" encoding="UTF-8" ?><status>/key</status>
2016.12.24 08:54:34 4: BOSEST: set /volume => <volume>120</volume>
2016.12.24 08:54:34 4: BOSEST: success: <?xml version="1.0" encoding="UTF-8" ?><status>/volume</status>
2016.12.24 08:54:34 5: BOSEST: Bose.EZ, received message.
2016.12.24 08:54:34 5: BOSEST: processXml:
$VAR1 = {
          'updates' => {
                       'deviceID' => '08DF1F075D48',
                       'volumeUpdated' => {
                                          'volume' => {
                                                      'actualvolume' => '100',
                                                      'targetvolume' => '100',
                                                      'muteenabled' => 'false'
                                                    }
                                        }
                     }
        };



So richtig komme ich noch nicht weiter, irgendwo übersehe ich wohl ein wichtiges Detail :-)

Frohe Weihnachten, oder mit den Grüssen der Saison.

Wenzel



dominik

@Wenzel, lösch mal dieses Attribut:
attr Bose.EZ ttsDLNAServer minidlna

...und teste dann nochmals.
fhempy -  https://github.com/fhempy/fhempy: GoogleCast, Tuya, UPnP, Ring, EQ3BT, Nespresso, Xiaomi, Spotify, Object Detection, ...
Kaffeespende: https://paypal.me/todominik

Masterciw

Hallo Dominik,

vielen Dank für dieses tolle Modul, habe erfolgreich eine Soundtouch 10 und eine Soundtouch 20 damit eingebunden und kann nur sagen es funktioniert einwandfrei.
Probleme hatte ich anfänglich mit dem Minidlna. Dies konnte ich nach Deiner Anleitung nicht installieren. Nach einer anderen aus diesem Thread funktionierte aber auch dieses einwandfrei.

Anhand der Commandref und dieses Threads ist es mir auch gelungen eine Sprachausgabe auf das jeweilige Device auszugeben. Dabei wird jedoch der Anfang abgeschnitten. Kann man irgendwo eine Pause definieren so das die Ausgabe z.B nach eine Sekunde ausgegeben wird.

Des  Weiteren habe ich mir in der Commandref die Befehle für Multiroom angeschaut. Schaue da aber noch nicht so recht durch. Möchte z.B das Gerät in der Küche mit dem im Wohnzimmer koppeln und dann auf beiden gleichzeitig eine Durchsage machen. z.B das vorlesen des Wetters wie im Wiki beschrieben:

https://wiki.fhem.de/wiki/Wetter_vorlesen_lassen

Kann man die Limitierung der 100 Zeichen für die Sprachausgabe noch aufbohren oder andersweitig umgehen?

Hier mal der bisher relevante Teil meiner Config

define WZ_Bose_ST20 BOSEST
attr WZ_Bose_ST20 userattr autoAddDLNAServers staticIPs
attr WZ_Bose_ST20 alias Bose Soundtouch 20
attr WZ_Bose_ST20 group Bose Soundtouch 20
attr WZ_Bose_ST20 room Wohnzimmer

define BOSE_F45EABFB8D3D BOSEST F45EABFB8D3D
attr BOSE_F45EABFB8D3D userattr autoZone channel_07 channel_08 channel_09 channel_10 channel_11 channel_12 channel_13 channel_14 channel_15 channel_16 channel_17 channel_18 channel_19 channel_20 ignoreDeviceIDs speakChannel ttsDLNAServer ttsDirectory ttsLanguage ttsSpeakOnError ttsVolume
attr BOSE_F45EABFB8D3D alias SoundTouch 20
attr BOSE_F45EABFB8D3D group Bose Soundtouch 20
attr BOSE_F45EABFB8D3D room Wohnzimmer
attr BOSE_F45EABFB8D3D speakChannel 6
attr BOSE_F45EABFB8D3D ttsDirectory /var/lib/minidlna
attr BOSE_F45EABFB8D3D ttsLanguage de
attr BOSE_F45EABFB8D3D verbose 5


Vielen Dank nochmals für Euere Unterstützung.

P.S. Kann man sich irgendwie beteiligen und z.B. im Wiki bzw in der Commandref mehr Beispiele hinterlegen. Dies wäre für Einsteiger wie mich einfacher zu verstehen. Vor allem bei komplexeren Modulen wäre man besser in der Lage den vollen Umfang eines Moduls zu verstehen.

Gruß Masterciw

dominik

@Masterciw

Beteiligung
Sehr gerne kannst du für das Modul eine Wiki Page mit entsprechenden Beispielen erstellen. Bei der Dokumentation freue ich mich immer wieder auf User Unterstützung! Wäre genial, wenn du da deine Erkenntnisse zur Konfiguration der Sprachausgabe einfließen lassen könntest.

Sprachausgabe
Der Anfang wird leider abgeschnitten, da die BOSE Box nicht sofort die volle Lautstärke ausgibt. In der nächsten Version ist das mit Hilfe der SOX Library behoben - folgt in den nächsten Tagen. Längere Texte möchte ich auch noch unterstützen, das braucht aber etwas mehr Arbeit.
Sprachausgabe auf mehreren Boxen sollte mit
set WZ_Bose_ST20 speak "Das ist ein Test."
set WZ_Bose_ST20 playEverywhere

oder andersrum funktionieren.

Gruß,
Dominik
fhempy -  https://github.com/fhempy/fhempy: GoogleCast, Tuya, UPnP, Ring, EQ3BT, Nespresso, Xiaomi, Spotify, Object Detection, ...
Kaffeespende: https://paypal.me/todominik

Masterciw

Hallo Dominik,

gerne würde ich unterstützen. Bin zwar was Perl angeht noch Einsteiger und habe mich mal ein wenig daran versucht. Kann aber fertigen Code durchaus lesen und in andere Scriptingsprachen wie vbscript, powershell konvertieren da ich mehr in der Windowswelt zuhause bin.

Wie bekomme ich denn Zugriff auf das Wiki und gibt es da ein Template mit dem groben Rahmen?

Könntest Du mir mal per PN Deine Bosespezifische Config zukommen lassen, so dass ich diese für die Dokumentation mitnutzen kann.
Habe sicherlich bei weitem noch nicht alles konfigurierbare in meiner Config konfiguriert.

Das Thema Multiraum interessiert mich ebenfalls sehr da ich 2 dieser Devices gekauft habe und momentan noch mit einem dritten liebäugel.

Mal eine Frage am Rande. Warum nutzt Du nicht das vorhandene Modul Text2Speech oder läßt sich dieses nicht für Bose nutzen?


Gruß Masterciw

Eisix

@Dominik

Das löschen von
attr Bose ttsDLNAServer minidlna

War der entscheidende Punkt, seitdem funktioniert TTS bei mir.
Gruß
Eisix