Sonos steuern

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

Vorheriges Thema - Nächstes Thema

Reinerlein

Hallo Arthur, hallo Detlev,

komische Sache. Leider ist die Fehlermeldung nicht ganz so aussagekräftig. Das, was da angemäkelt wird, gibt es an anderen Stellen auch noch, und das auch schon seit der ersten Version. Außerdem scheint Detlev diese Meldung ja nicht zu haben (ich auch nicht).
Ich werde das aber trotzdem mal umstellen, und dort immer einen Parameter übergeben. Damit ist diese Meldung weg, ich bezweifele aber, das es das eigentlich Problem beseitigt...
Die Ausstiegsmeldung ist übrigens eine Zeile, wo ein Eval-Block geöffnet wird. Das sollte eigentlich auch kein Problem sein :-)
Da bin ich also etwas überfragt... Wie sieht denn die Umgebung aus? Plattform? Perl-Version? Irgendwelche Besonderheiten?
Ich gehe mal davon aus, dass deine Ausgabe auf der Konsole (nicht im Fhem-Log) aufgetreten ist, oder? Gibt es denn überhaupt Enträge im Fhem-Log zu dem Start? Wenn ja, dann poste die doch mal bitte hier...

Detlev, kannst du mir einen Logauszug zukommen lassen, was er noch macht, und wo er dann aussteigt?
Ich habe z.B. seit einem der letzten Updates Probleme mit meinen Onewire Komponenten. Da wird blockierend auf etwas gewartet, was auch nicht mit einem einfachen Fhem-Neustart (auf der Debian-Konsole, da die Fhem-Oberfläche ja nicht mehr reagiert) behoben werden kann. Da muss ich auch einen RPi-Neustart machen... Ein Abschalten von Sonos hatte bei mir keine Verbesserung gebracht...

We sieht das denn bei den anderen aus? Gibt es dort ähnliche Probleme?
Bei mir läuft es wie gesagt seit eine Woche normal durch...

Danke schon mal,
Grüße Reiner

det.

Hallo Reiner,
sorry, es gibt beim Abschied keinerlei Log Einträge - also nicht sehr hilfreich. Zum zweiten Übel läuft auf meinem RPI nichts weiter als Dein SONOS Modul mit den paar Code Zeilen zum mute bei Telefongespräch (Callmonitor auf FB über FHEM2 FHEM ) und der Dummy Aufruf zum Radio start für SONOS. Die Betriebssystem Umgebung - mehrfach verwendet auf insg. 3 RPI habe ich immer geupdatet und wenn erforderlich was nachinstalliert - d.h. keine Ahnung welche Bibliotheken da inzwischen alle drauf sind.
Wie im letzten Post schon geschrieben, mit dem Vorletzten Stand Deiner Module funktioniert es prima, außer das das SONOS. absolut nicht erkennt, wenn der Player wegen Strom ausgeschaltet nicht mehr verfügbar ist. Aber das habe ich inzwischen akzeptiert und aufgegeben.... - Loglevel beim Call Aufruf angepasst - so kommen da keine Einträge mehr - weiter stört es nicht.
LG
det.

Reinerlein

Hi Detlev,

OK, dann müsstest du auf der Maschine mal den Loglevel auf 5 stellen, und vor dem Start vielleicht das Log mal leermachen, damit es nicht zu viele Zeilen sind.
Irgendwas muss das Modul ja tun :-) Und dann sollte es eigentlich auch verraten, wo er gerade dran hängt...
Ich habe natürlich noch ein paar kleinere, interne Bugfixings betrieben, die durchaus zu Seiteneffekten führen können. Ich bin mit meiner Umgebung ja schließlich nicht der Maßstab :-)

Also danke schon mal für die Unterstützung, wenn du dir die Mühe machst, und das Log erzeugst und hier postest.

Zu deinem Zoneplayer-Aus-Erkennen: Hast du schon mal versucht, den pingType auf "icmp" umzustellen? Oder geht das bei dir wegen fehlender Root-Rechte für Fhem nicht?

Grüße Reiner

det.

Hallo Reiner,

das mit dem Loglevel mach ich gern - wird aber erst im Laufe der Woche - SONOS steht in der Stube (ist besetzt) und ich sitze im Büro.
Wenn Du mir verrätst, wie ich FHEM auf dem RPI mit root Rechten laufen lassen kann, versuche ich das mit pingType auf "icmp" gern. Bisher ist mir das mit meinem rudimentären Linux Verständnis leider nicht gelungen.
LG
det.

Reinerlein

Hi Detlev,

mit dem Log lass dir ruhig Zeit, ich bin die nächsten Tage erstmal berufsmäßig ausser Haus...

Zu den Root-Rechten:
Manuell ist das ganz einfach. Dazu brauchst du das Skript nur mittels "sudo" zu starten.
Also, wenn du im Fhem-Verzeichnis bist, dannsudo perl fhem.pl fhem.cfgeingeben (natürlich musst du vermutlich den Pfad zu deiner Config-Datei anpassen).
Damit läuft Fhem dann unter dem Benutzerkontext root...

Wenn du das dauerhaft unter Root starten möchtest (also das Startskript anpassen möchtest) müsstest du dieses hier kurz posten, da es dort viele Varianten gibt, das Skript als Nicht-Root zu starten (im Normalfall startet ein solches Startskript den Dienst erstmal unter root, es sei denn man sorgt dafür, dass das nicht so ist...)
Bei mir steht im Startskript z.B. nur folgendes:#! /bin/sh
# Copyright (c) 2011 Wolfram Plettscher
# All rights reserved
#
# Author: Wolfram Plettscher, 2011
#
# /etc/init.d/fhem
#
### BEGIN INIT INFO
# Provides: fhem
# Required-Start: ssh
# Required-Stop: ssh
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: starts FHEM house automation server
# Description: during start it also reconfigures /dev/ttyACM0 to rwrwrw rights
# (this is hardcoded for busware CUL device)
# Last maintained for SuSE 11.4
#
# Installation:
# - copy this file to /etc/init.d
# - chmod 744 /etc/init.d/fhem
# - ln -s /etc/init.d/fhem /sbin/fhem
# - enable and edit in YAST system services
### END INIT INFO

case "$1" in
start)
echo "Start $0"
/etc/fhem/fhem/fhem.pl /etc/fhem/config/fhem.cfg > /var/log/fhem 2> /var/log/fhem &
;;
stop)
echo "Stop $0"
/etc/fhem/fhem/fhem.pl 7072 shutdown
;;
status)
cnt=`ps -ef | grep "fhem.pl" | grep -v grep | wc -l`
if [ "$cnt" -eq "0" ] ; then
echo "$0 is not running"
else
echo "$0 is running"
fi
;;
*)
echo "Usage: $0 {start|stop|status}"
exit 1
esac
exit 0
Die Grundlage stammt, glaube ich, aus dem Wiki. Nur mal so als Vorlage zum abschauen...

Grüße Reiner

FHEM-Freak

Hallo,

Bin gerade dabei den Sonos Play3 in mein FHEM einzubinden.
Mein Problem ist der Qnap, da Perl am Qnap keine Threads unterstützt.
Fehler "This Perl not built to support threads"
Mal schauen ob ich mir ein Perl am Qnap selbst kompilieren kann.
Werde mich melden falls ich weiterkomme.
Banana Pi
HMLAN
3 x HM-CC-TC + HM-CC-VC
1 x HM-PB-2-WM55, 1 x HM-WDS10-TH-O
1 x HM-WDS30-T-O, 1 x HM-WDS40-TH-I

det.

hallo,
kauf Dir einen RPI, nimm den nur für SONOS und häng den über FHEM2FHEM an das FHEM auf dem Qnap. Hast Du weniger Probleme und schnelleren Erfolg.
LG
det.

FHEM-Freak

Danke für den Tipp.
Das ist Variante 2, möchte aber vorerst beim Qnap bleiben.
Banana Pi
HMLAN
3 x HM-CC-TC + HM-CC-VC
1 x HM-PB-2-WM55, 1 x HM-WDS10-TH-O
1 x HM-WDS30-T-O, 1 x HM-WDS40-TH-I

Reinerlein

Hallo zusammen,

ich wollte mal eine kurze Zwischenmeldung geben, da es hier doch etwas ruhiger wurde.

Also, ich habe nun meine Sonos Landschaft um 2 Player erweitert, und kann die Stillstände bei dem Sonos-Modul leider auch bestätigen. Leider habe ich aber noch keine Lösung, vermute aber ein Problem bei der massenhaften Verarbeitung der Titel und sonstiger Aktualisierungsinformationen. Das muss ja alles über die Telnet-Schnittstelle verarbeitet werden...
Ich werde da also in nächster Zeit (nach meinem Urlaub) tiefer in die Analyse einsteigen, und hoffentlich das Problem eingrenzen können.

Desweiteren steht ja auch die Einbindung der Zonenverwaltung auf dem Plan....

Also, soweit erstmal einen schönen Sommeranfang und bis demnächst.

Grüße Reiner

snoop

Hallo Reiner,
Weiß garnicht hmmm "Herzlichen Glückwunsch zum 2nd Sonos Player".... ;o)
Sag doch mal bitte was es den geworden ist? Hintergrund: Der Player 5 besitzt ja einen line Out den ich auch sehr oft benutze = TV dran und somit auch gesteigertes Interesse.
Ferner finde ich es Super, dass es zum Thema "Zonen" bald etwas möglich sei wird.
Aber mach doch erst mal Urlaub und bis demnächst.
Viele Grüße
Arthur
P.S: ...danke für den Zwischenstatus/Info.


fhainz

Hallo!

Ich hab gerade Versucht das Modul einzubinden.

In der fhem.cfg hab ich define Sonos SONOS reingeschrieben und gespeichert. Kurz darauf wurde mir auch schon mein Sonos S5 und der Raum Sonos angelegt. Im Web Frontent hab ich dann auf Save config geklickt. Als ich mir aber die fhem.cfg angesehen hab und nochmals auf speichern geklickt hatte kam im Safari die Fehlermeldung "Safari kann keine Verbindung zum Server herstellen". Anschließend kann ich fhem nicht mehr aufrufen. Da hilft nur mehr ein sudo reboot.
Dann muss ich alles was an sonos erinnert aus der .cfg löschen damit ich wieder normal speichern kann.
FHEM ist up-to-date

Kann mir jemand helfen?

Grüße

det.

Hallo,

Hatte auch solche Probleme, Reinerlein hat mir da geholfen:
define Sonos SONOS
attr Sonos pingType icmp

dabei sollte FHEM dringend unter User root laufen, erreichst Du durch Eingabe in putty:
sudo usermod -l fhemuser fhem
und dann solltest Du sehen, das Du die letzte Version von SONOS hier aus dem Forum erwischt hast.
Da das ganze recht fragil ist, ist es auch noch eine gute Idee, SONOS auf einem eigenen RPI laufen zu lassen und mit FHEM2FHEM an dein Produktivsystem zu koppeln
LG
det.

fhainz

Ok danke ich werde das mal versuchen.

Reinerlein

Hi,

wollte mich kurz aus dem Urlaub auch dazu melden.

Das Modul hat ein Riesenproblem mit dem Befehl 'rereadcfg' von Fhem. Das aber wird implizit von save ausgeführt.
Das war wohl der Grund, warum Fhem nach dem Speichern nicht mehr erreichbar war...

ich habe mir schon einige Gedanken um eine Neustrukturierung gemacht. Wenn das dann alles so läuft, wie ich mir das vorstelle, dann sollten diese Probleme auch beseitigt sein :-)
Aber auf dem Weg dahin liegt natürlich noch die ganze Realität der Entwicklung :-)

Das Ganze dauert aber noch ein bißchen, ich geniesse gerade das Super-Sommer-Sonnenwetter in Südfrankreich...

Grüße Reiner

PumpkinEater

Hallo zusammen,
da ich seit einigen Tagen zwei Play:3 und eine Bridge habe, sollen diese nun schnell in fhem eingebunden werden. Sieht soweit auch schon ganz gut aus. Was mich stört, sind die folgender Fehlermeldungen, die nach dem Start (und bislang nur dann) auftreten:

Use of uninitialized value in string eq at /usr/local/fhem/fhem.pl line 2142.
Use of uninitialized value $d in hash element at /usr/local/fhem/fhem.pl line 2821.
Use of uninitialized value $dev in hash element at /usr/local/fhem/fhem.pl line 2318.

Auch wenn diese Fehler auf die eigentliche Funktion scheinbar keinen Einfluss haben, würde ich die Meldungen gerne abstellen. Die Meldungen kommen sowohl auf meinem Raspberry als auch auf einer normalen Ubuntu-Maschine (installiert sind jeweils fhem-5.4 und die neusten Sonos-Module). Habt Ihr eine Idee, was dort schieftläuft?

Gruß
Peter