Así que mail.app tiene este maravilloso mensaje:// El esquema de la URL, que funciona muy bien, hasta que se mueve el mensaje. Entonces los enlaces creados a veces funcionan y otras no. No puedo entender la diferencia. Así que mi pregunta es doble:
- ¿Existe una forma de acceder a los mensajes a través de una URL aunque se hayan movido?
- Si no es así, ¿cómo puedo mover un mensaje y entonces ¿obtener su ID de mensaje?
Mi actual script es
tell application "Mail"
set theSelectedMessages to selection
set the selected_message to item 1 of the theSelectedMessages
set message_id to the message id of the selected_message
set message_subject to the subject of the selected_message
end tell
set myPrompt to display dialog "Create New To Do in BusyCal" default answer message_subject
set response to the text returned of myPrompt
set quick_entry to encode(response & " " & month of (current date) & day of (current date) & "!!!" & " <message:<" & message_id & ">>") -- see encode handler below
tell application "BusyCal"
activate
open location "busycalevent://new/-" & quick_entry
end tell
tell application "Mail"
move the selected_message to mailbox "Calendar" of mailbox " To-Do" of account "Calion"
end tell
--encode handler
on encode(msg)
set theText to do shell script "/usr/bin/python -c 'import sys, urllib; print urllib.quote(sys.argv[1])' " & quoted form of msg
set AppleScript's text item delimiters to "/"
set theTextItems to text items of theText
set AppleScript's text item delimiters to "%2F"
set theText to theTextItems as string
set AppleScript's text item delimiters to {""}
return theText
end encode