Когда я отправляю цитату клиенту, я хочу написать скрипт, который легко добавит метку в электронное письмо. Суть в том, что я хочу добавить метку только один раз в поток, а затем никогда больше. У меня есть другой скрипт, который будет принимать все письма с этим ярлыком, добавлять напоминание календаря и удалять ярлык, чтобы он не продолжал добавлять событие. Проблема, с которой я сталкиваюсь, заключается в том, что, когда клиент отвечает на это первое электронное письмо, метка затем повторно применяется, что вызывает еще одно событие календаря. Есть ли способ добавить метку в поток только с количеством сообщений 1? Таким образом, в случае изображения ниже, метка должна применяться только ко второму потоку, а не к первому.
Два потока, один с одним электронным письмом, а другой с 5
function QuoteReminder() {
var reminderLabel = "STS Quotes", //Substitute your label here
calendarName = "Quote Follow-ups", ////Substitute your Calendar name here
label = GmailApp.getUserLabelByName(reminderLabel),
threads = label.getThreads();
if (threads.length > 0) {
for (i in threads) {
if (i.getMessageCount() == 1) {
//get calendar by name
var cals = CalendarApp.getCalendarsByName(calendarName);
//This is run the next day around 9am, calendar invite will be created for 13 days form then to account for the next day
var now = new Date().getTime();
var MILLIS_PER_DAY = 1000 * 60 * 60 * 24;
for (i in threads) {
cals[0].createEvent(reminderLabel + '- '+ i.getFirstMessageSubject(),
new Date(now+(MILLIS_PER_DAY*13)),
new Date(now+(MILLIS_PER_DAY*13)+900000), {description: i.getPermalink()});
}
//Remove the label from the mails to avoid duplicate event creation on next run
label.removeFromThreads(threads);
}
}
}
}