3 votos

¿Cómo uso AppleScript o Automator para activar o desactivar el anuncio de tiempo en momentos específicos?

Me gusta el Tiempo de Anunciar durante el día mientras estoy trabajando. Pero quiero que se apaga cuando estoy durmiendo.

Apple No Perturbar la función de silenciar las notificaciones y sonidos asociados con ellos, pero no tiene ningún efecto sobre el Tiempo de Anunciar.

En otra parte de este sitio hay un viejo respuesta de un número de años que ofreció este script:

do shell script "valores predeterminados de escribir ./com.apple.discurso.la síntesis.general.pref TimeAnnouncementPrefs -dict TimeAnnouncementsEnabled -bool SÍ"

Secuencia de comandos Similar a apagar.

Otra respuesta puede ser encontrada aquí, sino que se remonta a los días de Mountain Lion:

¿Cómo puedo habilitar "Anunciar el tiempo" mediante programación?

Soy nuevo aquí y un rango principiante a Aapplescript. Yo no tengo el privilegio de comentar sin embargo, para solicitar la aclaración de los autores de las respuestas presentadas.

Estos scripts no funcionan en Mac OS X de Alta Sierra (10.13). Mientras que la primera secuencia de comandos de compilación, al ejecutar no pasa nada. La secuencia de comandos de la página hace referencia ni siquiera compilar. Error de sintaxis acerca de un token desconocido después de un identificador.

Además, al hacer un cambio manualmente a esta preferencia en la configuración requiere mi contraseña para desbloquear. Puede AppleScript o Automator lidiar con eso también?

1voto

wch1zpink Puntos 11

ACTUALIZACIÓN: Esto funciona para mí, usar la versión más reciente de Sierra Alta.

Esta versión se "enciende" o "Anunciar el tiempo:" si no está ya activada

property thePassword : "yourpassword"

tell application "System Preferences"
    reveal anchor "ClockPref" of pane id "com.apple.preference.datetime"
    tell application "System Events"
        delay 0.5
        my enterPassword()
        set theValue to get value of checkbox "Announce the time:" of tab group 1 of window "Date & Time" of application process "System Preferences"
        if theValue is 0 then
            click checkbox "Announce the time:" of tab group 1 of window "Date & Time" of application process "System Preferences"
        end if
    end tell
    delay 1
    quit
end tell


on enterPassword()
    tell application "System Events"
        try
            click button "Click the lock to make changes." of window "Date & Time" of application process "System Preferences"
        end try
        delay 1
        --activate
        set value of text field "Enter password" of sheet 1 of window "Date & Time" of application process "System Preferences" to thePassword
        delay 1
        click UI element "Unlock" of sheet 1 of window "Date & Time" of application process "System Preferences"
    end tell
end enterPassword

Esta versión de "turn off" "Anunciar el tiempo:" si ya está habilitado

property thePassword : "yourpassword"

tell application "System Preferences"
    reveal anchor "ClockPref" of pane id "com.apple.preference.datetime"
    tell application "System Events"
        delay 0.5
        my enterPassword()
        set theValue to get value of checkbox "Announce the time:" of tab group 1 of window "Date & Time" of application process "System Preferences"
        if theValue is 1 then
            click checkbox "Announce the time:" of tab group 1 of window "Date & Time" of application process "System Preferences"
        end if
    end tell
    delay 1
    quit
end tell


on enterPassword()
    tell application "System Events"
        try
            click button "Click the lock to make changes." of window "Date & Time" of application process "System Preferences"
        end try
        delay 1
        --activate
        set value of text field "Enter password" of sheet 1 of window "Date & Time" of application process "System Preferences" to thePassword
        delay 1
        click UI element "Unlock" of sheet 1 of window "Date & Time" of application process "System Preferences"
    end tell
end enterPassword

enter image description here


Yo podría haber creado la secuencia de comandos para realizar la acción de hacer clic en casilla de verificación "Anunciar el tiempo:" si no se ha activado ya... con instrucciones de configuración habilitado o deshabilitado de que la casilla de verificación durante ciertas horas. Pensé que, por ahora, sería más fácil para guardar dos versiones diferentes de la secuencia de comandos. Una versión para activar la casilla de verificación "Anunciar el tiempo:" y una versión para desactivar la casilla de verificación "Anunciar el tiempo:". En ScriptEditor, acaba de guardar cada versión de la secuencia de comandos como aplicaciones. A partir de ahí simplemente abrir el Calendario.aplicación y crear dos nuevas calendario de eventos. uno de los eventos para habilitar la casilla de verificación "Anunciar el tiempo:" en cualquier momento que usted elija. Y otro para deshabilitar.. una Vez creado el evento, sólo tienes que crear una alerta personalizada y seleccione la opción de abrir el archivo, a continuación, seleccione el script que guarda como una aplicación.

enter image description here

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