LoxBerry: Sonos Plugin verfügbar

Einklappen
X
 
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge
  • Gast

    #46
    Hier ist die player.cfg Datei


    Klicke auf die Grafik für eine vergrößerte Ansicht

Name: sonos.PNG
Ansichten: 688
Größe: 7,5 KB
ID: 76789


    Angehängte Dateien

    Kommentar

    • Gast

      #47
      Ok werde ich morgen machen.
      Miniserver Port ist 20000

      Kommentar

      • TimoC
        Extension Master
        • 25.08.2015
        • 180

        #48
        Hallo Olli,

        betreibe das Plugin auf meiner Synology. Funktioniert soweit auch alles. Bekomme allerdings beim Versuch des Sendens einer T2S an eine Gruppe folgenden Fehler:
        Code:
        [B]Fatal error[/B]: Uncaught exception 'Exception' with message 'Error sending command: HTTP/1.1 500 Internal Server Error  
         CONTENT-LENGTH: 347 CONTENT-TYPE: text/xml; charset="utf-8" EXT:  Server: Linux UPnP/1.0 Sonos/34.16-36160 (ZPS6) Connection: close  s:ClientUPnPError' in /volume1/web/sonos/system/PHPSonos.php:2645 Stack trace: #0 /volume1/web/sonos/system/PHPSonos.php(1988): PHPSonos->sendPacket('POST /MediaRend...') #1 /volume1/web/sonos/sonos2.php(1812): PHPSonos->SetAVTransportURI('x-rincon:RINCON...') #2 /volume1/web/sonos/sonos2.php(789): save_current_gr('1') #3 /volume1/web/sonos/index.php(7): require_once('/volume1/web/so...') #4 {main}   thrown in [B]/volume1/web/sonos/system/PHPSonos.php[/B] on line [B]2645[/B][FONT=Helvetica][/FONT]

        Einzelansagen funktionieren einwandfrei.
        Folgenden Aufruf nutze ich:
        Code:
        http://192.168.87.6/sonos/index.php?zone=kueche&action=sendgroupmessage&member=kueche,buero&text=dies%20ist%20ein%20Test&groupvolume=15
        Hast du eine Idee Olli? Wie könnte ich weiter debugen?

        Kommentar


        • Liver_64
          Liver_64 kommentierte
          Kommentar bearbeiten
          Deine Syntax ist falsch, du kannst nicht die Zone kueche noch einmal als "Member" hinzufügen, da sie ja schon dein sogenannter "Master" ist. Bei den Gruppen gibt es immer einen Master und x Member.
          Werde für das nächste Release eine Prüfung einbauen

        • TimoC
          TimoC kommentierte
          Kommentar bearbeiten
          Vielen Dank. Du hattest recht. War mir nicht bewußt.
      • Gast

        #49
        So, ich hab gestern das Plugin neuinstalliert.
        Es ist aber nach wievor dasselbe.
        Gleiche Fehlermeldung... ?
        Was kann ich noch testen ?

        Kommentar

        • Liver_64
          MS Profi
          • 07.09.2015
          • 591

          #50
          hmm... ich könnte mir vorstellen das die Online Prüfung Probleme bereitet, ich habe ab und zu ähnliche Problem wie du.
          Funktioniert denn wenigstens Play/Stop und Playliste laden usw. oder geht rein gar nichts?
          Ersetzte in der sonos2.php bitte die Zeilen 111 bis 133 durch folgenden Code:
          PHP-Code:
          // prüft den Onlinestatus jeder Zone
          function offstatus() {
              foreach($sonoszonen as $zonen => $ip) {
                  $port = 1400;
                  $timeout = 3;
                  $handle = @stream_socket_client("$ip[0]:$port", $errno, $errstr, $timeout);
                  if($handle) {
                      $sonoszone[$zonen] = $ip;
                      fclose($handle);
                  }
              }
              $sonoszone;
          }
          
          // Umbennennen des ursprünglichen Array Keys
          $config['SYSTEM']['myMessageStorepath'] = $config['SYSTEM']['messagespath'];
          unset($config['SYSTEM']['messagespath']);            
          
          $sonoszone = $sonoszonen; 
          
          und versuche es dann bitte noch einmal.
          Wenn ich deine player.cfg richtig verstanden habe hast du nur eine Zone!
          Gruß Oliver
          Anmerkung: Bitte keine Fragen mehr per PN sondern direkt im Forum damit andere mithelfen und mitprofitieren können.
          Bzgl. Sonos Plugin supporte ich nur noch die jeweils aktuelle Version NUR auf dem LoxBerry, ich kann keine VM Unterstützung mangels Hardware geben. Herzlichen Dank!

          Kommentar

          • Gast

            #51
            Werde ich machen. Danke !
            Dzt. habe ich nur diese eine Zone, ja !
            Aber nicht mehr lange 😉

            Kommentar

            • nonem
              Extension Master
              • 08.09.2015
              • 121

              #52
              Hier noch ein Bug:
              Wenn man über Spotify:Connect (also direkt aus der Spotify App) Musik auf einer Zone abspielt, wird nach einer TTS-Ansage eine vorhergehende Sonos-Playlist geladen.
              unser-bautagebuch.eu
              ------------------------------------
              loxfeedback.uservoice.com/
              inoffizielle Feature-Request-DB für Loxone
              ----------------------------------------------
              1x Miniserver, 6x Ext., 2x Dimmer Ext., 3x Relais Ext., 1-Wire Ext., Modbus Ext., Air Ext., 8kWp PV-Anlage mit Fronius Symo, WP Dimplex LA9TU ü. Modbus

              Kommentar


              • Liver_64
                Liver_64 kommentierte
                Kommentar bearbeiten
                Das ist kein Bug, sondern wenn überhaupt ein neues Feature. Werde mir das bei Gelegenheit mal anschauen, vermute aber adhoc dass das ein großes Rad ist an dem man dreht. Ich fokussiere mich auf Sonos und nicht auf Drittanbieter, sonst nimmt das kein Ende.

              • nonem
                nonem kommentierte
                Kommentar bearbeiten
                Ja, hab ich mir schon gedacht dass es nicht ein ganz trivial ist, kannst es ja in die known issues aufnehmen.
            • vterletzkiy
              Smart Home'r
              • 24.10.2015
              • 38

              #53

              Danke für die tolle Arbeit.
              klein ein Bug:
              TV Audio immer kommt über SONOS.
              Wenn man dann auf 2 Zone TTS-Ansage kommt, wir eine Sonos-Playlist geladen ung eingespilt.
              und wenn Radio läuft alles ok.

              Kommentar

              • HHoerner
                Extension Master
                • 26.09.2015
                • 101

                #54
                Hallo, habe ein Problem mit playgong=yes. im Verzeichnis auf dem loxberry existiert sowhl der in der Konfiguration des Plug-Ins angegebene Dateiname für Jingle MP3 als auch eine Kopie dieser MP3-Datei als 1.MP3 im angeführten Verzeichnis der Installation. Der Gong wird aber nie abgespielt. Das Abspielen von Textmeldungen funktioniert einwandfrei.

                http://10.0.0.129/plugins/sonos4lox/...ssage&text=Das ist ein test&volume=30

                Debugging im Browser zeigt auch nichts auffälliges. Dort erscheint nur Meldung das alle Dateien ordnungsgemäß gelöscht wurden.
                Hat hier jemand ähnliche Erfahrung gehabt und das gelöst? Was kann ich überprüfen.

                2. Frage:
                Funktioniert Ivona nun noch? Ich hatte app-Key und secret key. Funktioniert aber nicht. Secret key lies sich dann sogar neu erzeugen. Aber dennoch kein Ergebnis.
                Hier bin ich aus dem bisherigen Thread etwas verwirrt ob Ivona nun noch geht oder nicht. Ist halt von der Sprachqualität wesentlich besser.
                LG Herbert
                in Verwendung: Lox MS, Air, 1wire, EnOcean, Modbus, FastForward Energy Cams, Foscam IPCams, Fronius + Sonnenbattie, LG A/C, Hue, Sonos

                Kommentar


                • Ralf
                  Ralf kommentierte
                  Kommentar bearbeiten
                  Es gibt noch ein Problem mit der Groß- bzw. Kleinschreibung des Verzeichnisses und der Dateiendung "MP3". darauf hatte ich in #39.6 hingewiesen. Für mich habe ich eine Lösung gebastelt. Ich denke aber, dass Oliver eine Entscheidung treffen wird.
                  Was sicherlich bis zu einem Update jeder leicht machen kann ist, in der Datei sonos.cfg MP3path=mp3 zu setzen oder das Verzeichnis in tts auf MP3 umzubenennen.

                • Liver_64
                  Liver_64 kommentierte
                  Kommentar bearbeiten
                  Ja, das ist ein Fehler von mir. Wer Probleme hat bitte, wie Ralf beschrieben hat, in der sonos.cfg händisch korrigieren. Bitte die Kleinschreibung nutzen, auch bei den mp3 files, da kommt auch noch ein Update bzgl. Ivona Nutzung.

                • HHoerner
                  HHoerner kommentierte
                  Kommentar bearbeiten
                  Danke Ralf,
                  hat mit der Korrektur sofort funktioniert.
                  Liver_64: vielen Dank für das PlugIn bei dieser Gelegenheit. Tolle Arbeit. Für mich das mit Abstand wichtigste und beste Plugin in meiner Installation!
              • TimoC
                Extension Master
                • 25.08.2015
                • 180

                #55
                Hallo Olli,

                muss leider nochmal nerven. Betreibe die Loxberry Version auf meinem Synology NAS. Habe 6 Zonen (4 Play 1, 1 Play 5 2nd, 1 Sonos Connect am AVR).
                Bisher konnte ich stets die Zone "kueche" mit folgenden Befehl ansprechen:

                Code:
                http://192.168.x.6/sonos/index.php?zone=kueche&volume=40&playgong=yes&action=sendmessage&messageid=1
                Wenn ich alle Zonen in einer Gruppe laufen lasse und dann gezielt die Zone "kueche" mit oben angegeben String ansprechen möchte, wird folgender Error geworfen (Rincon und IP Adressen "geschwärzt".

                Code:
                Array
                (
                    [RINCON_xxx => Array
                        (
                            [0] => Array
                                (
                                    [Host] => 192.168.x.12
                                    [Sonos Name] => bad
                                    [Master] => 1
                                    [Group-ID] => RINCON_xxx
                                    [Rincon] => RINCON_xxx
                                )
                
                            [1] => Array
                                (
                                    [Host] => 192.168.x.14
                                    [Sonos Name] => buero
                                    [Master] =>
                                    [Group-ID] => RINCON_xxx
                                    [Rincon] => RINCON_xxx
                                )
                
                            [2] => Array
                                (
                                    [Host] => 192.168.x.16
                                    [Sonos Name] => kueche
                                    [Master] =>
                                    [Group-ID] => RINCON_xxx
                                    [Rincon] => RINCON_xxx
                                )
                
                            [3] => Array
                                (
                                    [Host] => 192.168.x.15
                                    [Sonos Name] => schlafzimmer
                                    [Master] =>
                                    [Group-ID] => RINCON_xxx
                                    [Rincon] => RINCON_xxx
                                )
                
                            [4] => Array
                                (
                                    [Host] => 192.168.x.18
                                    [Sonos Name] => wc
                                    [Master] =>
                                    [Group-ID] => RINCON_xxx
                                    [Rincon] => RINCON_xxx
                                )
                
                        )
                
                    [RINCON_xxx] => Array
                        (
                            [0] => Array
                                (
                                    [Host] => 192.168.x.13
                                    [Sonos Name] => wohnzimmer
                                    [Master] => 1
                                    [Group-ID] => RINCON_xxx
                                    [Rincon] => RINCON_xxx
                                )
                
                        )
                
                )
                
                Warning:  Illegal offset type in /volume1/web/sonos/sonos2.php on line 2682
                
                Warning:  fsockopen(): php_network_getaddresses: gethostbyname failed. errno=0 in /volume1/web/sonos/system/PHPSonos.php on line 2633
                
                Warning:  fsockopen(): unable to connect to :1400 (php_network_getaddresses: gethostbyname failed. errno=0) in /volume1/web/sonos/system/PHPSonos.php on line 2633
                
                Fatal error:  Uncaught exception 'Exception' with message 'Error opening socket: php_network_getaddresses: gethostbyname failed. errno=0 (0)' in /volume1/web/sonos/system/PHPSonos.php:2635
                Stack trace:
                #0 /volume1/web/sonos/system/PHPSonos.php(1799): PHPSonos->sendPacket('POST /MediaRend...')
                #1 /volume1/web/sonos/sonos2.php(2683): PHPSonos->GetPositionInfo()
                #2 /volume1/web/sonos/sonos2.php(2147): getgroupstatus('kueche')
                #3 /volume1/web/sonos/sonos2.php(840): save_current_group_ez()
                #4 /volume1/web/sonos/index.php(7): require_once('/volume1/web/so...')
                #5 {main}
                  thrown in /volume1/web/sonos/system/PHPSonos.php on line 2635
                Der Error wird auch geworfen, wenn ich z.B. eine andere Zone (Büro) anspreche.
                Hast du eine Idee? Und hast du ein Paypal Konto? Würde gerne für deine gute Arbeit und Support mal eine Kleinigkeit spenden.
                Zuletzt geändert von TimoC; 14.01.2017, 15:25.

                Kommentar


                • Liver_64
                  Liver_64 kommentierte
                  Kommentar bearbeiten
                  Aus irgendeinem Grund kann das Skript die IP Adresse nicht ermitteln. Wenn ich es richtig lese laufen 5 Zonen in einer Gruppe und eine als Standalone! Egal welche du aus der Gruppe ansprichst bekommst du einen Fehler?

                • TimoC
                  TimoC kommentierte
                  Kommentar bearbeiten
                  Funktioniert auf keiner Zone, sobald die angesprochene Zone in einer Gruppe mit mindestens einer anderen Zone ist. Ist auch egal, ob man eine MP3 oder eine T2S abspielen möchte.
                  Mit der alten PHP (Pre-Loxberry) Version funktioniert übrigens beides.
                  Zuletzt geändert von TimoC; 14.01.2017, 17:57.

                • Liver_64
                  Liver_64 kommentierte
                  Kommentar bearbeiten
                  Ich schaue es mir mal an und gebe dir Bescheid.
              • Simon
                Dumb Home'r
                • 28.08.2015
                • 11

                #56
                Hallo zusammen,

                ich habe heute den loxberry mit dem sonos plugin aufgesetzt. Einiges scheint zu funktionieren.
                z.B. http://loxberry/plugins/sonos4lox/in...ix&action=play

                Bei http://loxberry/plugins/sonos4lox/in...test&volume=20

                kommt allerdings diese Fehlermeldung:
                Fatal error: Uncaught exception 'Exception' with message 'Error sending command: HTTP/1.1 500 Internal Server Error CONTENT-LENGTH: 347 CONTENT-TYPE: text/xml; charset="utf-8" EXT: Server: Linux UPnP/1.0 Sonos/34.7-35162c (ZPS1) Connection: close s:ClientUPnPError' in /opt/loxberry/webfrontend/html/plugins/sonos4lox/system/PHPSonos.php:2645 Stack trace: #0 /opt/loxberry/webfrontend/html/plugins/sonos4lox/system/PHPSonos.php(927): PHPSonos->sendPacket('POST /MediaRend...') #1 /opt/loxberry/webfrontend/html/plugins/sonos4lox/sonos2.php(2016): PHPSonos->Play() #2 /opt/loxberry/webfrontend/html/plugins/sonos4lox/sonos2.php(848): play_tts('a1e87fadafc52b3...', '0') #3 /opt/loxberry/webfrontend/html/plugins/sonos4lox/index.php(7): require_once('/opt/loxberry/w...') #4 {main} thrown in /opt/loxberry/webfrontend/html/plugins/sonos4lox/system/PHPSonos.php on line 2645 Der Sonosplayer geht aus und geht einige Sekundem später wieder an.

                Auf dem IPhone ist folgendes zu sehen:

                Wo habe ich den Fehler gemacht?

                Viele Grüße



                Kommentar


                • Simon
                  Simon kommentierte
                  Kommentar bearbeiten
                  Vielen Dank für den Tip. Zonen gelöscht und Scan ausgeführt. Gleiches Problem. Player.cfg hat gültige IP's.
                  Sonos Plugin gelöscht und neu installiert. Gleiches Problem.
                  Werde morgen den loxberry noch einmal komplett neu installieren.
                  Oder hast Du noch eine Idee?

                • Liver_64
                  Liver_64 kommentierte
                  Kommentar bearbeiten
                  Hast du dein Netzwerk auf IPv6 konfiguriert? Das Script funktioniert nur mit IPv4.

                • Simon
                  Simon kommentierte
                  Kommentar bearbeiten
                  Den Haken bei "IPv6 Unterstützung" in der Fritzbox 7490 entfernt. Jetzt läuft es.
                  Danke
              • The Spirit
                LoxBus Spammer
                • 11.09.2015
                • 391

                #57
                Leider kann ich noch immer nicht den Status meiner Sonox Box zurücklesen (play, pause, titel, ...)
                Kann mir hier jemand mal seine Konfiguration zukommen lassen?
                Danke

                Kommentar


                • Liver_64
                  Liver_64 kommentierte
                  Kommentar bearbeiten
                  Ich leider nicht, da ich die Funktion nicht nutze. Ich hatte es nur für die Screenshots schnell konfiguriert und dann wieder gelöscht

                • The Spirit
                  The Spirit kommentierte
                  Kommentar bearbeiten
                  gibt es sonst eine möglichkeit, play und pause zu toggeln?
                  Habe hier noch einen Taster frei, mit dem ich zwischen play und pause toggeln will.
                  Da es ja aber zwei getrennte befehle sind, wollte ich den aktuellen zustand abfrage und dann bei jedem tastendruck den anderen befehl auslösen.
                  Wenn ich aber den aktuellen status nicht weis, geht das nicht.
                  Oder hast du da ne Idee?
                  Danke

                • Liver_64
                  Liver_64 kommentierte
                  Kommentar bearbeiten
                  ja mit ...action=toggle (siehe Wiki)
              • TheUnexpectedGuest
                Smart Home'r
                • 13.01.2016
                • 78

                #58
                Nochmal die Frage zu den Radiosendern. Die Verbindung Loxberry->Sonos steht. Wenn ich aber Radiosender eingebe und Speicher (radio1.jpg) sind diese bei nochmaligen Aufruf des Plugins wieder verschwunden (radio2.jpg), woran liegt das?
                Angehängte Dateien

                Kommentar


                • Liver_64
                  Liver_64 kommentierte
                  Kommentar bearbeiten
                  Ich gehe jetzt einfach mal davon aus dass du auch speicherst ;-) Lösche doch erst einmal die Zeilen so dass nur eine Zeile für eine Eingabe hast. Dann versuche es bitte noch einmal. Kontrolliere dann bitte nochmals die sonos.cfg Datei was unter [RADIO] steht.

                • TheUnexpectedGuest
                  TheUnexpectedGuest kommentierte
                  Kommentar bearbeiten
                  Ja, speichern tu ich :-) Also, das mit dem Löschen funktioniert nicht, aber ich sehe die Einträge in der sonos.cfg unter radio[1], radio[2] usw. insofern sollte alles in Ordnung sein, danke
              • The Spirit
                LoxBus Spammer
                • 11.09.2015
                • 391

                #59
                Ich nutze das Sonos Plugin und das Fritzlox Plugin zusammen und bei anrufen eine TTS Nachricht über den Anrufer zu bekommen.
                Hierbei baue ich mir aus einem festen Text und des Namen des Anrufers, welche ich vom Fritzlox Plugin bekomme, den Text zusammen und lasse Ihn durchsagen.
                Jetzt habe ich aber festgestellt, das wenn mehrmals der gleiche Anrufer hintereinander anruft, nur immer beim ersten Anruf der Text durchgesagt wird.
                Es muss erst wieder ein anderer "Name" anrufen, damit dieser durchgesagt wird.
                Weist du warum das so ist?
                Danke

                Kommentar


                • Liver_64
                  Liver_64 kommentierte
                  Kommentar bearbeiten
                  Ich vermute mal das du es über einen Statusbaustein gelöst hast. Falls ja, brauchst du noch zusätzlich einen Trigger weil sich der Zustand nach dem letzten Anruf nicht geändert hat. Erst wenn der Anrufername sich ändert bekommst du erneut eine T2S

                • The Spirit
                  The Spirit kommentierte
                  Kommentar bearbeiten
                  stimmt, ich habe eine statusbaustein, von dem ich den namen bekomme und danach den TTS Ausgang der aus einem festen teil und dem name aus dem Statusbaustein seinen Text zusammen baut.
                  Wie kann ich das dann mit einem Trigger machen?
              • Gast

                #60
                Klicke auf die Grafik für eine vergrößerte Ansicht  Name: fetch.PNG Ansichten: 1 Größe: 4,7 KB ID: 78525
                Klicke auf die Grafik für eine vergrößerte Ansicht  Name: fetch2.PNG Ansichten: 1 Größe: 2,1 KB ID: 78526

                Hi Leute !

                Das Problem mit der Erkennung der Zonen wurde gelöst.

                Jetzt habe ich das nächste Prob. Ich habe in der Loxone Config einen Virtuellen UDP Angelegt mit der Senderadresse des Raspi und dem Port 6060, aber es kommt da nix an.
                Was mich ein bisschen verwunddert, weil auf dem Raspi auch das Wetter PlugIn läuft mit dem Port 7000 und der sendet voller Freude :-).

                Im Router wird der Port weitergeleitet von 6060 (Raspi) auf 20000 (loxone). Beim Wetterservice habe ich garnix weitergeleitet und der sendet immer....?

                Stimmt das denn mit dem Virtuellen UDP Eingang und dem Befehl dazu ? Dieser heisst dann einfach "fetch_sonos"
                Als Digitaleingang verwenden und als Schalter.
                Zuletzt geändert von Gast; 18.01.2017, 18:07.

                Kommentar


                • Liver_64
                  Liver_64 kommentierte
                  Kommentar bearbeiten
                  Was war denn das Problem mit den Zonen bzw. wie hast du es gelöst?

                  Du brauchst keinen UDP Eingang, sondern einen ganz normalen virtuellen Eingang. Dieser dient lediglich als Schalter/Trigger um die Daten zu holen und muss nur fetch_sonos benannt werden.

                • BavariaTom
                  BavariaTom kommentierte
                  Kommentar bearbeiten
                  Kann es sein, dass das Sonos4Lox Plugin immer den Port verwendet, welcher bei den Loxberry Miniserver Einstellungen hinterlegt ist und die UDP Port Option im Plugin nicht funktioniert?
                  Habe gerade alles mögliche ausprobiert und es ist total egal welchen UDP Port man im Plugin hinterlegt, gesendet wird immer mit dem Port welcher im Loxberry bei dem Miniserver hinterlegt ist.

                  Bei Wunderground z.b. funktioniert diese Option ohne Probleme.
                  Zuletzt geändert von BavariaTom; 18.01.2017, 21:04.
              Lädt...