Autor Thema: Sonos im Docker - targetSpeakDir auf Server  (Gelesen 1107 mal)

Offline stenny

  • Jr. Member
  • **
  • Beiträge: 90
Sonos im Docker - targetSpeakDir auf Server
« am: 21 Mai 2018, 11:39:58 »
Hallo

Ich ziehe momentan mit meinem fhem auf Docker um. Grundsätzlich habe ich fast alles am laufen ausser der Speakfunktion.
Wie kann /muss ich nun das Attribut targetSpeakDir anpassen? Meine Freigabe ist nicht in dem fhem Docker.

Gruß
Carsten

Offline pole23

  • Full Member
  • ***
  • Beiträge: 127
Antw:Sonos im Docker - targetSpeakDir auf Server
« Antwort #1 am: 21 Mai 2018, 14:34:21 »
Ich habe bei mir Sonos in einem eigenen Docker laufen. Dort ist auch der Sambaserver drauf. Im FHEM gebe ich dann einfach die IP von dem Dockerserver an.

Offline stenny

  • Jr. Member
  • **
  • Beiträge: 90
Antw:Sonos im Docker - targetSpeakDir auf Server
« Antwort #2 am: 21 Mai 2018, 14:37:44 »
Hallo

Hast du im selben docker den Samba laufen wo auch fhem drin läuft?
Bei mir sind es einzelnen Docker....

im targetSpeakDir gibt man ja nur einen lokalen Pfad an - und eigentlich will ich nichts mounten oder so

Offline Reinerlein

  • Developer
  • Hero Member
  • ****
  • Beiträge: 2030
Antw:Sonos im Docker - targetSpeakDir auf Server
« Antwort #3 am: 21 Mai 2018, 19:34:03 »
Hallo Carsten,

targetSpeakDir gibt den Pfad an, der vom Sonos-Modul-SubProzess aus (nicht zwingend identisch mit Fhem) beschreibbar erreichbar sein muss.
Es kann z.B. auch ein UNC-Pfad eines "ausserhalb" stehenden (bezogen auf den Docker-Container) NAS-Geräts sein. Verstanden werden alle Angaben, die Perl so als Dateiname akzeptiert...

Grüße
Reinerlein

Offline stenny

  • Jr. Member
  • **
  • Beiträge: 90
Sonos im Docker - targetSpeakDir auf Server
« Antwort #4 am: 21 Mai 2018, 19:40:02 »
Hallo Carsten,

targetSpeakDir gibt den Pfad an, der vom Sonos-Modul-SubProzess aus (nicht zwingend identisch mit Fhem) beschreibbar erreichbar sein muss.
Es kann z.B. auch ein UNC-Pfad eines "ausserhalb" stehenden (bezogen auf den Docker-Container) NAS-Geräts sein. Verstanden werden alle Angaben, die Perl so als Dateiname akzeptiert...

Grüße
Reinerlein
Wenn ich dich richtig verstehe kann ich dort als anstatt/opt/fhem/Sonos auch \\192.168.x.y\SonosSpeak angeben?

Gruß
Carsten


Gesendet von iPhone mit Tapatalk

Offline Reinerlein

  • Developer
  • Hero Member
  • ****
  • Beiträge: 2030
Antw:Sonos im Docker - targetSpeakDir auf Server
« Antwort #5 am: 21 Mai 2018, 19:57:08 »
Hi Carsten,

ja, so ist es zumindest gedacht :)

Grüße
Reinerlein

Offline stenny

  • Jr. Member
  • **
  • Beiträge: 90
Antw:Sonos im Docker - targetSpeakDir auf Server
« Antwort #6 am: 21 Mai 2018, 21:12:24 »
Hi Carsten,

ja, so ist es zumindest gedacht :)

Grüße
Reinerlein

Hallo Reinerlein

Also das gedachte klappt leider nicht....

Habe jetzt im Sonos

targetSpeakDir                    \\192.168.11.49\SonosSpeak
targetSpeakFileTimestamp   1
targetSpeakURL                   \\192.168.11.49\SonosSpeak

eingetragen.

Vorhandene mp3 Dateien lassen sich abspielen. Bei ste Sonos_Wohnzimmer Speak 40 de Test erhalte ich im Log

2018.05.21 21:10:25 3: SONOS1: Load Google generated MP3 (1. Element) from "http://translate.google.com/translate_tts?tl=de&client=tw-ob&q=%20Test" to "\\192.168.11.49\SonosSpeak/RINCON_B8E93772059401400_MR_Speak_20180521-211025.mp31"
2018.05.21 21:10:26 3: SONOS1: Combine loaded chunks into "\\192.168.11.49\SonosSpeak/RINCON_B8E93772059401400_MR_Speak_20180521-211025.mp3"
Use of uninitialized value in concatenation (.) or string at ./FHEM/00_SONOS.pm line 4833, <$client> line 10.
binmode() on closed filehandle MPFILE at ./FHEM/00_SONOS.pm line 4840, <$client> line 10.
print() on closed filehandle MPFILE at ./FHEM/00_SONOS.pm line 4841, <$client> line 10.
2018.05.21 21:10:26 2: SONOS1: Beim Setzen der MP3-Informationen (ID3TagV2) ist ein Fehler aufgetreten: Can't call method "config" on an undefined value at ./FHEM/00_SONOS.pm line 4137, <$client> line 10.

2018.05.21 21:10:26 3: SONOS1: Start temporary playing of "\\192.168.11.49\SonosSpeak/RINCON_B8E93772059401400_MR_Speak_20180521-211025.mp3"
2018.05.21 21:10:26 3: SONOS1: SleepTimer berechnet die Laufzeit des Titels selber, da keine Wartezeit uebermittelt wurde!
2018.05.21 21:10:26 1: SONOS1: Da keine Endzeit ermittelt werden konnte, wird kein Restoring durchgeführt werden!
2018.05.21 21:10:26 3: SONOS1: Event: Received Transport-Event for Zone "Sonos_Wohnzimmer".
2018.05.21 21:10:26 3: SONOS1: Event: End of Transport-Event for Zone "Sonos_Wohnzimmer".

Hast du dazu vielleicht eine idee

Gruß Carsten

Offline Reinerlein

  • Developer
  • Hero Member
  • ****
  • Beiträge: 2030
Antw:Sonos im Docker - targetSpeakDir auf Server
« Antwort #7 am: 21 Mai 2018, 22:02:37 »
Hi Carsten,

es sieht nach fehlenden Schreibrechten aus...
Hast du das gecheckt?

Da muss die Freigabe jetzt nicht nur freien lesenden Zugriff haben (also für Gäste), sondern auch schreibenden...

Grüße
Reinerlein

Offline stenny

  • Jr. Member
  • **
  • Beiträge: 90
Antw:Sonos im Docker - targetSpeakDir auf Server
« Antwort #8 am: 21 Mai 2018, 22:12:25 »
Hi Carsten,

es sieht nach fehlenden Schreibrechten aus...
Hast du das gecheckt?

Da muss die Freigabe jetzt nicht nur freien lesenden Zugriff haben (also für Gäste), sondern auch schreibenden...

Grüße
Reinerlein

Hallo Reinerlein

Ja Schreibrechte sind vorhanden.
Hatte zum testen auf dem Rechner ein extra fhem installiert - ausserhalb des Docker.
Von da geht die Sprachausgabe direkt mit dem selben vorgesehenen Samba freigabe.

Offline Reinerlein

  • Developer
  • Hero Member
  • ****
  • Beiträge: 2030
Antw:Sonos im Docker - targetSpeakDir auf Server
« Antwort #9 am: 21 Mai 2018, 22:39:34 »
Hi Carsten,

dann musst du vielleicht mal aus dem Docker-Container heraus versuchen die IP zu erreichen. Vielleicht blockiert bei dir Docker da etwas...

Auch vielleicht mal testweise versuchen den Sambashare in dem Container zu mounten, um eine Portproblematik auszuschließen...

Grüße
Reinerlein

Offline stenny

  • Jr. Member
  • **
  • Beiträge: 90
Antw:Sonos im Docker - targetSpeakDir auf Server
« Antwort #10 am: 21 Mai 2018, 22:45:46 »
Hi Carsten,

dann musst du vielleicht mal aus dem Docker-Container heraus versuchen die IP zu erreichen. Vielleicht blockiert bei dir Docker da etwas...

Auch vielleicht mal testweise versuchen den Sambashare in dem Container zu mounten, um eine Portproblematik auszuschließen...

Grüße
Reinerlein
Hallo reinerlein

Wie gesagt stelle ich gerade auf docker um, das da einige Probleme auftreten ist/war zu erwarten.
Das Mounten in den docker werde ich dann mal testen - aber erst die nächsten Tage, geht morgen wieder (zu) früh los.....

Danke erstmal


Gruß
Carsten



Gesendet von iPhone mit Tapatalk

Offline FunkOdyssey

  • Hero Member
  • *****
  • Beiträge: 1778
Antw:Sonos im Docker - targetSpeakDir auf Server
« Antwort #11 am: 22 Mai 2018, 00:06:26 »
Ich habe damals lange an der Samba-Config (command) gegüftelt. Die Pfade waren bei mir nie ein Problem.

����samba:
��������container_name: samba
��������restart: unless-stopped
��������ports:
����������� - "139:139"
����������� - "445:445"
��������image: dperson/samba
��������volumes:
�������������- ./data/SonosSpeak:/mnt/SonosSpeak
�������������- /etc/localtime:/etc/localtime:ro
��������command: samba.sh -S -u "fhem;fhempass" -s "SonosSpeak;/mnt/SonosSpeak;no;no;yes"

(Muss noch eingerückt werden. Ging gerade am Smartphone nicht anders.)

Offline sluggyly

  • New Member
  • *
  • Beiträge: 11
Antw:Sonos im Docker - targetSpeakDir auf Server
« Antwort #12 am: 13 Juni 2019, 21:05:00 »
Auch wenn das ganze nun ein wenig her ist, möchte ich dazu sagen, dass ich das Speak-Verzeichnis zusätzlich zum SMB-Container auch in den Sonos-Container gemounted habe. Dann hat es funktioniert.

Offline FunkOdyssey

  • Hero Member
  • *****
  • Beiträge: 1778
Antw:Sonos im Docker - targetSpeakDir auf Server
« Antwort #13 am: 13 Juni 2019, 21:19:41 »
So ist es.
In beiden Containern mounten.

Offline Otto123

  • Hero Member
  • *****
  • Beiträge: 13507
  • schon mal restore trainiert?
    • Otto's Technik Blog
Antw:Sonos im Docker - targetSpeakDir auf Server
« Antwort #14 am: 13 Juni 2019, 22:03:59 »
Wenn ich dich richtig verstehe kann ich dort als anstatt/opt/fhem/Sonos auch \\192.168.x.y\SonosSpeak angeben?
Hi,

es wäre sogar grundlegend falsch einen lokalen Pfad anzugeben!!!

Es ist eine Freigabe die von allen Seiten beschreibbar sein muss! Und Sonos kann nur smb Version 1! Also der Samba/Windows/SMB/CIFS Server muss für Sonos smb1 unterstützen! Alle aktuellen System nehmen die Unterstützung für smb1 aus dem Programm!

Gruß Otto
Viele Grüße aus Leipzig
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7490+7412,WRT1900ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266