如何解决在下班时间将自动回复的电子邮件标记为某个标签
当前我正在使用以下代码,效果很好,但是我想知道是否可以标记由特定标签自动回复的电子邮件,以便我可以检查何时恢复工作?
function autoReply() {
var interval = 5; // if the script runs every 5 minutes; change otherwise
var date = new Date();
var day = date.getDay();
var hour = date.getHours();
if ([4,5,6,0].indexOf(day) > -1 || (day == 1 && hour < 9) || (day == 3 && hour >= 17)) {
var timeFrom = Math.floor(date.valueOf()/1000) - 60 * interval;
var threads = GmailApp.search('is:inbox after:' + timeFrom);
var files = DriveApp.getRootFolder().getFilesByName('autoreply.html');
var htmlbody;
while (files.hasNext()) {
var file = files.next();
htmlbody = file.getBlob().getDataAsString('utf8');
}
for (var i = 0; i < threads.length; i++) {
if (threads[i].isUnread()){
threads[i].reply("",{
htmlBody: htmlbody
});
threads[i].markRead();
threads[i].markImportant();
}
}
}
}
到目前为止,我只能获得threads[i].markImportant
的工作,但是threads[i].markStarred
或其他自定义标签将无法得到。
解决方法
您需要使用方法starMessages(messages)
示例:
for (var i = 0; i < threads.length; i++) {
if (threads[i].isUnread()){
threads[i].reply("",{
htmlBody: htmlbody
});
GmailApp.starMessages(threads[i].getMessages());
}
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。