0 votos

¿Cómo puedo crear notificaciones Growl para FCE?

Encontré este script en algún sitio y estoy tratando de hacerlo para que compruebe constantemente si Final Cut Express está renderizando y cuando termine de hacerlo, muestre una notificación de Growl.

EDIT: Mi pregunta es: ¿Cómo consigo que el script compruebe constantemente si FCE está renderizando y una vez que haya terminado de renderizar, muestre una notificación? El script funciona para mostrar la notificación, ahora ¿cómo hago para que funcione bien?

EDIT: Intenté usar un manejador de inactividad. No funcionó, pero tal vez no estoy utilizando el controlador de inactividad derecha.

Aquí está el código del script:

tell application "System Events"
    tell application process "Final Cut Express HD"
        set windowList to get name of every window
    end tell
end tell

if windowList contains missing value then
end if

tell application "GrowlHelperApp" -- ** the daemon that is behind the scenes
    -- Make a list of all the notification types that this script will ever send: 
    -- ** They really mean "ever" or you'll have to reregister.
    set the allNotificationsList to {"Render Complete"}
    -- , "Another Test Notification"} 
    --** Enable another notification

    -- Make a list of the notifications that will be enabled by default. 
    -- ** We'll see shortly that a note must be enabled and the user can disable it.
    -- Notifications not enabled by default can be enabled later in the 'Applications' tab of the growl prefpane.
    set the enabledNotificationsList to {"Render Complete"} -- ** just one turned on, the other not.

    -- Register our script with growl.
    -- You can optionally (as here) set a default icon for this script's notifications.
    -- ** Theoretically, you only have to register once, but there is absolutely no harm in doing
    -- it every time the script runs, i.e., leaving this line in your script.
    register as application "Final Cut Render Complete Script" all notifications allNotificationsList default notifications enabledNotificationsList icon of application "Final Cut Express HD"

    --  Send a Notification...
    -- This one will appear because it was enabled by default.
    notify with name "Render Complete" title "Render Complete" description "Your Render has Finished." application name "Final Cut Render Complete Script"

    -- This one will not appear -- it wasn't enabled by default so the user has to turn it on in the 'Applications' tab of the Growl prefpane to see it.
    -- Take out the comments to enable it.
    --notify with name "Another Test Notification" title "Another Test Notification  " description "Alas  you won't see me until you enable me yourself..." application name "Final Cut Render Complete Script"
end tell

1voto

Boro Puntos 496

¿Guardó el script con el controlador de inactividad como un archivo .app con la casilla de verificación "Permanecer abierto" seleccionada en el cuadro de diálogo Guardar?

Esto es necesario para que el código dentro del manejador de ralentí se ejecute "en ralentí", de lo contrario no se ejecutará en absoluto. Guárdalo así e inténtalo de nuevo.

Está comprobando que windowList no tiene ningún valor. Esto suena como una condición en la que no hay ventanas FCE abiertas. Si quieres que el bloque en el que se ejecuta Growl, debe estar dentro de la sentencia if, no después.

Además, dependiendo de la versión de Growl que utilices, puede que responda a uno de "Growl" (v1.3+) o "GrowlHelperApp" (v<1.3), pero no al otro. Para asegurar el futuro de tu script, reemplaza

tell application "GrowlHelperApp

con lo siguiente:

tell application id "com.Growl.GrowlHelperApp"

Todas las versiones de Growl responden a eso.

El bloque de código que tienes que activa Growl parece que has modificado su ejemplo, y por tus comentarios parece que funciona bien.

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X