我想转发标记为星标的某些邮件。我想只发送普通的主体(不是HTML主体),并转发最初附加的文件(如果有的话)。
我目前的代码如下:
function getMailsAndForward() {
var thread, subject, body_PLAIN, emails, i;
emails = GmailApp.search("in:SomeLabel AND in:starred");
var count = emails.length;
if (count == 0)
return;
for (i=0; i<count; i++) {
if (emails[i])
{
thread = emails[i].getMessages()[0];
subject = "[AUTO-FORWARD] " + thread.getSubject();
body_PLAIN = thread.getPlainBody();
GmailApp.sendEmail("", subject, body_PLAIN, {"bcc": "xx@yy.com, fewmore@here.com"});
// Unstar Mail...
GmailApp.unstarMessage(thread);
}
}
}
我已经在网上找到了一些关于如何从收到的邮件中提取附件到GoogleDrive的解决方案,以及如何将GoogleDrive文件附加到新创建的邮件。
但在走这条路/路之前,我想问一下: 有没有更简单的方法,而无需事先将附件保存到GoogleDrive中的文件?会很方便......
提前致谢!
答案 0 :(得分:1)
以下修改怎么样?
您可以使用getAttachments()
作为包含blob的数组来检索附件文件。带有blob的数组用于GmailApp.sendEmail()
。这样,就不需要将附件文件作为文件保存到Google Drive。
GmailApp.sendEmail("", subject, body_PLAIN, {"bcc": "xx@yy.com, fewmore@here.com"});
GmailApp.sendEmail("", subject, body_PLAIN, {"bcc": "xx@yy.com, fewmore@here.com", "attachments": thread.getAttachments()});
如果我误解了你的问题,我很抱歉。