Mail.app AppleScript para procesar correos POP3 dejó de funcionar en Lion

1

Tengo un script de regla Mail.app que funcionó bien en Mac OS X Snow Leopard. Es simplemente un script que permite la lógica booleana AND / OR combinada para desencadenar una (rara vez dos) de las siguientes acciones:

  1. Mover el mensaje a la carpeta de archivo
  2. Eliminar mensaje de correo electrónico (mover a la papelera)
  3. Reenviar el mensaje a alguien
  4. Colorea el mensaje (para señalar la importancia)

Puede revisar el script aquí . La mayor parte del script está hecho de las condiciones booleanas que estoy viendo (y sí, sé que mis múltiples 'else if's' podrían haberse combinado en menos declaraciones if , pero me pareció más fácil tener cada 'condición' "que estoy buscando en su propia declaración if ).

En Snow Leopard, todo funcionó bien, pero en Lion tengo un comportamiento extraño. Mi bandeja de entrada es engañada / atascada pensando que tiene correos electrónicos para descargar. Básicamente, todos los mensajes que se hubieran "movido / eliminado" de alguna manera no se marcan como procesados en mi servidor POP3. Por lo tanto, cada vez que recibo correo, veo lo siguiente en Actividad de correo: ‘Mensajes entrantes ... X de Y’ (donde Y es el número creciente de correos electrónicos afectados por mi script), pero no se descarga nada nuevo.

Si desactivo mi regla de correo que ejecuta el script, todos los correos electrónicos se vuelven a descargar nuevamente en mi bandeja de entrada. Algunos puntos a tener en cuenta:

  • Me estoy conectando a cuentas POP3
  • Solía usar Growl 1.2.2, pero deshabilité eso en una corazonada de que no era compatible con Lion. Aún verás una función sendGrowl en el script, pero notarás que todo el cuerpo de la función está comentado.

Cualquier sugerencia o idea sobre cómo hacer que esto funcione de nuevo para poder domesticar mi bandeja de entrada sería EXTREMADAMENTE agradecida.

    
pregunta Terry 22.05.2012 - 04:18

1 respuesta

1

A juzgar por su descripción del problema, parece que Lion's Mail.app tiene dificultades para ejecutar correctamente una acción AppleScript move en un servidor PO3 (o tal vez simplemente su servidor POP3 - no tiene un Servidor POP para probarme, no puedo comprobar). Una solución podría ser separar los dos componentes de la operación de traslado reemplazando la línea

move eachMessage to mailbox "Archived/BTR Monitoring Emails"

con

copy eachMessage to mailbox "Archived/BTR Monitoring Emails"
delete eachMessage

con la esperanza de que una orden de eliminación expresa salga mejor. Si eso no soluciona el problema (debido a que las eliminaciones tienen el mismo problema, no puedo decir con seguridad de su pregunta), también puede intentar configurar el delete status del mensaje en lugar de enviarlo a delete comando, es decir,

copy eachMessage to mailbox "Archived/BTR Monitoring Emails"
set deleted status of eachMessage to true

aunque no estoy completamente seguro de cómo se reducirá eso dentro de un servidor POP (suena como algo designado para IMAP).

Finalmente, puede intentar comentar las líneas set read status of eachMessage to true en los bloques de archivado y borrado. Esto debería, por derecho, no afectar al servidor, ya que POP3 no tiene noción de un "estado de lectura" (necesita IMAP para almacenar ese lado del servidor), pero podría ser un problema si AppleScript de Mail piensa lo contrario. La configuración del estado del mensaje para leer también se puede lograr dentro de una regla sin tener que recurrir a AppleScript, por lo que eliminar esto del script no debería ser un problema.

    
respondido por el kopischke 30.05.2012 - 21:35

Lea otras preguntas en las etiquetas