Google 脚本开始一封电子邮件

Google Script star an e-mail

我有一个 Google 脚本来处理收件箱以查找丢失的电子邮件,然后将丢失电子邮件的摘要发送到我的收件箱:

var user;
var summary = "";
Logger.log("Checking last emails...");
user_list.forEach(function(user) {
var no_user_hit = true;
var query = 'from:'+user.user+' in:anywhere newer_than:' + user.deadline + 'd';
Logger.log(query);
var threads = GmailApp.search(query);
for (var i = 0; i < threads.length; i++) {
var messages = threads[i].getMessages();
for (var j = 0; j < messages.length; j++) {
if (check_subject(messages[j].getSubject(), user.subject)) {
no_user_hit = false;   
}
}
}

if (no_user_hit == true) {
Logger.log("Sending email with summary...");
summary = summary + "No messages from "+user.user+" with subject "+user.subject+" for the last "+user.deadline+" days \n"; 
}
});

if (summary.length > 0) {
GmailApp.sendEmail(me, email_subject_to_your, summary);
}
}

我想为每封发送的电子邮件加注星标作为摘要,我已经尝试过 starMessage(message) 但没有成功。

问题似乎出在 GmailApp.starMessage() accepts a GmailMessage 对象上,但您为该方法提供了一个字符串(从您收到的错误消息中可以看出)。

发送消息后,您需要在用户邮箱中再次找到它,然后给它加注星标。

answered question 关于检索刚刚发送的消息以进行进一步处理 - 这可能对此有所帮助。