Estoy tratando de usar AppleScript para limpiar varios problemas de una libreta de direcciones grande, demasiado grande para arreglarla a mano. He podido encontrar y observar contactos y grupos en AppleScript con éxito. Sin embargo, cualquier tipo de modificación que realice a cualquier propiedad de un contacto no persiste, incluso después de llamar a Guardar aplicación. Por ejemplo, este script para cambiar el nombre de mi primer contacto:
tell application "Contacts"
set thePerson to (item 1 of people)
log (get name of thePerson)
set first name of thePerson to "JustTesting"
if unsaved then
log "unsaved"
else
log "not unsaved"
end if
save
log (get first name of thePerson)
return thePerson
end tell
Este script no funciona, no modifica mi primer contacto y también registra "no guardado".
Estoy usando 10.8.3 Mountain Lion. ¿Qué estoy haciendo mal aquí?
(He hecho una pregunta similar sobre SO aquí: https://stackoverflow.com/questions/17140148/how-to-modify-an-abperson-instance-using-pyobjc , sobre cómo hacer esto con PyObjC)
fuente
Respuestas:
Respondiendo mi propia pregunta. Al observar los errores en la consola después de ejecutar el script anterior, vi muchos errores parecidos a:
(Correo electrónico e identificación cambiados, por supuesto). Tengo una cuenta de 'Facebook' configurada en las preferencias de OS X. Por una suposición educada, eliminé esta cuenta de Facebook OS X y luego la volví a agregar. Después de eso, el script anterior funciona correctamente.
fuente