標籤這是我的第一篇文章:)剔除從谷歌Apps腳本
我使用的是谷歌Apps腳本跟蹤電子郵件從過去的7天已經沒有響應(基本上跟蹤電子郵件,其中我的信息是最後一個)。
這是這裏的代碼:
// This script searches Gmail for conversations where I never received a response
// and puts them in a NoResponse label
var DAYS_TO_SEARCH = 7; // look only in sent messages from last 7 days, otherwise script takes a while
var SINGLE_MESSAGE_ONLY = false; // exclude multi-message conversations where I sent the last message?
function label_messages_without_response() {
var emailAddress = Session.getEffectiveUser().getEmail();
Logger.log(emailAddress);
var EMAIL_REGEX = /[a-zA-Z0-9\._\-][email protected][a-zA-Z0-9\.\-]+\.[a-z\.A-Z]+/g;
var label = GmailApp.createLabel("AwaitingResponse");
var d = new Date();
d.setDate(d.getDate() - DAYS_TO_SEARCH);
var dateString = d.getFullYear() + "/" + (d.getMonth() + 1) + "/" + d.getDate();
threads = GmailApp.search("in:Sent after:" + dateString);
for (var i = 0; i < threads.length; i++)
{
var thread = threads[i];
if (!SINGLE_MESSAGE_ONLY || thread.getMessageCount() == 1)
{
var lastMessage = thread.getMessages()[thread.getMessageCount()-1];
lastMessageSender = lastMessage.getFrom().match(EMAIL_REGEX)[0];
if (lastMessageSender == emailAddress)
{
thread.addLabel(label);
Logger.log(lastMessageSender);
}
}
}
}
的問題是在目前,當腳本運行時未回覆郵件會進入「NORESPONSE」標籤,這是偉大的。但是,當我從電子郵件中刪除標籤時,我不需要跟進,當腳本再次運行時,它們會再次返回。
我的問題是:
會會有一個標籤,適用於不需要上進行隨訪,然後制定其寫入腳本,使腳本知道到消息的方式排除該標籤?
任何幫助將是非常美妙的:)
感謝 艾丹
確保你所熟悉的談話中的標籤是如何工作的,而不是個別職位。要使基於標籤的工作流程正常工作,您需要在線程級別應用/刪除標籤,而不是消息級別。如果標籤例如將包括應用了標籤的線程的子消息,則搜索不存在。如果你保持警惕,你會感到沮喪但可行。 – Jonathon 2015-02-08 11:28:30