Jump to content

Service mit lokalem Client - korrektes Shutdown-Verfahren


Recommended Posts

Hallo,

 

der Titel hört sich etwas bescheuert an - was ich meine, ist folgendes:

 

Bisher verwende ich unter Vista den DVBViewer in Kombination mit dem TaskScheduler direkt für Aufnahmen. Fürs Herunterfahren (in den Ruhezustand) verwende ich nicht den Betriebssystem-Shutdown, sondern sende an den DVBViewer das Ausschaltkommando, damit dieser bzw. der TaskScheduler den Ruhezustand initiiert, wodurch er bei laufender Aufnahme die Chance hat, den Shutdown zu verhindern.

 

Jetzt habe ich mal probeweise auf einer anderen Partition die Kombination Recording Service mit lokalem DVBViewer als Unicast-Client installiert; funktioniert soweit ganz gut und das Webinterface ist klasse - ein echter Bonus (mal ganz abgesehen von den anderen Vorteilen dieser Architektur)

 

Wenn ich jetzt an den DVBViewer den Beenden-Befehl sende, erkennt er leider nicht, dass gerade im Recordingservice eine Aufnahme läuft (bzw. es ist ihm egal), er fährt den Rechner in den Ruhezustand und terminiert damit die Aufnahme.

 

Wie kann man das Problem lösen?

 

Was ich schon versucht habe:

- Statt "Ruhezustand" "Standby" verwenden: zusammen mit dem "Away Modus" führt das dazu, dass die Aufnahme weiterläuft, aber leider wacht der Rechner nach wenigen Sekunden so halb aus dem Away-Modus wieder auf (sprich: das Bild erscheint wieder, aber der Ton bleibt auf Mute)

- Mit einem Script herausfinden, ob gerade eine Aufnahme läuft; klappt nicht, da der DVBViewer.Timermanager keine Timer mehr kennt und isRecording false ist, wenn die Aufnahmen vom Service gemacht werden - und für den Service gibt es ja leider noch kein offizielles Programminterface.

 

Das einzige, was mir noch einfällt, ist es nur den DVBViewer zu beenden und abzuwarten, bis das System selber in den Ruhezustand geht - nicht gerade die beste Lösung, zumal man den Viewer nach dem Aufwachen dann irgendwie wieder starten muss.

 

Übersehe ich da was oder fehlen da halt noch ein paar Feinheiten, bis man den Standalone DVBViewer mit so einer Kombi ablösen kann? Oder ist das gar nicht gewollt?

Wie gesagt, architektonisch find ich diese Client-Server-Lösung auf jeden fall eleganter als einen monolithischen Ansatz, und mittelfristig macht es wohl wenig Sinn, beide Varianten zu pflegen.

 

Schöne Grüße

Günther

Link to comment

Welches OS verwendest Du? der recording service verhindert ebenso wie der DVBViewer ein wie auch immer geartetes ausschalten, wenn eine aufnahme läuft.

Link to comment

Für die Tests mit dem Service Win7RC1 (wenn schon, denn schon...), meine Hauptinstallation läuft unter Vista.

 

Ja, Ausschalten wird verhindert, aber der Ruhezustand nicht (hier gibt's doch irgendwo einen Thread, dass seit Vista ein Programm es nicht mehr verhindern kann, wenn der Anwender den Ruhezustand anfordert).

 

Aber mein Problem ist eigentlich ein anderes: Ich will ja gar nicht über das Betriebssystem direkt in den Ruhezustand gehen, sondern sende an den DVBViewer das Beenden-Kommando. Der DVBViewer ist bei mir so konfiguriert, dass er bei Beenden über die Fernbedienung in den Ruhezustand geht. Nimmt der DVBViewer selber auf, dann beendet er sich korrekterweise nicht, wenn gerade eine Aufnahme läuft. Ist er aber mit dem RecService gekoppelt und nimmt dieser gerade auf, dann kümmert das den DVBViewer nicht, sondern er fährt trotzdem den Rechner in den Ruhezustand - was nicht weiter schlimm wäre, wenn der Service auf einem anderen Rechner laufen würde, aber so ist das ++ungut.

 

Schöne Grüße

Link to comment

Der recording service schaltet bei einer ruhezustands bzw standby anforderung unter vista eigentlich in den vista away modus, wenn eine aufnahme läuft. Bisherige meldungen bestätigen das auch. Die frage ist jetzt wurde diese einstellung (die MS sehr gut versteckt hat) von einem anderen programm überschrieben? Per default geht der away modus nämlich nicht, das service setup schaltet diese funktion extra ein...

Link to comment

Danke für die Info - gut zu wissen, dass das eigentlich klappen sollte; ich werde weiter testen, sobald man mich läßt (ist wie gesagt nur eine Testpartition auf unserem normalen Fernseh-PC)

 

Ich bin ziemlich sicher, dass der Away-Mode aktiviert ist; als ich ihn für die Versuche aktivieren wollte, fiel mir auf, dass er schon aktiv war (wohl durch das Service-Setup), aber ich prüfe das auch noch mal und geb die genauen Einstellungen durch.

 

Was ja halbwegs funktioniert ist der Standby-Modus ("Energie sparen"): normalerweise geht der in S3, aber wenn eine Aufnahme im Service läuft, bleibt der Rechner an (geht wie oben beschrieben kurz in den Away-Mode, aber reaktiviert sich nach ein paar Sekunden teilweise wieder). Wenn ich aber explizit Ruhezustand wähle, geht er auch in den Ruhezustand und nicht in den Away-Mode. Kann natürlich auch ein Win7-Problem sein, mal sehen, ob ich am Wochenende dazu komme, eine Vista-Testumgebung zu installieren.

 

Danke erstmal!

 

Grüße

Günther

Link to comment
  • 1 month later...

Hi,

 

mit der Beta 1.5.0.21 in Verbindung mit der DVBViewer Beta 4.2.0.21 ist das Problem gelöst durch das neue Feature, dass beim Hibernate durch den DVBViewer jetzt der Service eingreifen kann und das ggflls. auf den Away-Mode umbiegt,

 

Ich hatte noch ein paar kleinere Probleme; was davon reproduzierbar ist, schreib ich nochmal im allg. Beta.Thread. Insgesamt bin ich aber wirklich sehr begeistert von den Betas - z.B. dass statt EVR Overlay verwendet wird, solange kein Sender getuned ist und daher das OSD weiter funktioniert, ist extrem praktisch.

 

Danke!

Link to comment
  • 2 weeks later...
Guest cyquino*com

Hi!

 

Ich hätte hier noch etwas einzuwenden, da ich mich auch schon des Öfteren mit dieser Problematik beschäftigt habe...

 

Mit der neuen DVBViewer- und RecService-Version (beide lokal installiert) fährt der Rechner (Win7 RC) bei laufendem DVBViewer jetzt IMMER in den Away Mode. Aufnahmen laufen keine.

 

Ich nehme an, das liegt an der Änderung im RecService: "Add: Diverse Verbesserungen für den Vista Away Modus. Wenn Clients verbunden sind, wird der Away Modus aktiviert.".

 

Für Netzwerk-Clients ist das so in Ordnung, bei einer komplett lokalen Installation m.E. aber nicht. Der lokale Client sollte da einen Sonderstatus erhalten, damit der Rechner sofort in den Standby gehen kann.

 

Viele Grüße!

cyquino*com

Edited by cyquino*com
Link to comment

Also bei mir funktioniert zum Glück auch mit der .25 alles wie es soll; ich verwende allerdings den Ruhezustand nach Timern bzw. zum Beenden, nicht Standby.

Vielleicht liegt es daran? Es gibt hier ja noch einen weiteren Thread, dass der Rechner nicht in den Standby geht.

 

Grüße

Günther

Link to comment
×
×
  • Create New...