Sonos steuern

Begonnen von Will, 05 Januar 2013, 15:51:12

Vorheriges Thema - Nächstes Thema

det.

Hallo Will,

wenn Du meine bisher vergeblichen Mühen oben liest, die erforderlichen Bibliotheken auf dem RaspbPi nachzuinstallieren vergeht Dir hoffentlich die Lust, das alles auf die FB zu bekommen. Bei mir läuft FHEM auch auf der FB7390, aber so einen kleinen Linux PC kann man da gut daneben stellen und einen Teil der Last mit tragen lassen - find ich.
LG
det.

Reinerlein

Hallo zusammen,

das klingt ja alles irgendwie doof.

Ich habe unter Wiki-Installation-SOAP-Lite eine kurze Beschreibung geschrieben, wie man das Modul manuell installiert bekommt.

Es ist anscheinend ein steiniger Weg zur Nutzung von Sonos, und wir sind noch nicht mal bei meinem Code angekommen...

Grüße Reinerlein

Reinerlein

Der Link ist falsch, das ist der auf die Editieren-Seite.

Hier der richtige: http://www.fhemwiki.de/wiki/Sonos_Anwendungsbeispiel#Installation_SOAP::Lite

Sorry, Reinerlein

det.

Hallo Reiner,

Danke für die prima Anleitung, die SOAP:Lite Geschichte ist drauf, SONOS zeigt sich in FHEM und jetzt ist es sicher nur noch ein lösbares Problem der Rechte unter Linux. Da ich einen RaspbPi und einen Zoneplayer sowie die Motivation zu helfen habe, aber ein Linux DAU bin, brauche ich da noch etwas Unterstützung.

pi@raspberrypi ~ $ icmp ping requires root privilege at /usr/share/fhem/FHEM/00_SONOS.pm line 832
Perl exited with active threads:
        1 running and unjoined
        0 finished and unjoined
        0 running and detached
LG
det.

det.

für alle die sich vielleicht aufraffen könnten, das mitzutesten mal ein screenshot, aufgenommen kurz vor dem Absturz:


(siehe Anhang / see attachement)


Ich finde da hat Reiner eine coole Sache entwickelt, das sieht schon mal sehr gut aus! Danke!!!
LG
det.

Reinerlein

Hi Detlev,

danke für das Kompliment. Und schön, dass es trotz Frustration noch geklappt hat :-)
Fehlt denn jetzt noch was für Nachahmer im Wiki, oder hat die manuelle Installationsbeschreibung geholfen?

Dein Absturz ist tatsächlich eine erklärbare Sache.

Kurze Erklärung:
Um einen Zoneplayer als lebend zu führen, habe ich einen regelmäßigen Ping eingebaut. Ich bekomme nämlich eine super Benachrichtigung, wenn der Player wieder da ist, aber verabschieden tut sich da keiner offiziell. Das bedeutet, dass ich das auf anderem Wege herausfinden muss.
In diesem Fall hatte ich mich für die ICMP-Ping Variante entschieden, da sie sehr Ressourcenschonend ist.

Leider braucht man dafür anscheinend mehr Rechte...

Zum kurzfristigen Umgehen kannst du bei der Definition von Sonos das Intervall mit angeben. Stell einen hohen Wert ein, an dem du dein FHEM töten lassen willst :-)

Ich recherchiere mal, was man da tun kann. Wenn noch jemand anderes eine spontane Idee hat... immer her damit...

Grüße Reiner

det.

Hallo Reiner,

die manuelle Installationsanweisung im WIKI ist umfassend und ausreichend. Wer das damit nicht hin bekommt, sollte so einen RaspbPi besser nicht anschaffen. Da mein Produktivsystem zum Glück auf der FB läuft, ist es nicht von Belang, wenn im Büro auf meinem Schreibtisch mal über Nacht nicht 3 x Temperatur 1 x Luftfeuchte und ein Switch ohne Funktion Werte loggen.
Ich warte also gern bis Du eine Lösung gefunden hast und teste dann gern weiter. Wie schon mal gepostet, meine Motivation ist Radio Paradise mit einem Klick aus FHEM einschalten und die Lautstärke regeln. Wäre schön, wenn sich die Oberfläche anpassbar soweit reduzieren lässt. Dann kauf ich noch einen Play:3 fürs Bad, denn mit iPAD zum Steuern mag ich da bisher lieber nicht reingehen.
LG
det.

Reinerlein

Hi Detlev und andere Mitstreiter,

ich habe ein paar Sachen geändert:
- Die Library ist nun auf die beiden nötigen Dateien eingestampft. Überflüssige Verzeichnisebenen wurden entfernt
- Es gibt jetzt ein Attribut pingType am Device SONOS. Damit kann man nun die Art des Pings einstellen. Am Besten mal 'syn' testen.
- Die Doku ist entsprechend angepasst

Also beachten:
Die Verzeichnisse der UPnP-Library müssen angepasst werden, sonst findet er die Library nicht mehr (sorry Detlev, dass du da schon wieder was ändern musst, aber so ist es übersichtlicher)!

Im Anhang nochmal alle aktuellen Dateien...

Grüße Reinerlein

Will

Hi,

Dann werde ich wohl am Wochenende mal eine Linux Installation aufsetzen.
Habt ihr einen Tipp für eine schlanke Distribution die ich auf einem USB Stick aufsetzen kann?

W

Reinerlein

Hi Will,

hmmm... schlank... vielleicht kannst du was mit den zum Raspberry Pi veröffentlichten Distributionen was werden:
http://www.raspberrypi.org/downloads

Die sind ca. 2GB groß und natürlich für eine SD-Card gedacht, gehen aber ja vielleicht auch auf einem USB-Stick...

Ansonsten finde ich Ubuntu immer ganz nett :-)

Grüße Reinerlein

Christoph

Öhmmmm das passt wohl so nicht oder ? *gg*

root@raspberrypi:/home/pi# cpan LWP::Simple
Going to read '/root/.cpan/Metadata'
  Database was generated on Thu, 17 Jan 2013 00:53:02 GMT
Running install for module 'LWP::Simple'
Running make for G/GA/GAAS/libwww-perl-6.04.tar.gz
Checksum for /root/.cpan/sources/authors/id/G/GA/GAAS/libwww-perl-6.04.tar.gz ok
Uncompressed /root/.cpan/sources/authors/id/G/GA/GAAS/libwww-perl-6.04.tar.gz successfully
Using Tar:/bin/tar xf "libwww-perl-6.04.tar":
Couldn't untar libwww-perl-6.04.tar
Package seems to come without Makefile.PL.
  (The test -f "/root/.cpan/build/GAAS-fABNlW/Makefile.PL" returned false.)
  Writing one on our own (setting NAME to LWPSimple)
  Had problems unarchiving. Please build manually
Running make test
  Make had some problems, won't test
Running make install
  Make had some problems, won't install

det.

Hallo Reiner,

sorry, noch immer Totalabsturz kurz nach automatischem Anlegen des Device:

icmp ping requires root privilege at /usr/share/fhem/FHEM/00_SONOS.pm line 832
Perl exited with active threads:
        1 running and unjoined
        0 finished and unjoined
        0 running and detached
LG
det.

Reinerlein

Hallo zusammen,

@Christoph: Da steht in dem Wiki was unter der Rubrik Installation zum Thema SOAP::Lite. Leider hat das Modul LWP::Simple bei dir anscheinend diesselben Schwierigkeiten bei der automatischen Installation.

Ich werde das nachher entsprechend erweitern. Vielleicht hilft dir bis dahin die Beschreibung von SOAP::Lite, das sollte eigentlich Analog dazu sein:
http://www.fhemwiki.de/wiki/Sonos_Anwendungsbeispiel#Installation_SOAP::Lite

Irgendwie scheinen die Module "gunzip" nicht richtig aufrufen zu können. Der Fehler ist nämlich, das nach der Zeile mit dem "uncompressed" in dem Verzeichnis immer noch die .gz-Datei liegt, und tar dementsprechend nix findet...

@Detlev: Hast du das Attribut "pingType" am Sonos-Device gesetzt? Das sieht so aus, als würde er bei dir immer noch ICMP verwenden (das ist immer noch der Standard). Wenn die Tests bei euch allen erfolgreich waren, kann ich den Standard ja auch noch umstellen.
Als erste Variante würde ich dir "syn" empfehlen. Das erscheint mir ähnlich Ressourcensparsam wie "icmp".

Hattest du bei der Installation von LWP::Simple auch die Probleme wie bei Christoph?

Grüße Reinerlein

det.

Hallo Reiner,

bin jetzt nicht in der Nähe meiner Geräte, kann aber nachdem ich heute früh schnell getestet hatte wenigstens Deine Fragen beantworten.

> Hast du das Attribut "pingType" am Sonos-Device gesetzt? < ja mit: attr Sonos pingType syn
das hat nach Neustart FHEM nichts gebracht oder verändert; ich habe den Verdacht, dass Du die Datei SONOS.pm nicht ausgetauscht hast (stand immer noch Version 1.0)?
> Hattest du bei der Installation von LWP::Simple auch die Probleme< nein, aber nach der vorgestrigen Installationsorgie kann ich auch nicht sagen, wann und auf welchem Weg das drauf gekommen ist. Die händische Installation nach Anleitung wie bei SOAP::Lite halte ich für sehr anschaulich und einfach. Damit ersparst Du sicher vielen DAU's wie mir eine Menge Frust. Wer in Linux richtig firm ist, kann es dann ja einfach anders machen.

Der root Zugriff für ICMP ist wohl nicht so einfach zu realisieren?
LG
det.

Reinerlein

Hi Detlev,

ahhh, viel banaler.. ich habe das Attribut an dem falschen Device ausgelesen (am Player, nicht am Zentralen Sonos). Manche Sachen sollte man nicht mehr Nachts machen...
Dabei habe ich auch gleich mal die Versionsnummer hochgesetzt :-)

Um Installierfreudige nicht zu verwirren, hänge ich wieder alle Dateien ran, obwohl sich jetzt nur die 00_SONOS geändert hat...

Grüße Reiner