Ankündigung

Einklappen
Keine Ankündigung bisher.

Sonos Integration in Gira Homeserver HS3/HS4 (Vorstellung)

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

    Sonos Integration in Gira Homeserver HS3/HS4 (Vorstellung)

    Hallo zusammen,

    es gibt schon eine Reihe verschiedener Threads zu SONOS Integrationen hier im Forum. An dieser Stelle möchte ich einmal meine Lösung vorstellen.

    Folgende Anforderungen waren an diese Lösung gestellt:
    • Es sollte nur 1 Visu-Seite sein, in der alle Player abgebildet werden können, ähnlich wie der eigentlichen SONOS-Anwendung.
      Heißt also, es musste eine Lösung her, die dynamisch den Objekten die Informationen für die jeweiligen Räume zuordnen kann. Alles andere wäre von vornherein inakzeptabel.
    • Das Hinzufügen von Playern soll nicht in einer "Objekt-Erstellungsschlacht" ausufern, heißt: Jeder Player soll schnell in die bestehende Lösung integriert werden können.
    • Die einfachsten Funktionen sollen in die Sonos-Visu integriert werden. Komplexe Funktionen können über die normale Sonos-Anwendung erfolgen.
    • ... und natürlich ein paar Spielereien, damit es auch cooler aussieht.
      • Scrollbar (innerhalb der Visu) für Musikliste
      • Highlight des aktuellen Titels innerhalb der Musikliste
      • Dynamische Album-Bilder innerhalb der Musikliste und Bild des aktuellen Titel (oben)
      • Track-Zeile und Länge des Titels müssen noch umgesetzt werden
    Hier mal meine Lösung, vorab jedoch einige Anmerkungen:
    • Die Lösung ist noch nicht ganz fertig. Die Scrollbar funktioniert zwar schon aber noch nicht so wie ich es mir vorstelle.
    • Die Lösung basiert auf frei zugängigen Tools. Lediglich die Integration der Tools in den Homeserver "ist auf meinem Mist gewachsen"
    • Die Integration basiert aktuell auf Standard-Logik, plus einer Handvoll Bausteinen aus dem Download-Bereich (der KameraSwitcher von NilsS ist einfach nur COOL )
    • Sobald die Lösung im ersten Step fertiggestellt ist, kann ich sie gerne im Download-Bereich zur Verfügung stellen.
    Ciao
    Der DJ

    Sonos-Integration in unserer Visu (die Anwendung läuft aktuell noch auf den Entwicklungs-Homeserver, wie man sieht)
    Eine Vielzahl an Funktionen sind bereits umgesetzt, eine weitere Vielzahl an Funktionen, die bereits zur Verfügung stehen, sind noch nicht umgesetzt, es ist aber auch fraglich, ob alles was möglich ist überhaupt hier in die Visu kommt. Sonos05.png
    Sonos01a.png
    Sonos02.png
    Sonos04.png
    Angehängte Dateien
    Zuletzt geändert von DJ.Picasso; 11.09.2016, 13:32.
    Ich habe heute leider kein Foto für Dich
    Projects: Sonos Gateway für HS/FS (Musterprojekt) - KNX-MonAMI für HS/FS - Nutzer-Profile

    #2
    Anmerkung gelöscht!

    Ich habe heute leider kein Foto für Dich
    Projects: Sonos Gateway für HS/FS (Musterprojekt) - KNX-MonAMI für HS/FS - Nutzer-Profile

    Kommentar


      #3
      Wie schon angekündigt stelle ich hier mal mein Player-Modul für Sonos zur Verfügung.
      Da das Modul etwas umfangreicher geworden ist, habe ich ein Musterprojekt erstellt. Ich habe vento66 bereits kontaktiert für den Download-Bereich.
      Der Download enthält auch eine Doku für die Installation der API, die ich nutze (nodes.js inkl. https://github.com/jishi/node-sonos-http-api)

      Mein Player-Modul unterstützt folgende Funktionen:
      • Automatische Synchronisation mit dem Sonos-Controller (man kann wahlweise den Sonos-Controller oder meinen Player bedienen und die beiden Anwendungen synchronisieren sich automatisch - Listen, Lautstärke, Shuffle, Repeat, usw.)
      • Nur 1 Seite für alle Player (Listen synchronisieren sich automatisch auf den jeweiligen aktiven Player - ähnlich dem Sonos-Controller)
      • Favoriten (aus Sonos-Controller) - über die Scrollbar werden bis zu 65.000 Favoriten dargestellt (Macht wenig Sinn, aber für längere Listen ist keine Anpassung notwendig)
      • Playlisten (aus Sonos-Controller) - Auch hier können längere Listen automatisch dargestellt werden.
      • Durchsagen (individuel - der Download enthält eine Beispieldatei mit einigen Durchsagen)
        Mit den Durchsagen sind die Sonos-Player natürlich auch über die generelle Logik des HS mit individuellen Ansagen ansprechbar.
        Die Player können einzeln oder aber auch alle gleichzeitig angesprochen werden. Die Lautstärke bei der Durchsage ist auch variabel!)
      • TuneIn Radio-Stations (eigene Definitionen - ich habe eine Beispielliste mit ca. 40 Stationen beigefügt) -
        Es reicht, die Datei zu erweitern, im Player-Modul sind keine Anpassungen notwendig, alles automatisch
      • Scrollbars für alle Listen (eigenes Logikmodul inkl. der Grafiken, um scrollbare Listen darzustellen)
      • Scrollbar der Musikliste wandert automatisch mit, aktueller Song ist immer "on Top" (siehe Screen)
      • Individuelles Gruppieren von Playern (diese Funktion wird nicht synchronisiert. Geht zwar, benötige ich aber nicht)
      • Cover-Bilder der Alben (wenn vorhanden, ansonsten Default-Bild - siehe Screen)
      Die von mir genutzte API unterstützt noch eine Vielzahl weiterer Funktionen (Spotify, AppleMusic, Musikbibliotheken), die ich bislang für die Player-Modul Version 1.0 noch nicht umgesetzt habe. Ich glaube aber, dieses Player-Modul bietet zumindest eine gute Grundlage für eigene Ergänzungen.

      Vorteil dieses Player-Moduls
      • Beim Hinzufügen weiterer Player müssen pro Player nur 3 Kommunikationsobjekte erstellt werden. Die Erweiterung um einen Player ist damit in der Regel innerhalb weniger Minuten erledigt!
      • Wie die Erweiterung durchzuführen ist, steht in der beigelegten Dokumentation
      sonos.png

      Zuletzt geändert von DJ.Picasso; 19.12.2016, 15:21.
      Ich habe heute leider kein Foto für Dich
      Projects: Sonos Gateway für HS/FS (Musterprojekt) - KNX-MonAMI für HS/FS - Nutzer-Profile

      Kommentar


        #4
        ...na da hat sich aber einer viel Mühe gegeben!!! Vielen Vielen DANK!!! Wenn meine neuen Frauen mit mir reden (Alexa und DOT (hmm ist das eine Frau?)) dann werde ich mal Dein Projekt mal in meinen HS übernehmen!!! Bin mal gespannt!!! Also VIELEN DANK für die Arbeit und das bereitstellen!!!
        Gruß Marcus

        Kommentar


          #5
          Echt Klasse ! Sehr gute Dokumentation ! Danke für deine Hilfe bei meinen kleinen Problemchen
          Werde es die Tage mal testen. DANKE !!!!

          Kommentar


            #6
            Hallo zusammen,
            ich hoffe Ihr hatte alle ein FROHES und ERHOLSAMES FEST .

            Ich habe vento66 eine neue Version des Player-Moduls für Sonos geschickt (immer noch als Musterprojekt). Der Download wird wahrscheinlich in den nächsten Tagen zur Verfügung stehen. Die Version enthält auch eine Beschreibung zum update der API.

            Folgende Erweiterungen sind in der Version 2.0 enthalten:
            • Einige Optimierungen in der Darstellung der Listen, Navigation, Scrollbars
            • Zugriff auf die SONOS Musikbibliothek. Den Zugriff habe ich als Schnittstelle ausgelegt, die relativ einfach individuell gepflegt werden kann .
              Dadurch besteht nicht nur die Möglichkeit auf die Sonos-Bibliothek (Interpretensuche, Albumsuche, Songsuche) zuzugreifen sondern auch Dienste wie Spotify, Apple Music, Deezer, Pandora, SiriusXM einzubinden, ohne großartig in die HS-Logik einzugreifen. Die Integration ist relativ einfach und schnell umsetzbar (siehe beigefügte Doku).
              Es besteht auch die Möglichkeit die Listen zu separieren (bsp. Spotify, Apple usw.). Auch hier sollte der Aufwand überschaubar sein.
              Ansonsten, falls Ihr Hilfe benötigt, einfach kurz melden.
            • Löschen der Musikliste
            • Schlummerfunktion (vergleichbar zu Sonos Controller)

            Ciao
            Der DJ



            sonos01.png
            Ich habe heute leider kein Foto für Dich
            Projects: Sonos Gateway für HS/FS (Musterprojekt) - KNX-MonAMI für HS/FS - Nutzer-Profile

            Kommentar


              #7
              Ist online: http://service.knx-user-forum.de/?co...load&id=100123
              Mfg Micha
              Ich sage ja nicht, das wir alle dummen Menschen loswerden müssen, aber könnten wir nicht einfach alle Warnhinweise entfernen und den Dingen ihren Lauf lassen?

              Kommentar


                #8
                hallo
                danke für die tolle arbeit ...

                hab alles nach Anleitung gemacht - hoffe ich
                ich kann die Sonos Player über einen Browser steuern wenn ich dort die HTTP befehle sende
                dh. für mich - mein nodejs funktioniert

                ich kann vom HS zB alle Anhalten senden - das wird auch am Sonos ausgeführt
                dh. mein HS sendet auch an den PC wo das nodejs liegt.

                afaw
                alle anderen Webseiten abfragen werden zwar rausgeschickt lt. Debug seite - jedoch reagieren die Sonos darauf nicht
                siehe Bild 1
                dh. zwischen HS --- Sonos verschluckt jemand die Befehle

                wie kann ich prüfen wo hier der wurm drin ist?

                Frage zu den Kamerabilder:
                wo werden diese gespeichert bzw. wo holt sich der HS das ab ?
                IP:1400/SonosKameraPlayer01
                von wem muss die IP angegeben werden
                muss man das verzeichnis dort anlegen oder macht er das automatisch ?

                Bild 2 Seite für Ipad optimiert
                You do not have permission to view this gallery.
                This gallery has 3 photos.
                mfg Peter

                Kommentar


                  #9
                  Hallo Peter,

                  Zitat von pessletz Beitrag anzeigen
                  hallo
                  danke für die tolle arbeit ...
                  Besten Dank, freut mich zu hören!

                  Zitat von pessletz Beitrag anzeigen
                  hab alles nach Anleitung gemacht - hoffe ich
                  ich kann die Sonos Player über einen Browser steuern wenn ich dort die HTTP befehle sende
                  dh. für mich - mein nodejs funktioniert

                  ich kann vom HS zB alle Anhalten senden - das wird auch am Sonos ausgeführt
                  dh. mein HS sendet auch an den PC wo das nodejs liegt.
                  Wenn Du im Browser die Befehle eintippen kannst, funktioniert Dein nodejs, korrekt ... und wenn Du irgendwelche Befehle senden kannst egal welche, dann funktioniert die Kommunikation zwischen HS und Sonos. Heißt also bis dahin: Alles Klar!

                  Zitat von pessletz Beitrag anzeigen
                  alle anderen Webseiten abfragen werden zwar rausgeschickt lt. Debug seite - jedoch reagieren die Sonos darauf nicht
                  siehe Bild 1
                  dh. zwischen HS --- Sonos verschluckt jemand die Befehle

                  wie kann ich prüfen wo hier der wurm drin ist?
                  Zu Screen 1:
                  Dein HS sendet auf jeden Fall den Request an Deinen Server auf dem nodejs liegt: 192.168.66.101.
                  Dein Server sendet jedoch keinen Response (er antwortet nicht).
                  Laut der Meldung heißt Dein Player: "01 Büro"

                  Das Problem ist das Leerzeichen zwischen 01 und Büro. Das siehst Du in Bild 3.
                  Häufig konvertiert der Browser die URL sofort in: 01%20Büro (Browser mögen keine "blanks" in den URLs).

                  In Bild 1 siehst Du, dass Dein HS den Raumnamen "01 Büro" mit Leerzeichen überträgt. Das KNALLT.
                  Du musst bei Dir in die Logik in den Namen "01%20Büro" eintragen. Dann solltest Du aber die Logik etwas umbauen, da ansonsten in Deiner Visu immer diese komischen %20 stehen. Mit einigen Änderungen ist das jedoch kein Problem. Zumindest für die Tests, ob alles funktioniert einfach erst mal mit der %20 arbeiten

                  Du wirst sehen: http://192.168.66.101:5005/01%20Büro/state funktioniert

                  Je nach Browser, den Du nutzt:
                  Microsoft: Der Browser fragt Dich, ob Du state.json (660 Bytes) von "192.168.66.101" öffnen möchtest (die Dateigröße sollte > 0 Bytes sein)
                  Firefox: Der Browser zeigt Dir irgendwie so etwas an:
                  Code:
                   {"currentTrack":{"artist":"Julie Anna","title":"Shine Bright Like a Diamond","album":"Shine Bright Like a Diamond", "duration":225,"uri":"x-file-cifs://SERVER/Musik/Charts2016/Julia%20Anna%20-%20Shine%20Bright%20Like%20a%20Diamond.mp3", "type":"track","stationName":""},"nextTrack":{"artist":"Paul Kalkbrenner","title":"Sky and Sand","album":"Berlin Calling", "duration":232,"uri":"x-file-cifs://SERVER/Musik/Charts2016/Paul%20Kalkbrenner%20-%20Sky%20and%20Sand.mp3"}, "volume":5,"mute":false,"trackNo":31,"elapsedTime":204,"elapsedTimeFormatted":"00:03:24","playbackState":"PAUSED_PLAYBACK","playMode":{"repeat":"none","shuffle":false,"crossfade":true}}
                  Sobald Du eine dieser Meldungen bekommen solltest, dann weißt Du, es funzt.

                  Ciao
                  Der DJ
                  Zuletzt geändert von DJ.Picasso; 23.01.2017, 23:13.
                  Ich habe heute leider kein Foto für Dich
                  Projects: Sonos Gateway für HS/FS (Musterprojekt) - KNX-MonAMI für HS/FS - Nutzer-Profile

                  Kommentar


                    #10
                    Hi Peter,

                    sorry, die Frage der Kameras vergessen. Über Sonos Controller (Hilfe -> über mein Sonos Gerät) kannst Du die Infos zu Deinen IP-Adressen der Sonos Geräte bekommen.
                    Typischerweise ist das über DHCP. Ich habe es so gemacht, dass ich die Adressen meiner Sonos Geräte über DHCP fest vergebe, damit sie immer dieselben IPs bekommen.
                    Wenn Du die IP-Adresse des 1. Gerätes in Deiner Liste einträgst sollte alles funktionieren.
                    Bei der Kamera: <Sonos Aktiver Player> kannst du die IP des Servers eintragen, der Dir dein "IIS-7" Bild liefert (Bild 2). Wenn du dort im \root-verzeichnis das mitgeliefert Bild hinterlegst, brauchst du das Windows Bild nicht nutzen.

                    Bei allen anderen Kameras: <Sonos Kamer PlayerXX> trägst du die IP Deines Sonos Player ein. Weiter brauchst Du nichts machen. Der HS holt sich dann schon alles was er braucht. Das habe ich über die Logik so abgebildet.
                    Die Kamera holt sich die Bilder aus den Verzeichnissen, in denen die Musikdateien liegen. Bei Internet-Abfragen halt aus dem Netz. In der Regel sind bei CDs immer Album-Bilder dabei. Bei Mixed-CDs fehlen diese. Dann wird das Default Bild dargestellt (Bild 2). Kannst Du auch austauschen.

                    Ciao
                    Der DJ
                    Zuletzt geändert von DJ.Picasso; 23.01.2017, 23:27.
                    Ich habe heute leider kein Foto für Dich
                    Projects: Sonos Gateway für HS/FS (Musterprojekt) - KNX-MonAMI für HS/FS - Nutzer-Profile

                    Kommentar


                      #11
                      Hi,
                      noch eines.
                      Habe in den letzten Wochen doch noch einige Verbesserungen eingebaut.
                      Kannst Dich ja melden, wenn alles läuft dann schicke ich Dir die Anleitung für die updates. Extra eine neue Version lohnte sich nicht.
                      Ciao
                      Der DJ
                      Ich habe heute leider kein Foto für Dich
                      Projects: Sonos Gateway für HS/FS (Musterprojekt) - KNX-MonAMI für HS/FS - Nutzer-Profile

                      Kommentar


                        #12
                        hallo Picasso
                        danke für die rasch einfo
                        das hatte ich auch vermutet , da es aber im Browser ging wieder verworfen
                        hab meine Player umbenannt 01Büro ohne leerzeichen - funktioniert (fast) alles
                        mit dem Gruppieren der Player happert es noch

                        da dürfte ich aber beim hinzufügen des 4. players in der logik etwas verbockt haben bei den Fixwerten
                        weiß nicht ob das relevant ist
                        siehe bild
                        You do not have permission to view this gallery.
                        This gallery has 2 photos.
                        mfg Peter

                        Kommentar


                          #13
                          Hallo Peter,

                          die Darstellung der Logik reicht nicht aus (Dein Bild 1), sie geht unten noch weiter.
                          Bin momentan bis Ende der Woche nicht zu Hause. Ich habe mittlerweile bei mir auch einen 4. Player und kann Dir einen Screen der Logik am Wochenende zuschicken.
                          Das ist am einfachsten.
                          Hoffe, Du kannst mit der Gruppierung bis Ende der Woche warten.

                          Ciao
                          Der DJ
                          Ich habe heute leider kein Foto für Dich
                          Projects: Sonos Gateway für HS/FS (Musterprojekt) - KNX-MonAMI für HS/FS - Nutzer-Profile

                          Kommentar


                            #14
                            Hallo DJ
                            kein stress ich denke ich hab es gefunden
                            die fixwerte (Gelb) bei den Eingängen hab ich entfernt
                            jetzt ist alles grün und es sieht so aus als ob es passen würde
                            werde mich auch am wochenende weiter spielen damit
                            danke
                            gruß P
                            mfg Peter

                            Kommentar


                              #15
                              Hi pessletz,

                              das sollte funktionieren.
                              Ciao
                              Der DJsonos10.jpg
                              Ich habe heute leider kein Foto für Dich
                              Projects: Sonos Gateway für HS/FS (Musterprojekt) - KNX-MonAMI für HS/FS - Nutzer-Profile

                              Kommentar

                              Lädt...
                              X