Добрый вечер, хабаровчане, начал для себя осваивать google apps script, и первое что мне нужно было, это сделать сбор статистики о непрочитанных письмах с рабочей почты, которая работает в google, так как я не хочу по вечерам держать открытую почту с вкладкой почты.
Хочу поделиться своим трудом с теми, кому так же лень проверять ящик лишний раз)
Чтобы не разбивать куски кода на отдельные блоки с комментариями, я прописал комментарии еще в самом коде.
А для автоматизации, я поставил триггер на выполнение скрипта в период 8-9 часов вечера.
Хочу поделиться своим трудом с теми, кому так же лень проверять ящик лишний раз)
Чтобы не разбивать куски кода на отдельные блоки с комментариями, я прописал комментарии еще в самом коде.
А для автоматизации, я поставил триггер на выполнение скрипта в период 8-9 часов вечера.
function unreadEmailReport() {
// Создаем необходимые переменные для сбора информации о письмах
var threads = GmailApp.getInboxThreads();
// Первоначальная проверка, если у нас нет непрочитанных писем
// То и смысла проверять почту нет
if(GmailApp.getInboxUnreadCount()>0){
// Создаем необходимые переменные для сбора информации о письмах
var messages = threads[0].getMessages();
var senderEmail = messages[0].getFrom();
// Задаем адрес назначения для собранной статистики
var emailAddress = "mail@gmail.com" ;
// Создаем переменные для получения текущего времени
var datenow = new Date ;
var currentTime = datenow.toLocaleTimeString();
// Создаем переменную, где будет храниться собираемая информация(контент контейнер)
var output = ContentService.createTextOutput();
// Цикл, где поочередно идет проверка по всем письмам папки "Входящие"
// на непрочитанные письма, и если они непрочитанны, то считывается
// отправитель письма(senderEmail)
// после этого в контент контейнер записывается номер письма, тема, отправитель
// и делается переход на новую строку
for (var i = 0; i < threads.length; i++) {
if(threads[i].isUnread()){
messages = threads[i].getMessages();
senderEmail = messages[0].getFrom();
output.append(i + ". " + threads[i].getFirstMessageSubject()+" от:"+ senderEmail + '\n');
}
}
// Отправка самого письма, первый параметр адрес назначения
// Во втором идет запись темы письма и текущего времени
// В третьем параметре выводится уже сам контент контейнер
GmailApp.sendEmail(emailAddress,"Тема письма " + currentTime, output.getContent());
}
}