2008-12-23 16 views
5

Estoy escribiendo un pequeño AppleScript que recupera todos los mensajes "no leídos" en el visor y los bucles.¿Cómo abrir un mensaje de correo electrónico usando applescript?

que tienen dos objetivos para completar:

  1. que necesito para obtener el asunto de cada mensaje y llevar a cabo una expresión regular para ver si es adecuado para el paso 2 (por ejemplo:. Obtener mensajes de correo electrónico con el asunto {* })

  2. Es necesario abrir cada mensaje en una ventana separada y después de 4 segundos, lo que tenga que cerrar esa ventana y proceder con el siguiente mensaje

¿conoce cómo hacer esto?

Gracias de antemano.

Respuesta

2

El siguiente applescript funciona para mí, pero no estoy seguro de cómo hacer la comparación de expresiones regulares. Puede usar la función 'grep' de unix con el comando 'do shell script' de applescript, pero no soy experto en cómo usar grep correctamente. Lo dejaré para que alguien más responda.


on run 
    tell application "Mail" 
     set myInbox to mailbox "INBOX" of account 1 
     set myMessages to every message of myInbox 

     repeat with theMessage in myMessages 
      if read status of theMessage is false then 

       if my subjectIsInteresting(subject of theMessage) then 
        open theMessage 
        delay 4 
        close window 1 
       end if 

      end if 
     end repeat 

    end tell 
end run 

on subjectIsInteresting(subject) 

    -- do some regex magic here 

    return true -- for now 

end subjectIsInteresting 
1

Sé que ya tiene su respuesta pero ¿ha investigado Automator? Para la mayoría de los scripts estándar como este, puede ser menos doloroso si no está muy familiarizado con AppleScript. No es muy 'programmy', pero es rápido y pasarás menos tiempo depurando.

Cuestiones relacionadas