Ankündigung

Einklappen
Keine Ankündigung bisher.

[HowTo] Custom Action in Remote Buddy

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • [HowTo] Custom Action in Remote Buddy

    Hi@all,

    Remote Buddy lässt ja bekanntlich kaum Wünsche offen, wenn es darum geht, das Maximum aus der Fernbedienung herauszuholen. Trotzdem gibt es Situationen, die von den Remote Buddy Standard Actions nicht abgedeckt werden. Dazu gehört z.B., mehrere Befehle mit nur einem Tastendruck nacheinander auszuführen. Den RB Programmierern sei Dank, es gibt eine Möglichkeit solche Funktionen selbst anzulegen: die Custom Actions. In diesem HowTo möchte ich detailliert beschreiben, wie solche Custom Actions angelegt und eingebunden werden. Als Beispiel habe ich eine Problemstellung aus dem Mac Mediacenter HowTo gewählt.


    Problemstellung:

    Durch einen langen Druck auf den "Menü" Button der Apple Remote soll die EyeTV TV Wiedergabe gestoppt werden, ohne das Programm zu beenden. Gleichzeitig soll Plex gestartet werden.

    Bei dieser Gelegenheit können wir gleich noch ein weiteres Problem behandeln. Plex verfügt über eine Relaunch Funktion. Wenn man ein Programm über das Plex "Programme" Menü startet, wird Plex beendet. Nach Beenden der gestarteten Anwendung wird Plex automatisch wieder geladen. Diese -an sich sinnvolle- Funktion birgt aber auch eine kleine Falle. Wird der Mac über das Plex Power Menü herunter gefahren, während EyeTV noch geöffnet ist, verhindert der Relauncher den Shutdown.

    Dieser Hänger lässt sich umgehen, wenn der Relauncher per Script gekillt wird. Das lässt sich sehr gut in ein paar Zeilen Applescript realisieren, die wir gleich in die Custom Action mit einbauen.


    Der Arbeitsablauf:

    - sende einen Tastendruck "SPACE" an die EyeTV Anwendung (stoppt die aktuelle Wiedergabe)
    - sende ein "Kill" an den Plex Relauncher
    - deaktiviere das EyeTV Behavior
    - aktiviere das Plex Behavior (startet gleichzeitig die Plex Anwendung)


    Die Umsetzung

    Öffne die Remote Buddy Einstellungen / Belegung und wähle das EyeTV Behavior. Wähle die gewünschte Taste (in diesem Fall "Menü lang") und klicke auf das Auswahlfeld, um eine Aktion auszuwählen. Aus dem Kontextmenü wählst Du "Eigene Aktion".

    rb1.jpg


    Es öffnet sich der Editor für Custom Actions. Gib einen Namen für Deine Aktion ein. Ich habe sie "Plex starten" genannt.

    rb2.jpg


    Der Actor "Tastendruck" ist bereits vorgegeben. Klicke in das Eingabefeld und drücke einmal die "SPACE (Leer)" Taste.

    rb3.jpg


    Bei "Methode" ist vorgegeben "Ein Tastendruck zwischen Drücken und Loslassen mit automatische Wiederholung". Diese Einstellung ist absolut tödlich, weil der Tastendruck immer wieder, im Sekundentakt, an die Anwendung geschickt wird. Ändere das auf "Ein Tastendruck zwischen Drücken und Loslassen".

    rb4.jpg

    Klicke dann auf das "+" Zeichen, um einen weiteren Actor hizuzufügen. Wir benötigen jetzt einen Actor "Behavior Applescript".

    a1.jpg


    Kopiere nun die folgenden Zeilen und füge sie in das Eingabefeld ein:

    set app_name to "relaunch"
    set the_pid to (do shell script "ps ax | grep " & (quoted form of app_name) & " | grep -v grep | awk '{print $1}'")
    if the_pid is not "" then do shell script ("kill -9 " & the_pid)

    Bei "Ausführen" wähle "bei jedem Tasten Event" und klicke dann auf "Übersetzen".

    a2.jpg


    Klicke dann auf das "+" Zeichen, um einen weiteren Actor hizuzufügen. Wir benötigen jetzt eine "Behavior Action".

    a3.jpg


    Wähle aus dem Kontextmenü "Aktuelles Behavior deaktivieren".

    rb7.jpg


    Füge dann einen weiteren Actor "Behavior Action" hinzu. Wähle aus dem Kontextmenü "Plex behavior aktivieren".

    rb8.jpg


    So sollte das Ganze jetzt aussehen. Fehlt nur noch ein Klick auf "Verwenden".

    a4.jpg


    Die neue Custom Action ist nun mit der Tastenfunktion verbunden und wird bei laufendem EyeTV ausgeführt, wenn die "Menü" Taste lange gedrückt wird.

    rb10.jpg


    Nach diesem Muster kannst Du Dir alle erdenklichen Funktionen selbst zusammenstellen

    lg

    Michael
    Zuletzt geändert von lifeflow; 07.09.2010, 02:24.
    HowTos: Mac Mini Mediacenter mit Plex oder XBMC / Logitech Harmony und der Mac

  • #2
    Re: [HowTo] Custom Action in Remote Buddy

    Hey!

    Eine Frage hätt ich zu oben beschriebenen Tutorial:
    Wenn ich mit der Leertaste EyeTV pausiere, wird die Sendung im Hintergrund weiter aufgenommen während ich zurück zu Plex wechsle.
    Bei der Rückkehr von Plex zu EyeTV wird an der gestoppten Stelle fortgesetzt, anstatt das aktuelle Live Programm zu zeigen.

    Mach ich was falsch?

    Kommentar


    • #3
      Re: [HowTo] Custom Action in Remote Buddy

      Hi kagerhuber,

      willkommen bei uns

      Nein, Du machst nichts falsch. Das EyeTV Fenster bleibt ja im Hintergrund geöffnet, nur die Wiedergabe wird auf Pause geschaltet. Daher wird der Time Shift Buffer weiter geschrieben. Beim erneuten Aktivieren der Anwendung läuft die Wiedergabe innerhalb des Buffers weiter.

      Wenn Dich das stört, dann könntest Du z.B. im EyeTV Behavior von Remote Buddy die Taste "Auswahl (lang)" mit der Funktion "Live-TV" belegen. EIn langes Drücken auf die Play/Pause Taste der Apple Remote würde dann direkt zum Ende des Buffers springen.

      lg

      Michael
      HowTos: Mac Mini Mediacenter mit Plex oder XBMC / Logitech Harmony und der Mac

      Kommentar

      Lädt...
      X