3 votos

Applescript crear evento en el calendario, ¿cómo puedo eliminar la alerta predeterminada?

Corriendo 10.8 Mountain Lion, estoy tratando de crear un nuevo evento con Applescript como este:

 set theDate to (current date)
tell application "Calendar"
tell calendar "Calendar"        
    set timeString to time string of theDate
    set newEvent to make new event at end with properties {description:"Last Backup", summary:"Last Backup " & timeString, location:"To a local unix system", start date:theDate, end date:theDate + 15 * minutes, allday event:false, status:confirmed}
    tell newEvent
        delete every display alarm
        delete every sound alarm
        delete every mail alarm
        delete every open file alarm
    end tell        
end tell
end tell
 

Sin embargo, esto no elimina la predeterminada alerta de calendario que se puede establecer a través de las preferencias de calendario (30 minutos antes en mi caso).

¿Cómo puedo crear un evento sin alarmas a través de Applescript?

3voto

mklement0 Puntos 681

Se parece a otro caso de AppleScript recibiendo el tratamiento no deseado-hijastro. Sugiero presentar un error con Apple.

Específicamente, el comportamiento del buggy es como sigue, como de OS X 10.8.2:

 -- Trying to set ANY properties on the *default* sound alarm fails silently.
-- Programmatically added alarms: only the trigger interval or date can be set.
repeat with al in every sound alarm of newEvent
    tell al
        -- Works only on *programmatically added* sound alarms:
        set trigger interval to -770 # The alternative option, `set trigger date to ...`, works as well.
        -- Fails silently on *all* sound alarms, whether it is the default one or a programmatically created one.
        set sound name to "Pop" # `set sound file to ...` fails equally.
    end tell
end repeat

-- This only deletes the programmatically added alarms, but never the default one.
delete sound alarms of newEvent
 

Por lo tanto, tristemente, silenciar la alarma por defecto mediante la manipulación de sus propiedades no es una opción.

EnMiMaquinaFunciona.com

EnMiMaquinaFunciona es una comunidad de administradores de sistemas en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros sysadmin, hacer tus propias preguntas o resolver las de los demás.

Powered by: