X
-
timberland besteht denn Hoffnung das du das hinbekommst? Der Baustein hat noch ein Problem mit SQL, dessen Prozess wird bei nicht erreichbaren Sonos-Boxen auf 100% getrieben, das könnte auch die Ursache der hier oft beschriebenen CPU-Auslastung sein.
-
Mich wundert, dass im "catch" Bereich neue Exceptions geworfen werden. Wer soll die denn fangen? Und wenn sie keiner fängt, dann schmiert der Prozess ab.
Der Baustein müsste wohl dahingehend angepasst werden, dass in der Hauptschleife immer geprüft wird, ob ein SONOS Device noch erreichbar ist und wenn nicht dann ein Reconnect ausführen. Da ich aber auf Squeezeboxen setze und kein SONOS Device habe, kann ich da nicht wirklich mehr zu sagen.
Einen Kommentar schreiben:
-
Der Fehler von dir oben hat sicher seine Berechtigung, nur sollte nach einer Exception nicht gleich der ganze LBS aussteigen.
Einen Kommentar schreiben:
-
Kommando zurück!
Ging nur 1x!!! Jetzt kommt Fehler:
Exception: Error during Soap Call: UPnPError s:Client 701 (ERROR_AV_UPNP_AVT_INVALID_TRANSITION) und Sonos reagiert auf Edomi nicht mehr!
Einen Kommentar schreiben:
-
Guten Morgen!
hab jetzt die Seite neue aufgebaut und nun geht es
Jetzt hab ich aber schon wieder ein paar Fragen:
- wie gehe ich vor um alle Zimmer zu realisieren?
- wie stelle ich Sonos-Gruppen über Edomi zusammen, bzw. wie spreche ich diese an?
Danke euch schon mal für eure Hilfe und wünsche ein schönes Wochenende.
Gruß Dietmar
Angehängte Dateien
Einen Kommentar schreiben:
-
Hab mal bisschen weiter getestet, der "Baustein" Sonos stirbt jedesmal komplett, wenn irgendein Sonos-Deveice welches er ansprechen soll/will/muss nicht mehr erreichbar ist. Ab da gehen dann auch alle anderen Sonos-Boxen nicht mehr ansteuern bis man das gesamte Projekt neu startet
Einen Kommentar schreiben:
-
Kann mir einer der hier mitlesenden helfen? Ich denke das Problem liegt hier:
Lässt sich das umbauen, dass der LBS nicht "aussteigt" sobald eine Exception geworfen wird?PHP-Code:private function processSoapCall($path,$uri,$action,$parameter)
{
try{
$client = new SoapClient(null, array("location" => "http://".$this->address.":1400".$path,
"uri" => $uri,
"trace" => true ));
return $client->__soapCall($action,$parameter);
}catch(Exception $e){
$faultstring = $e->faultstring;
$faultcode = $e->faultcode;
if(isset($e->detail->UPnPError->errorCode)){
$errorCode = $e->detail->UPnPError->errorCode;
throw new Exception("Error during Soap Call: ".$faultstring." ".$faultcode." ".$errorCode." (".$this->resoveErrorCode($path,$errorCode).")");
}else{
throw new Exception("Error during Soap Call: ".$faultstring." ".$faultcode);
}
}
}
Einen Kommentar schreiben:
-
Ein Gast antworteteHilft hier eventuell auch ein try catch an den sensiblen Stellen?
Einen Kommentar schreiben:
-
Ein Gast antworteteEventuell sind es die genutzten Ausgänge oder weil ich nur Pause nutze? Scheinbar "stirbt" bei mir der Prozess bzw der LBS sobald mein WLAN ausgeht. Das kann ich zwar deaktivieren aber es kann ja immer mal passieren das eine Sonos nicht erreichbar ist, ich wollte die auch eigentlich vom Strom trennen Nachts wegen dem hohen Standby Verbrauch.Zuletzt geändert von Gast; 22.09.2016, 16:36.
Einen Kommentar schreiben:
-
Hi,
dies ist bei mir nicht so. Ich habe einen Sonos PLAY1 als mobil eingerichtet. Dieser ist nur ab und an auf der Terrasse im Einsatz und somit auch nur dann erreichbar. Fehlermeldung kommt natürlich wenn nicht erreichbar. Wenn wieder erreichbar muss ich allerdings nur den Play 1 über die Sonos App starten und dann kann ich ihn direkt über edomi steuern, ohne Projekt zu aktivieren.
Gruß
Einen Kommentar schreiben:
-
Grundsätzlich über cURL abfragen ob der Server erreichbar ist und erst dann den nächsten Schritt setzen ...Zitat von timberland Beitrag anzeigencrewo da hast du natürlich recht. Wenn der der Sonos nicht erreichbar ist kommt und ein Fehlermeldung und es muss das Projekt erneut aktiviert werden.
Da müsste mal ein Experte ran, wie man das umgehen kann.
Einen Kommentar schreiben:
-
crewo da hast du natürlich recht. Wenn der der Sonos nicht erreichbar ist kommt und ein Fehlermeldung und es muss das Projekt erneut aktiviert werden.
Da müsste mal ein Experte ran, wie man das umgehen kann.
Einen Kommentar schreiben:
-
timberland Liegt es eventuell daran das ich die Wiedergabe von Radio nur mit "Pause" stoppe? Wo ist der Unterschied zwischen "Stop" und "Pause"? Ich dachte Sonos kennt sowieso nur "Pause".
Einen Kommentar schreiben:
-
Danke, ich teste das mal.
Andere Frage: Ich habe jede Nacht wenn mein WLAN deaktiviert wird diese Meldung in der Error-Log von edomi:
"Could not connect to host HTTP"
Ich vermute der fragt hier im Intervall oder stetig Werte vom Server der Sonos-Box ab, die dann aber mangels WLAN nicht mehr antwortet. Die Frage ist jetzt, warum macht das der LBS? Ich hab damals über die Anbindung direkt mit dem PHP-Script (mit Homematic...) das gleiche gemacht wie jetzt, WLAN war da auch Nachts aus, ohne Probleme. Jetzt startet aber früh das Radio nicht, da ich vermute da er nach dem Error keine Verbindung mehr aufbaut bzw. der Prozess nicht mehr startet.
Abfragen über Logik mache ich nur auf Volume und Radiosender, Visu noch gar nicht. Was kann ich tun, damit zumindest nach WLAN wieder erreichbar die Boxen auch ansprechbar sind?
EDIT: Wenn ich die Sonos-Box über die APP starte lässt sich diese dann auch wieder über edomi ansprechen bis das nächste mal das WLAN wieder aus ist. -> Stimmt nicht, Sonos lässt sich erst nach einem Projektneustart in edomi wieder ansprechen. Help
Bildschirmfoto 2016-09-22 um 11.04.28.png
Zuletzt geändert von crewo; 22.09.2016, 14:30.
Einen Kommentar schreiben:


Einen Kommentar schreiben: