Quindi mail.app ha questo meraviglioso messaggio: // schema URL, che funziona benissimo, finché il messaggio non viene spostato . Quindi i collegamenti creati a volte funzionano e talvolta no. Non riesco a capire la differenza. Quindi la mia domanda è duplice:
- C'è un modo per accedere ai messaggi attraverso un URL anche quando si sono spostati?
- In caso contrario, come faccio a spostare un messaggio e quindi ottenere il suo ID messaggio?
Il mio script corrente è
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