Скрипт электронной почты Google отправляет несколько писем - PullRequest
0 голосов
/ 04 февраля 2020

Я использую форму Google для объединения нескольких сообщений в одно ежедневное электронное письмо, отправленное с использованием сценариев и ежедневного триггера (код скопирован с здесь и моей версии ниже).

Все это работает с одной маленькой ошибкой. Я получаю около 2/3 электронных писем, которые также появляются в моем почтовом ящике и заполняют его каждый день.

Так, например, один адрес электронной почты - abc@example.co.uk, и они получают электронное письмо, но в моем почтовом ящике (xyz@example.co.uk) это электронное письмо, отправленное на abc@example.co.uk, но не перенаправленное сообщение или ответ.

Есть идеи, как это остановить?

    /**
     * Sends emails with data from the current spreadsheet.
     */
    function sendEmails() {
      var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('Email Info');
      var startRow = 1; // First row of data to process
      var numRows = 18; // Number of rows to process
      // Fetch the range of cells A2:B3
      var dataRange = sheet.getRange(startRow, 1, numRows, 18);
      // Fetch values for each row in the Range.
      var data = dataRange.getValues();
      for (var i in data) {
        var row = data[i];
        var emailAddress = row[0]; // First column
        var message = row[1]; // Second column
        var subject = 'Tech Support Handover';
       MailApp.sendEmail(emailAddress, subject, message);
      }
    }

1 Ответ

0 голосов
/ 05 февраля 2020

Добавьте еще один столбец и назовите его отправленным.

function sendEmails() {
  var sh=SpreadsheetApp.getActiveSpreadsheet().getSheetByName('Email Info');
  var data=sh.getRange(1,1,18,19).getValues();
  for (var i=0;i<data.length;i++) {
    var row=data[i];
    var emailAddress=data[i][0];
    var message=data[i][1];
    var sent=data[i][18];//column 19  Added one more column
    var subject='Tech Support Handover';
    if(sent!='SENT') {
      MailApp.sendEmail(emailAddress, subject, message);
      sh.getRange(i+1,19).setValue('SENT');
    }
  }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...