EyeTV3 RecordingDone Script zum ausschalten

Diskutiere das Thema EyeTV3 RecordingDone Script zum ausschalten im Forum Sonstige Multimedia Hard- und Software.

  1. oneOeight

    oneOeight Thread Starter Mitglied

    Beiträge:
    53.689
    Zustimmungen:
    6.618
    Mitglied seit:
    23.11.2004
    EyeTV3 bietet die Möglichkeit mittels eine Applescript nach einer Aufnahme automatisch eine Aktion auszuführen.
    Um jetzt nicht mehr über den Energie sparen Zeitplan den Rechner auszuschalten nach einer Aufnahme benutzt man einfach folgendes Script:
    Code:
    on RecordingDone(recordingID)
    	tell application "EyeTV"
    		if is_recording = false then
    			activate
    			set antwort to display dialog "ausschalten?" buttons {"nein", "ja"} default button "ja" giving up after 30
    			if button returned of antwort = "ja" or button returned of antwort = "" then
    				tell application "Finder"
    					shut down
    				end tell
    			end if
    		end if
    	end tell
    end RecordingDone
    
    Der Dialog bleibt für 30 Sekunden stehen, damit man genug Zeit hat zum Nein drücken, falls man nicht am Rechner ist. Danach fährt der Rechner automatisch runter (sofern nicht noch Applikationen offen sind, die fragen, ob man etwas speichern möchte, wie sonst auch).

    Das ganze wird mit dem Skripteditor als Skript mit Namen RecordingDone gespeichert und muss dann in
    /Library/Application Support/EyeTV/Scripts/TriggeredScripts
    abgelegt werden. Falls der Ordner noch nicht existiert, muss man den kurzerhand selber anlegen.

    Wenn man den Rechner nur nach der Aufnahme schlafen schicken möchte, kann man auch das "shut down" durch "sleep" ersetzen.

    Und BITTE dran denken, falls man mehrere Aufnahmen hintereinander programmiert hat:
    Der Mac braucht einige Zeit zum runter und hoch fahren.
    EyeTV weckt/startet den Rechner 2 Minuten vor der programmierten Aufnahme (minus eingestellte Vorlaufzeit).
     
  2. djofly

    djofly Mitglied

    Beiträge:
    2.865
    Zustimmungen:
    191
    Mitglied seit:
    31.07.2006
    Na endlich, meine Gebete wurden erhört!
    Warum allerdings sowas in EyeTV selber nicht integriert ist, ist mir ein Rätsel!
    Beim DVBViewer unter Windows kann man schon seit JAHREN angeben, das er eine Aktion nach der Aufnahme durchführen soll (u.a. z.B. Runterfahren oder Standby).

    Wenn jetzt auch das Aufwachen mit EyeTV3 noch zuverlässig funktioniert...
     
  3. oneOeight

    oneOeight Thread Starter Mitglied

    Beiträge:
    53.689
    Zustimmungen:
    6.618
    Mitglied seit:
    23.11.2004
    ich hab mal das script etwas verfeinert und ein activate hinzugefügt.
    sonst startet der timer des dialoges nicht, wenn man die app nicht in der den vordergrund holt. was natürlich nicht der fall ist, wenn man den rechner zum aufnehmen starten lässt, wenn man nicht zuhause ist...
     
  4. MacMo

    MacMo Mitglied

    Beiträge:
    1.022
    Zustimmungen:
    86
    Mitglied seit:
    27.08.2004
    Funktioniert das auch mit EyeTV 2.5?
     
  5. oneOeight

    oneOeight Thread Starter Mitglied

    Beiträge:
    53.689
    Zustimmungen:
    6.618
    Mitglied seit:
    23.11.2004
    bei der 2.x steht nichts davon im handbuch, kannst es ja mal probieren, ob die funktion trotzdem da ist.
     
  6. MacMo

    MacMo Mitglied

    Beiträge:
    1.022
    Zustimmungen:
    86
    Mitglied seit:
    27.08.2004
    Mh, nein funktioniert nicht. :(
     
  7. epsillon

    epsillon Mitglied

    Beiträge:
    77
    Zustimmungen:
    1
    Mitglied seit:
    16.11.2007
    Danke oneOeight.
    Das funktioniert schon mal.

    Ein/zwei Fragen hätte ich allerdings noch.
    - Wie macht man es, wenn man zwei Sendungen nacheinander aufnehmen möchte?
    Nach der ersten Sendung ging der Mac schlafen, da die zweite mit 2min Vorlauf aufgenommen werden sollte, wachte der Mac nicht mehr auf :-( Jetzt habe ich nur eine Sendung.

    -Wie geht das, wenn man anschließend automatisch ins iTunes exportieren möchte? Geht der Mac nach der Aufnahme oder nach dem Exportieren schlafen?

    Gruß,
    epsillon
     
  8. oneOeight

    oneOeight Thread Starter Mitglied

    Beiträge:
    53.689
    Zustimmungen:
    6.618
    Mitglied seit:
    23.11.2004
    zu 1.:
    wann ist denn die 2. aufnahme? direkt dahinter oder war einfach die zeit zu kurz zum aus-/einschalten bzw aufwachen?
    der trigger den das script nutzt bezieht sich halt nur auf eine aufnahme und nicht alle (für alle gibt es keinen trigger).
    ich das bislang nicht getestet, was bei einer direkt folgenden aufnahme passiert. eigentlich müsste aber eyetv doch das ausschalten abbrechen mit der frage, ob die aufnahme wirklich beendet werden soll.

    zu 2.:
    der trigger wird direkt nach der aufnahme los, aber man könnte natürlich noch einfügen, solange zu warten solange das recording busy ist (exportiert, kompaktiert wird usw) und danach erst fragen.
     
  9. epsillon

    epsillon Mitglied

    Beiträge:
    77
    Zustimmungen:
    1
    Mitglied seit:
    16.11.2007
    zu 1.:
    Also ich wollte eine zwei Sendungen direkt hintereinander aufnehmen. Wahrscheinlich hätte ich einfach eine lange Sendung programmieren müssen, weil beide auf einem Kanal gesendet wurden. Das Problem bliebe allerdings, wenn man von zwei verschiedenen Kanälen aufnehmen möchte.

    zu 2.:
    Dein Vorschlag hört sich interessant an. Wie geht das? Ich habe meinen Mac noch nicht lange und kenne mich mit Scripts nicht aus.

    Danke.
    Gruß,
    epsillon
     
  10. oneOeight

    oneOeight Thread Starter Mitglied

    Beiträge:
    53.689
    Zustimmungen:
    6.618
    Mitglied seit:
    23.11.2004
    warten müsste so in der art gehen:
    Code:
    		set warten to true
    		repeat until warten is false
    			set warten to busy of recordingID
    		end repeat
    
    oder meinst du das automatisch exportieren?
     
  11. oneOeight

    oneOeight Thread Starter Mitglied

    Beiträge:
    53.689
    Zustimmungen:
    6.618
    Mitglied seit:
    23.11.2004
    so, gerade mal probiert mit 2 sendungen direkt hintereinander, da fragt eyetv natürlich, ob weiter aufgenommen werden soll und nimmt weiter auf.
    leider schaltet es dann nicht auf, weil der "weiter aufnehmen" dialog nicht automatisch weg geht, wenn die aufnahme beendet ist.

    da war also etwas zeit bei dir zwischen den aufnahmen. wohl nicht genug um wieder rechtzeitig aufzuwachen. eyetv weckt/startet den rechner 2 min vor der aufnahme minus der eingestellten vorlauf zeit.

    da solltest du wohl mal die zeiten umstellen, entweder bei toast oder im skript.

    ich schau mal, ob ich nicht noch einen check einbaue, ob gerade nicht noch eine aufnahme läuft.
    *eingebaut*
     
  12. Flupp

    Flupp Mitglied

    Beiträge:
    1.788
    Zustimmungen:
    15
    Mitglied seit:
    27.07.2004
    Gibt es auch ein Script vor den Aufnehmen ?
     
  13. oneOeight

    oneOeight Thread Starter Mitglied

    Beiträge:
    53.689
    Zustimmungen:
    6.618
    Mitglied seit:
    23.11.2004
    vor dem aufnehmen ausschalten? ;)

    eyetv startet doch automatisch den rechner über os x, da braucht man kein extra script für...
    oder wofür willst du ein script?
     
  14. maccoX

    maccoX Mitglied

    Beiträge:
    11.667
    Zustimmungen:
    2.590
    Mitglied seit:
    15.02.2005
    Super Sache - Danke!

    Allerdings bräuchte ich es auch, das er nicht immer gleich schlafen geht - also ich hab z.B. ein halbe Stunde später oder so wieder eine Aufnahme, dann bringt einschlafen ja recht wenig. Am besten währe er schaut ob in den nächsten X Minuten / Stunden noch eine Aufnahme geplant ist, und falls nicht geht er dann schlafen. Achja, alles mit Meldungen die von allein weggehen (für wenn ich im Urlaub bin).

    Bei mir ist EyeTv (2) auch immer im Urlaub abgestürzt - dann war EyeTv offen mit so einer Meldung das es unerwartet beendet wurde oder so, aber da die kleiner weggeklickt hat hat EyeTv den halben Urlaub nix aufenommen und der Mac war die ganze Zeit an :( - kann man da auch was machen?
     
  15. oneOeight

    oneOeight Thread Starter Mitglied

    Beiträge:
    53.689
    Zustimmungen:
    6.618
    Mitglied seit:
    23.11.2004
    wirklich kritisch ist das nur bei aufnahmen, die zu kurz danach folgen und die ausschalten/einschlafen und starten/aufwecken zu lange dauert...
    30 min ist da schon wieder was anderes.
    so was würde das skript super lang machen, vor allem wenn man jeden möglichen fall berücksichtigt.
    man müsste alle schedules holen, dann die zeiten alle durchgucken und falls eine zu nah dran ist, dann halt nicht ausschalten.

    einfachste lösung wäre halt noch einen delay einzufügen, vor dem is_recording check...

    dazu muss man halt mittels der crashreporter prefs in den server mode schalten, dann kommt der crash dialog nicht und eyetv kann wieder so starten...
    wenn du Xcode installiert hast, dann gibt es da die CrashReporterPrefs.
    ansonsten im terminal folgendes eingeben:
    defaults write com.apple.CrashReporter DialogType server
     
Die Seite wird geladen...
  1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite weitersurfst, akzeptierst du unseren Einsatz von Cookies. Akzeptieren Weitere Informationen...