Option -"Rest aufnehmen und Box runterfahren"

Wünsche, Anträge, Fehlermeldungen
Tommy
Tuxboxer
Tuxboxer
Beiträge: 4332
Registriert: Dienstag 7. Mai 2002, 17:04

Option -"Rest aufnehmen und Box runterfahren"

Beitrag von Tommy »

Hi All,

bin gerade auf eine Idee gekommen. Eine Option die von der Funktionalität zwischen Sofortaufnahme und Timeraufnahme liegt. Über ein leicht zu erreichendes Menü die Option "Rest aufnehmen und Box runterfahren". Sprich ich gucke eine Sendung und will aber ins Bett. Über Sofortaufnahme rödelt die Box 4h und bleibt den Rest der Nacht an. Über EPG einen historischen Timer setzen funktioniert zwar irgendwie aber eher zufällig. Auch dann bleibt die Box nach der Aufnahme den Rest der Nacht an.
PT-1
Moderator english
Beiträge: 2458
Registriert: Donnerstag 20. Dezember 2001, 00:00

Re: Option -"Rest aufnehmen und Box runterfahren"

Beitrag von PT-1 »

So etwas aehnliches habe ich hier: http://forum.tuxbox-cvs.sourceforge.net ... =9&t=44217 schon mal angefragt
Gorcon
Tuxboxer
Tuxboxer
Beiträge: 5873
Registriert: Samstag 23. Februar 2002, 22:46

Re: Option -"Rest aufnehmen und Box runterfahren"

Beitrag von Gorcon »

...Um die funktion aufzurufen könnte man ja die Powertaste nehmen.
Also wenn die Aufnahme läuft und man drückt die Powertaste kommt eine Meldung das die Aufnahme läuft und das man entweder diese sofort beendet oder nach Senungsschluss die Box runterfährt.


Derzeit programier ich immer einen Timer das die Box dann automatisch runterfährt, aber da die Bedienung sehr träge ist wäre der von Tommy bzw. PR-1 Vorschlag sicher nicht schlecht. ;)
PauleFoul
Wissender
Wissender
Beiträge: 1839
Registriert: Sonntag 17. August 2003, 01:39

Re: Option -"Rest aufnehmen und Box runterfahren"

Beitrag von PauleFoul »

Ihr müsst die Box nur per Timer starten, dann fährt sie nach einer Aufnahme immer automatisch runter (Geheimfunktion)... :D :D
Gorcon
Tuxboxer
Tuxboxer
Beiträge: 5873
Registriert: Samstag 23. Februar 2002, 22:46

Re: Option -"Rest aufnehmen und Box runterfahren"

Beitrag von Gorcon »

Toll und was machst du wenn Du zuvor noch TV schauen wolltest? :D
MajorK
Einsteiger
Einsteiger
Beiträge: 328
Registriert: Freitag 9. Mai 2003, 09:55

Re: Option -"Rest aufnehmen und Box runterfahren"

Beitrag von MajorK »

Also ich mache das immer indem einfach eine Sofortaufnahme starte (blau->rot).
Dann kann man den Timer fuer die laufende Aufnahme anpassen (blau -> gelb) indem man die Ende Zeit korrigiert.
Anschließend noch einen Timer vom Typ "Shutdown" anlegen.
Dann muss die Box zumindest schonmal nicht 4 Stunden aufnehmen und auch nicht die ganze Nacht anbleiben :-)
Ist zwar nicht auf einen "Klick" aber der gewünschte Effekt wird erreicht.

HTH,
Major K.
Tommy
Tuxboxer
Tuxboxer
Beiträge: 4332
Registriert: Dienstag 7. Mai 2002, 17:04

Re: Option -"Rest aufnehmen und Box runterfahren"

Beitrag von Tommy »

Das das so geht ist schon klar nur:

1. wohl alles andere als intuitiv und komfortabel
2. ist meine Box sehr zäh in der Bedienung wenn eine Aufnahme läuft - für das was Du beschreibst brauche ich 10 Minuten. Und das wenn man ins Bett will - da kann man ja gleich zuende gucken

Das simpelste wäre den Shutdown Button abzufangen und ein Menü zwischenschalten wenn gerade eine Aufnahme läuft mit der Abfrage "Aufnahme läuft!!! Box nach der Aufnahme herunterfahren? Ja/Nein". Oder das ganze ohne Messagebox - wenn eine Aufnahme läuft wird automatisch der 4h Timer auf das EPG Ende der laufenden Sendung verkürzt und ein Abschalttimer kurz danach gesetzt. Wer halt gleich ausschalten will muß vorher die Aufnahme mit blau/rot beenden. Ich stelle mir die Umsetzung für Codeversteher nicht so schwer vor. Wichtig wäre nur bei einer Sofortaufnahme die EPG Daten irgendwohin nach /tmp zu sichern da meist der sectionsd bei Aufnahme abgeschossen wird.
MTM
Foren-Moderator
Beiträge: 944
Registriert: Freitag 21. Januar 2005, 16:18

Re: Option -"Rest aufnehmen und Box runterfahren"

Beitrag von MTM »

Hallo,
kann man da nicht den Sleeptimer ins Spiel bringen?

MfG,
MTM.
Tommy
Tuxboxer
Tuxboxer
Beiträge: 4332
Registriert: Dienstag 7. Mai 2002, 17:04

Re: Option -"Rest aufnehmen und Box runterfahren"

Beitrag von Tommy »

bricht ein Shutdowntimer auch eine Aufnahme _sauber_ ab? Dann wäre folgendes in der Standby.on evtl die Lösung. Wärend der Aufnahme einfach in den Softstandby gehen. Dadurch wird ein Shutdowntimer auf der EPG Endzeit gesetzt:

Code: Alles auswählen

da es nicht lief weiter unten geändert
Dieses kleine "Helperscript" könnte man auch per echo in /tmp erstellen und ggf. per standby.off löschen (falls man es sich doch anders überlegt). Dann läuft der Timer zwar ins Lehre aber die Box wird nicht runtergefahren. In diesem Zusammenhang die Frage - wie ist die Syntax bezügl. Pfadangabe wenn ich per API einen EXEC Timer setze? Die Doku schweigt sich da aus http://cvs.tuxbox-cvs.sourceforge.net/c ... iew=markup

http://wiki.tuxbox-cvs.sourceforge.net/ ... ustomizing


EDIT2:
was würde dagegen sprechen, den httpd dahingehend umzubauen das er bei http://127.0.0.1/control/timer?action=new statt ok/error <timerID>/error zurückgibt? Gerade für solche Sachen wäre es von Vorteil sich die TimerID zu merken um ggf. den Timer zu ändern oder zu löschen. Zur Zeit ist es IMO unmöglich einen Timer den man gerade über die WebApi gesetzt hat wiederzufinden.
Zuletzt geändert von Tommy am Freitag 22. August 2008, 22:25, insgesamt 1-mal geändert.
Tommy
Tuxboxer
Tuxboxer
Beiträge: 4332
Registriert: Dienstag 7. Mai 2002, 17:04

Re: Option -"Rest aufnehmen und Box runterfahren"

Beitrag von Tommy »

habs nochmal überarbeitet da scheinbar der shutdowntimer wärend einer Aufnahme ignoriert wird. Hier nun eine Version die in /tmp ein kleines skript anlegt und mit einem Plugin timer verlinkt. Testen kann ich es leider heute nicht mehr

standby.on:

Code: Alles auswählen

#!/bin/sh

#läuft Aufnahme?
REC_Mode=$(wget -q http://127.0.0.1/control/setmode?status -O -)

case $REC_Mode in
     off*)
          echo "Shutdown Timer not set no record detected"
          ;;
     on*)
         
         if [ ! -e /var/tuxbox/plugins/s_tmr.sh ]; then
            #Shutdown Script schreiben
            echo "#!/bin/sh" > /var/tuxbox/plugins/s_tmr.sh
            echo "wget -q http://127.0.0.1/control/setmode?record=stop -O /dev/null" >> /var/tuxbox/plugins/s_tmr.sh
            echo "wget -q http://127.0.0.1/control/shutdown -O /dev/null" >> /var/tuxbox/plugins/s_tmr.sh
            chmod 755 /var/tuxbox/plugins/s_tmr.sh
            #.so schreiben
            echo "type=3" > /var/tuxbox/plugins/s_tmr.cfg
            echo "name=Shutdown" >> /var/tuxbox/plugins/s_tmr.cfg
            echo "desc=End Record & Shutdown" >> /var/tuxbox/plugins/s_tmr.cfg
            echo "needfb=0" >> /var/tuxbox/plugins/s_tmr.cfg
            echo "needrc=0" >> /var/tuxbox/plugins/s_tmr.cfg
            echo "needvtxtpid=0" >> /var/tuxbox/plugins/s_tmr.cfg
            echo "needoffsets=0" >> /var/tuxbox/plugins/s_tmr.cfg
         fi                  
         #Sender feststellen
         ACT_CHANNEL=$(pzapit -gi | cut -d\  -f1)
            
         #Aktuelles EPG holen in der Hoffnung das es vorhanden ist
         EPG_STRING=$(wget -q http://127.0.0.1/control/epg?ext -O - | grep $ACT_CHANNEL)
            
         #Startzeit aus dem EPG String lesen
         EPG_START_T=$(echo $EPG_STRING | cut -d\  -f2)
   
         #Dauer aus dem EPG String lesen
         EPG_DURATION_T=$(echo $EPG_STRING | cut -d\  -f3)
   
         #Dauer auf Startzeit aufrechnen um Endzeit zu erhalten + 2 Minuten
         EPG_END_T=`expr $EPG_START_T + $EPG_DURATION_T + 120`
         
         #Timer schon da?   
         TIMER_CHECK=$(wget -q http://127.0.0.1/control/timer -O - | grep $EPG_END_T )
         
         if [ $TIMER_CHECK="" ];then
   
            #String für Timer basteln
            TMR_STRING="http://127.0.0.1/control/timer?action=new&alarm=$EPG_END_T&type=8&PluginName=s_tmr"
   
            #Timer setzen
            wget -q $TMR_STRING -O /dev/null
         fi
         ;;
esac   
EDIT:
Ich habs nochmal überarbeitet da "epg?ext " alle derzeit laufenden Sendungen ausgibt. Wir brauchen aber nur die des aktuellen Channel - den grep ich jetzt raus. Außerdem wurde bei jedem standby.on ein neuer Timer angelegt also auch wenn man noch mal kurz auf on und dann wieder auf off gewechselt hat.

EDIT2:
Ich habe es nicht geschaft aus /tmp ein skript über einen Timer zu starten. Deshalb oben die Korrektur.

Wer noch was zu verbessern hat - feel free :D