Nachdem ich nun seit Kurzem wieder über einen Tvheadend Server verfüge, nutze ich diesen hauptsächlich zum Aufnehmen einiger Sendungen. Ich schaue kaum Fernsehen und daher muss der Tvheadend Server auch nicht permanent laufen. Ich habe ein kleines Script gebastelt, welches sich darum kümmert.
Das Script ist in Python geschrieben und wird regelmäßig per Cronjob ausgeführt. Wenn keine Clients verbunden sind und keine Aufnahmen anstehen, fährt es den Server herunter. Falls Aufnahmen geplant sind, wird die Startzeit der ersten Aufnahme abzüglich ein paar Minuten als Wakeup-Zeit gespeichert und der Server fährt herunter.
Falls keine Aufnahmen geplant sind, wird Heruntergefahren und vorher eine Wakeup-Zeit 24 Stunden später gesetzt. Das sorgt dafür, dass der Server täglich ein wenig läuft, um z.B. die EPG Informationen zu aktualisieren. Falls in den nächsten Minuten eine Aufnahme ansteht, wird das Herunterfahren nicht ausgeführt, da es sich nicht lohnen würde.
Außerdem fährt das Script den Server nicht herunter, falls man gerade per SSH verbunden ist. Von Solchen Scripten gibt es zwar schon einige, aber ein eigenes ist manchmal schneller geschrieben, als dass man ein für einen selbst pefekt passenden gefunden hat. Für Interessierte habe ich das Script tvh-auto-power.py bei GitHub veröffentlicht. Ein bisschen Readme ist auch enthalten, eine Authentifizierung kann ebenfalls verwendet werden. Viel Spaß damit.