Gmail: фильтры по расписанию

Mar 22, 2013 18:18


Дополнение к статье о продуктивном использовании Gmail.

В этой статье рассказывается, как научить Gmail применять любые фильтры по расписанию. Причина, по которой потребовалось писать отдельную программу - Gmail сам по себе применяет фильтры только к письмам, попадающим во «Входящие». Но можно придумать очень много полезных фильтров, управляющих вашей почтой, которая уже находится в ящике. Например, удалять все рассылки старше 30 дней, акцентировать внимание на важных, но уже неделю как непрочтённых письмах, и т. п. По счастью, всё это можно реализовать с помощью Google Scripting. Ниже я расскажу, шаг за шагом, как настроить систему без необходимости в ней разбираться и изучать программирование.

Примечание: скрипт предоставляется в открытом виде и «как есть». Автор не несёт ответственности за утерю или иные неприятности с чьей либо почтой и здоровьем.



Предполагается, что вы уже знаете, зачем и как создавать фильтры в Gmail. Если нет, то сперва прочитайте эту статью. Также предполагается, что у вас уже есть аккаунт на Google, и вы в общих чертах понимаете, как создать документ в Google Drive (если нет, читайте).

Шаг 1. Создайте таблицу, в которой вы будете хранить список фильтров. Вот образец, вы же настраиваете поля так как хотите. Первая строка - заголовок, там может быть что угодно. Следующие строки - фильтры.
  • Если в «enbaled» не записано «TRUE» или в «has words» пусто, эта строка игнорируется.
  • В полях «enabled», «delete», «mark as read», «mark as unread», «star it», «unstar it», «archive» если вы хотите, чтобы это действие выполнилось, напишите «TRUE». 
  • В поле «has words» пишется любой текст, как в поисковой строке Gmail (подробнее было описано в статье по ссылке выше).
  • В поле «forward to» можно указать несколько адресов e-mail через запятую.
  • В полях «assign labels» и «remove labels» вы можете перечислить несколько ярлыков, через запятую. Важно: эта метка должна быть уже создана в Gmail.
  • Все ячейки после «archive» игнорируется, можете писать там примечания.

 


Шаг 2. Добавьте скрипты в список документов. Кликните на «Create» (1) , потом на «Connect more apps» (2).



Наберите в строке поиска (1) слово «script» и появится список, в котором будет «Google Apps Script». Нажмите кнопку «+ Connect» (2), подтвердите своё согласие.



Шаг 3. Создайте новый скрипт. Снова нажмите кнопку «Create»  и кликните на «Script» (1).



В результате откроется редактор скриптов с новым пустым открытым файлом. Вы  можете переименовать его во что хотите. У меня это «Scheduled Filters.gs».

Шаг 4. Вставьте текст скрипта. Откройте в Блокноте или сразу в браузере текст это скрипта, скопируйте и вставьте его в окно редактора (куда указывает красная стрелка).



Шаг 5. Скопируйте идентификатор таблицы с фильтрами в скрипт. Откройте окно с таблицей с фильтрами из шага 1. Идентификатор - текст в строке URL после «key=», на картинке он выделен жёлтым цветом:



Откройте окно с текстом скрипта. В строке 32 вставьте этот ID внутри кавычек в «spreadsheet_id_s = "...."».



Сохраните файл (дискетка сверху, Ctrl-S или File:Save).

Шаг 6. Настройте периодичность исполнения скрипта. Для этого кликните или на часики в панели над текстом скрипта, или на меню «Resources : Current project's triggers…».



Откроется окно, в котором скорее всего ещё не будет ни одного триггера. Создайте его, кликнув на эту ссылку.



Выберите в (1) «main_runScheduledFilters», в (2) "Time-driven", в (3) нужную вам периодичность (я поставил ежечасно: "Hour timer", но вы можете задать любой промежуток времени), в (4) уточните периодичность. По желанию, в (5) укажите почтовый адрес, куда будут отправляться уведомления, если что-то пойдёт не так.



Шаг 7.  Теперь надо один раз и надолго разрешить скрипту пользоваться сервисами Google. Выберите в выпадающем меню (1) «main_runScheduledFilters» (2), кликните на чёрный треугольник (3), чтобы запустить программу.



Google последовательно спросит вас, разрешаете ли вы этому скрипту пользоваться сервисами таблиц и почты, после чего запустит скрипт в первый раз. Дальше запуск будет проходить по указанному вами расписанию.

++ Подробнее  про Google Apps Script можно узнать здесь.

++ К сожалению, из-за ограничений Gmail API, невозможно выполнить поиск или назначить ярлык какому-то одному сообщению: только целой ветке. Это очень неудобно, когда мы раскидываем ярлыки на письма с аттачами. Но, увы. Пишем Гуглу жалобные письма, может быть ситуация исправится.

++ Это первая версия, чтобы быстро решить проблему. Если заметите плюхи и баги или придумаете хорошую штуку, пишите. Попробую исправить и добавить.







содержаниевся фототематикатолько фотографиимыслиновостиобзорыинтересноеalex-krylov.ru

gmail • gmail scripting • программирование • скрипты • фильтры gmail

программирование, gmail, Полезное

Previous post Next post
Up