Sonos-Einrichtung

Begonnen von Bronze, 05 Mai 2020, 13:59:15

Vorheriges Thema - Nächstes Thema

Bronze

Thema: Sprachausgabe

Es wurde eingestellt:

define Sonos SONOS
attr Sonos targetSpeakDir /mnt/SonosSpeak/
attr Sonos targetSpeakFileHashCache 1
attr Sonos targetSpeakURL \\192.168.1XX.XXX\mnt\SonosSpeak\


Der vorhandene Sonos_Player Sonos_Wohnzimmer wurde automatisch gefunden, mit

set Sonos_Wohnzimmer Speak 100 de Hallo


bekomme ich keine Sprachausgabe, in den Events sehe ich:


2020-05-03 18:09:06 SONOSPLAYER Sonos_Wohnzimmer LastActionResult: PlayURITemp: Error! UPnP-Fault-Fields: Code: "s:Client", String: "UPnPError", Actor: "-", Detail: "{UPnPError => {errorCode => 701}}"
2020-05-03 18:09:06 SONOS Sonos LastProcessAnswer: 1588522146
2020-05-03 18:09:06 SONOSPLAYER Sonos_Wohnzimmer currentTrackPosition: 0:00:00
2020-05-03 18:09:06 SONOSPLAYER Sonos_Wohnzimmer currentTrackPositionSec: 0


Könnt Ihr mir bitte helfen?
Beitrag editieren

Gunther

Ich hänge mich mal mit dran. Ich bekomme per Speak auch keine Ausgabe.
Im Eventmonitor deutet lediglich
2020-05-08 19:07:15 SONOSPLAYER Sonos_EGWintergarten LastActionResult: PlayURITemp: Success!
darauf hin, dass der Speakbefehl "erhört" wurde.
FHEM@Proxmox@Nuc: TabletUI als User-Interface (4 Wandtablets) / IOs per ser2net gekapselt
Homematic: Heizung, Fenster, Bewegung | Jeelink: Temperatur | Z-Wave: Bewegung, Temperatur | FS20: Temperatur, Fenster | Viessmann-Heizung eingebunden

binford6000

@Bronze: Siehst du denn die Freigabe?
\\192.168.1XX.XXX\mnt\SonosSpeak\
Wenn du dich an die Doku gehalten hast sollte die so lauten:
\\192.168.1XX.XXX\SonosSpeak\
und du solltest problemlos von Clientrechnern auf die Freigabe kommen.
Es sollte also so aussehen:
define Sonos SONOS
attr Sonos targetSpeakDir /mnt/SonosSpeak/
attr Sonos targetSpeakFileHashCache 1
attr Sonos targetSpeakURL \\192.168.1XX.XXX\SonosSpeak\


VG Sebastian

Bronze

@Sebastian:

FHEM läuft auf einem Notebook mit Linux. Linux ist nicht mein Spezialgebiet.

Im Dateiexplorer dort sehe ich /mnt/SonosSpeak/, wo sich auch die über den speak-Befehl erzeugte Audiodatei befindet.

Ist das das gleiche Verzeichnis wie \\192.168.1XX.XXX\SonosSpeak\

In der Windows-Netzwerkanzeige wird dieser Rechner nicht angezeigt.
Verstehe jetzt nicht, wie das zu lösen ist.

binford6000

Zitat von: Bronze am 09 Mai 2020, 17:32:25
@Sebastian:

FHEM läuft auf einem Notebook mit Linux. Linux ist nicht mein Spezialgebiet.

Im Dateiexplorer dort sehe ich /mnt/SonosSpeak/, wo sich auch die über den speak-Befehl erzeugte Audiodatei befindet.

Ist das das gleiche Verzeichnis wie \\192.168.1XX.XXX\SonosSpeak\

In der Windows-Netzwerkanzeige wird dieser Rechner nicht angezeigt.
Verstehe jetzt nicht, wie das zu lösen ist.

Hast du das hier gemacht?
https://wiki.fhem.de/wiki/SONOS#Einrichtung_von_Samba_f.C3.BCr_Sprachausgabem.C3.B6glichkeit

Bronze

@Sebastian:

Ja, bis auf
security = user
war alles schon.
ich habe anschließend den Samba-Server neugestartet und die Sprachausgabe mit

set Sonos_Wohnzimmer Speak 100 de Hallo

ausprobiert und keine Sprachausgabe und folgende Events erhalten:

2020-05-09 17:51:12 SONOS Sonos LastProcessAnswer: 1589039472
2020-05-09 17:51:18 SONOSPLAYER Sonos_Wohnzimmer LastActionResult: PlayURITemp: Error! UPnP-Fault-Fields: Code: "s:Client", String: "UPnPError", Actor: "-", Detail: "{UPnPError => {errorCode => 701}}"
2020-05-09 17:51:18 SONOS Sonos LastProcessAnswer: 1589039478
2020-05-09 17:51:18 SONOS Sonos LastProcessAnswer: 1589039478
2020-05-09 17:51:18 SONOSPLAYER Sonos_Wohnzimmer currentTrackPosition: 0:00:00
2020-05-09 17:51:18 SONOSPLAYER Sonos_Wohnzimmer currentTrackPositionSec: 0
2020-05-09 17:51:18 SONOS Sonos LastProcessAnswer: 1589039478

binford6000

Hast du den Hinweis gesehen:
https://forum.fhem.de/index.php/topic,79335.msg719716.html#msg719716

Das sieht nach einem ganz einfachen Zugriffs-Problem aus. Nach Änderungen auch immer den Dienst neu starten.
Wenn du dich Schritt-für-Schritt an die Anleitung im Wiki hältst sollte es laufen.
Ansonsten evtl. noch eine Firewall die dazwischen funkt?
VG Sebastian

Bronze

Warum wird denn der Link mit 192.1xx.1xx.xxx\SonosSpeak definiert, wenn die Audio-Dateien unter /mnt/SonosSpeak liegen?

Ich habe alles noch einmal durchgesehen hinsichtlich Dateisystem und Berechtigungen auf dem FHEM-Server.

Dann habe ich SONOS einmal gelöscht und neu definiert.

Im /mnt/SonsosSpeak-Verzeichnis werden die neu erzeugten Audio-Dateien nicht abgelegt.
Da stehen nur die alten Audio-Dateien aus einem früheren Versuch.
Hilft das bei der Fehlersuche?

Nach dem Neustart von FHEM kommt dann

Messages collected while initializing FHEM:configfile: Please define Sonos_Wohnzimmer 5ec11b12-f33f-1985-4bf4-de556a744f5a5411 first
./log/fhem.save: Please define Sonos_Wohnzimmer first


Gibt es da vielleicht einen Konflikt mit dem vor FHEM bereits definierten Wohnzimmer?

Otto123

#8
Hi,

Du klingst etwas uneinsichtig :)
ZitatWarum wird denn der Link mit 192.1xx.1xx.xxx\SonosSpeak definiert, wenn die Audio-Dateien unter /mnt/SonosSpeak liegen?
Erstmal Korrektur:
\\192.1xx.1xx.xxx\SonosSpeak lautet die samba Freigabe, so wird sie im Windows / Samba Netzwerk "gesehen"

/mnt/SonosSpeak ist einfach ein Verzeichnis im Linux, hat erstmal nichts mit Samba oder Freigabe zu tun. Wenn Du daran zweifelst, musst Du lesen lesen lesen.

Wichtig daran ist: FHEM/Sonos schreibt in das lokale Verzeichnis /mnt/SonosSpeak. Dein Sonos System muss im Netzwerk aber die Freigabe \\192.1xx.1xx.xxx\SonosSpeak im Samba / Windows Netzwerk sehen, erreichen und lesen können.
(Problem am Rande: Sonos kann nur smb 1.0. - macht der samba Server aber normalerweise von Haus aus. Nur alle modernen Clients Windows LinuxSamba unterstützen diese Protokoll per default nicht mehr)

Kann man selbst alles einfach testen: Von einem Samba / Windows Client im Netzwerk musst Du die Freigabe \\192.1xx.1xx.xxx\SonosSpeak  sehen und die mp3 Datei abspielen können. Wenn das nicht geht kann es Sonos auch nicht.

Gruß Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

Bronze

@Otto,
vielen Dank, ich lerne noch.
Aber auf jeden Fall klappt der Zugriff über einen Browser unter Windows.

Der danach ausgeführte Speak-Befehl erzeugt auch dort eine neue Audio-Datei, die man sich mittels Browser anhören kann.

Nur aus dem dem Sonos-Lautsprecher kommt kein Ton.
Damit müsste das Problem jetzt doch sehr eingekreist sein, nur weiß ich überhaupt nicht, wie man es lösen könnte.

Otto123

#10
Kannst Du in der FHEM Kommandozeile mal bitte folgendes ausführen und die Ausgabe posten
{qx(testparm -sv 2>/dev/null |grep protocol)}

Befindet sich dein Sonos System und der FHEM Server im gleichen Netzwerk? Kann Sonos rein netzwerktechnisch auf den Server zugreifen?
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

Bronze

#11
@Otto
client ipc max protocol = default
client ipc min protocol = default
client max protocol = default
client min protocol = CORE
server max protocol = SMB3
server min protocol = LANMAN1


Das SONOS-Gerät und das Notebook, auf dem FHEM läuft, sind im selben Netzwerk. Das Sonos-Gerät ist über WLAN und das Notebook über LAN angeschlossen.

Bei Nutzung von Spotify und dem SONOS-Player werden aktueller Song inkl. Cover und nächstem Song in FHEM korrekt abgezeigt, auch die Steuerung über FHEM funktioniert hier.


Otto123

Das klingt erstmal richtig, dann versuch doch zum Test deine Freigabe als Musikbibliothek in Sonos einzubinden:
Sonos App
Einstellungen / System / Musikbibliothek / ... einrichten  / .. hinzufügen.

In der Windopws App heisst es etwas anders, da gibt es einen direkteren Punkt:
Einstellungen Musikbibliothek / Ordner hinzufügen.
Danach solltest Du die mp3 in deinem SonosSpeak Ordner sehen.

Wenn das klappt gehen mir die Ideen aus ;)
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

Bronze

#13
@Otto:
Audio-Wiedergabe der über Fhem erzeugten Audio-Dateien des SonosSpeak-Ordners über den Sonos-Speaker mittels der Sonos-App funktioniert.

Wenn ich dann aber in FHEM neue Speak-Ausgaben mache, erscheinen neuen Dateien im SonosSpeak-Ordner, aber es erfolgt keine Audio-Wiedergabe über den Speaker.

Es werden nach und nach Audio-Dateien gespeichert.



Otto123

Naja neue mp3 Files werden (wen man es mit    targetSpeakFileHashCache 1    targetSpeakFileTimestamp 1 gemacht hat) nur angelegt wenn sie wirklich neu sind.
Ein wiederholtes set Sonos_Arbeitszimmer speak 30 de Die Welleerzeugt nicht immer wieder eine neue Datei?
Deine Player lassen sich aber momentan über FHEM steuern (start stop)? Bei mir ging es nämlich gerade mal wieder nicht....

Wenn das alles nicht geht musst Du beim Player mal verbose 5 setzen und das Log anschauen bzw. posten. Aber schalte das nach dem Test mit speak wieder aus, das Modul ist sehr gesprächig!

Gruß Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz