Вам больше не нужно отвечать на электронные письма!

Работать с электронной почтой — хлопотно. Каждый человек получает сотни писем каждый день. Ответы на все из них занимают значительное количество времени в течение дня. Время, которое вы могли бы провести с семьей, заняться хобби или бесцельно листать социальные сети.

Ответ на электронную почту является обязательным для большинства из нас. Скажем, вы начинаете новый бизнес. Крайне важно, чтобы вы отвечали своим клиентам как можно скорее. Это вопрос времени, когда ваш конкурент выиграет того клиента, которому вы слишком долго отвечали.

Что, если бы я сказал, что есть способ автоматизировать простой ответ, подтверждающий каждое полученное вами электронное письмо. Вам не нужно просматривать каждое электронное письмо. Вам не нужно беспокоиться, если вы пропустили какие-либо электронные письма. И отправители будут в восторге от вашего быстрого ответа.

Что такое скрипт Google Apps?

Домашняя страница Google Apps Script определяет себя следующим образом.

Облачная платформа JavaScript, которая позволяет интегрировать и автоматизировать задачи в продуктах Google.

Google проделал отличную работу по сокрытию всех сложностей подключения к различным API Google. Пользователь Apps Script должен вызвать пару предопределенных функций и альт, вы можете творить чудеса!!!

Еще не впечатлен? Позвольте мне привести несколько примеров использования Apps Script.

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

Теперь, когда мы хорошо понимаем, что такое Apps Script, давайте посмотрим, как мы можем использовать Apps Script для достижения нашей цели; Отправка автоматических ответов на ваши электронные письма. Давайте рассмотрим решение шаг за шагом.

Шаг 1. Настройте проект скрипта приложений

Во-первых, вам нужно зайти на script.google.com. Там нажмите кнопку + New Project, чтобы создать новый проект, посвященный нашей задаче.

Откроется элегантный редактор, похожий на изображение ниже.

Ваш код находится в файле Code.gs, который открыт по умолчанию. Давайте очистим код шаблона в редакторе и добавим код, который выполняет нашу задачу электронной почты.

Шаг 2. Читайте новые электронные письма

Чтобы читать новые письма, нам нужен доступ к Gmail. Apps Script предоставляет API для этого, GmailApp.

Нам нужно искать только новые письма. Однако прямой доступ к непрочитанным электронным письмам в папке «Входящие» невозможен.

Здесь мы делаем небольшой трюк. Когда мы отвечаем на электронное письмо, мы добавляем к нему метку. Допустим, replied . В следующий раз, когда мы будем искать, нам нужно искать в папке «Входящие» только те электронные письма, которые не помечены как replied . Используем поисковый запрос is:inbox-label:replied . Здесь is:inbox гарантирует, что поиск входящих писем будет выполнен. -label:replied гарантирует, что поиск ведется по электронным письмам без метки replied .

Допустим, sendRepliesToEmails — это имя нашей функции. Вот код до сих пор.

Шаг 3. Ответьте на отфильтрованные ветки электронной почты

Теперь мы должны ответить на каждое электронное письмо в списке sendRepliesToEmails .

Нам нужно придумать логику для функции sendReplyTo.

Здесь я добавил образец тела к ответному сообщению как replyBody . Вы можете изменить его в соответствии с вашими требованиями.

Я использую функцию reply, предоставляемую API GmailApp, для отправки ответа с прикрепленным replyBody.

Шаг 4. Пометьте цепочки писем с ответами как «отвеченные»

Мы ответили на все новые письма в папке «Входящие». Чтобы избежать ответов на те же электронные письма в следующий раз, когда мы запустим скрипт, мы должны пометить электронные письма, на которые мы ответили, меткой replied . В приведенной ниже функции мы получаем метку из ее имени replied , а затем добавляем метку в ветку электронной почты, на которую мы только что ответили.

Теперь мы создали скрипт, который читает все новые письма и отправляет на них ответы. Вы можете задаться вопросом, нужно ли вам просыпаться каждый день и запускать этот код! Не волнуйтесь. Apps Script поможет вам.

Шаг 5. Создайте триггер для периодического запуска процедуры

Apps Script имеет классную функцию настройки триггеров. Триггеры могут активироваться на различные действия. Нам нужен триггер, который периодически срабатывает. Вы можете настроить триггер, запустить его только один раз, и все готово!

В приведенном ниже фрагменте кода, в строках 3–7, вы можете увидеть, что я создал триггер, который вызывает функцию sendRepliesToEmails. Триггер срабатывает раз в 15 минут.

Вы также можете заметить, что в строке 2 приведенного выше кода я использовал функцию с именем markOldEmailThreadsAsReplied. Позволь мне объяснить.

Когда вы запускаете функцию sendRepliesToEmails в первый раз, она ищет ветки электронной почты, не помеченные как replied . Поскольку ни одно электронное письмо не помечено как отвеченное, на все ваши старые электронные письма, относящиеся к временам, когда динозавры бродили по земле, будут даны ответы. Совсем не то, что мы хотим 😆.

Итак, мы создаем метку с именем replied, получаем все цепочки входящих писем и помечаем их как replied. Это нужно сделать только один раз в самый первый раз перед созданием триггера.

Полный код

Вот комбинация фрагментов кода, которые мы уже прошли.

Шаг 6: Выполнение

Из выпадающего меню выбираем setEmailReplyTrigger функцию, которую хотим выполнить. Затем нажмите кнопку ️▶️ Run.

При первом запуске скрипта появится всплывающее окно, и вам, возможно, придется принять запросы на разрешение на доступ к Gmail. Всплывающее окно может даже сказать, что скрипт небезопасен. Эй… ты создал сценарий. Как это может быть небезопасно 😄

На вкладке ⏰ Triggers видно, что создан триггер. Периодические исполнения показаны во вкладке 📑 Executions .

Теперь вы можете выпить чашечку кофе и наслаждаться своим утром. Сценарий приложений позаботится о ваших электронных письмах.

Want to Connect?
You can connect with me on LinkedIn.