如何在Automator中获取Mail.app原始消息?

时间:2013-07-31 12:13:01

标签: macos applescript automator

需要从OS X Mail.app获取原始邮件内容,并将其传递给下一个操作。

不幸的是 - 测试了这个 - 并且不起作用::(

a

我不想选择邮件的“内容”,但希望将raw内容(base64编码的内容)传递给下一个操作。

因此,在“获取所选邮件”和“新文档”中可能需要一些AppleScript action

不知道该怎么做......

“新TextEdit doc”仅适用于测试,实际操作将是perl脚本,将从raw message content读取stdin

2 个答案:

答案 0 :(得分:3)

尝试:

on run {input, parameters}
    set theSource to {}
    tell application "Mail"
        repeat with aMessage in input
            set end of theSource to aMessage's source & return
        end repeat
    end tell

    return theSource as text
end run

答案 1 :(得分:2)

以下是“获取所选邮件消息”操作后要运行的AppleScript操作的一些代码。它将放置在一个动作中:“运行AppleScript”

-- This script accepts an input which is a list of message objects from Mail and returns their properties.
-- The properties returned are in the form of an AppleScript properties record.
on run {input, parameters}
    tell application "Mail"
        set output to {}
        repeat with thisMessage in input
            set output to output & (properties of thisMessage)
        end repeat
    end tell
    return output
end run

我认为此脚本是进度,但其操作会返回AppleScript记录列表。您可能希望在AppleScript中选择所需的字段,并将所有邮件消息作为文本返回给下一个操作,Perl脚本能够解析纯文本而不必处理AppleScript记录。

您可以使用上面的AppleScript查看记录键和值,然后编写AppleScript以实际用于完成的工作流程,该工作流程仅选择您想要的字段。

- 凯德尔 kaydell@yahoo.com
http://learnbymac.com