I thought a lot about the problem but could not find a solution. The point is: How does the system know reliably that you are doing something (administrative work, updates, ...) and want to keep it up?
Thank you for the hint! After having a first look at the code I would estimate it as a very first step, but it is a beginning... The biggest problem IMHO is that AwayModeRequired is set always when a suspend should be prevented; there is no distinction if away mode is really needed (tv recording, remote streaming) or not (EPG grabbing, local streaming, process running, ...).Have you seen 0001092: VISTA: Power-Off button on remote hibernates even when recording is active and the changes made in WebSVN - MediaPortal - Rev 26613 - / ?
I will try to get in contact with MrHipp, maybe we can bring our things together...
Does away mode also works for processes?
At the moment away mode is only used for recording and remote streaming, because in these situations it is obviously not acceptable that someone switches off the server. But since PS++ code is pretty flexible I see no big problem in making away mode configurable for other standby handlers (EPG, process, network, shares, ...). There could be a second checkbox next to the ones with "Prevent standby while ..." named "Do not accept power off while ...". Would that be ok?Being able to select in which of those cases the system should enter away mode, suspend or, if possible, completely ignore the request could be a very nice feature!
This would only work for a single-seat machine, since a dedicated server has no GUI and therefore would never suspend. But I could try to find out if there is a (working) client installation on the machine and only then prevent automatic standby while the client is not running...Basically I just want a setting that says 'Only allow suspend when MP GUI is running'.
At the moment away mode is only used for recording and remote streaming, because in these situations it is obviously not acceptable that someone switches off the server. But since PS++ code is pretty flexible I see no big problem in making away mode configurable for other standby handlers (EPG, process, network, shares, ...). There could be a second checkbox next to the ones with "Prevent standby while ..." named "Do not accept power off while ...". Would that be ok?
This would only work for a single-seat machine, since a dedicated server has no GUI and therefore would never suspend. But I could try to find out if there is a (working) client installation on the machine and only then prevent automatic standby while the client is not running...Basically I just want a setting that says 'Only allow suspend when MP GUI is running'.
2010-11-19 22:58:05.953010 [Powerscheduler Timer(12)]: PowerScheduler: LoadSettings
2010-11-19 22:58:05.968011 [Powerscheduler Timer(12)]: PowerScheduler: SetWakeupTimer
2010-11-19 22:58:05.970011 [Powerscheduler Timer(12)]: PowerScheduler: Inspecting GenericWakeupHandler:
2010-11-19 22:58:05.997012 [Powerscheduler Timer(12)]: PowerScheduler: Inspecting ScheduledRecordingsHandler:
2010-11-19 22:58:05.998012 [Powerscheduler Timer(12)]: PowerScheduler: Inspecting XmlTvImportWakeupHandler:
2010-11-19 22:58:05.998012 [Powerscheduler Timer(12)]: PowerScheduler: Inspecting EpgGrabbingHandler: 23.11.2010 3:00:00
2010-11-19 22:58:05.999012 [Powerscheduler Timer(12)]: PowerScheduler: Inspecting RebootHandler: 22.11.2010 3:00:00
2010-11-19 22:58:06.001012 [Powerscheduler Timer(12)]: PowerScheduler: Inspecting PowerSchedulerClientPlugin:
2010-11-19 22:58:06.012013 [Powerscheduler Timer(12)]: PowerScheduler: Set wakeup timer to wakeup system at 22.11.2010 2:59:00
2010-11-19 22:58:06.013013 [Powerscheduler Timer(12)]: PowerScheduler: CheckForStandby
2010-11-19 22:58:06.013013 [Powerscheduler Timer(12)]: PowerScheduler: Inspecting GenericStandbyHandler: Standby allowed
2010-11-19 22:58:06.014013 [Powerscheduler Timer(12)]: PowerScheduler: Inspecting ActiveStreamsHandler: Standby allowed
2010-11-19 22:58:06.014013 [Powerscheduler Timer(12)]: PowerScheduler: Inspecting ControllerActiveHandler: Standby allowed
2010-11-19 22:58:06.016013 [Powerscheduler Timer(12)]: PowerScheduler: Inspecting ProcessActiveHandler: Standby allowed
2010-11-19 22:58:06.016013 [Powerscheduler Timer(12)]: PowerScheduler: Inspecting NetworkMonitorHandler: Standby allowed
2010-11-19 22:58:06.018013 [Powerscheduler Timer(12)]: PowerScheduler: Inspecting PowerSchedulerClientPlugin: Standby allowed
2010-11-19 22:58:06.018013 [Powerscheduler Timer(12)]: PowerScheduler: Check whether the next event is almost due
2010-11-19 22:58:06.018013 [Powerscheduler Timer(12)]: PowerScheduler: AllowStandby()
2010-11-19 22:58:06.018013 [Powerscheduler Timer(12)]: PowerScheduler: System is idle and may sleep
2010-11-19 22:58:06.019013 [Powerscheduler Timer(12)]: PowerScheduler: Active shutdown is disabled - suspend/hibernate manually or by system idle timer