如何使用Google Apps Script将电子邮件返回到收件箱顶部



我正在尝试制作我自己的回旋镖版本,该脚本可以在用户指定的稍后时间将电子邮件返回到您的收件箱。

我正在使用Google Apps Script,除了无法将电子邮件返回到收件箱顶部之外,我一切正常。我尝试使用相关脚本转发电子邮件,但无济于事。

有什么想法吗?


以下是我尝试过的代码的一些示例(这些代码都没有产生我正在寻找的结果):

测试 1:

  messages = GmailApp.getMessagesForThreads(threads);
  for (var i = 0 ; i < threads.length; i++) {
      messages[i][0].reply("<b>This message has been moved to the top of your inbox per your request. Please take action soon.</b>", {
        replyTo: "desiredEmail@gmail.com"
      });
  }

测试 2:

  messages = GmailApp.getMessagesForThreads(threads);
  for (var i = 0 ; i < threads.length; i++) {
      forward("desiredEmail@gmail.com", {
         htmlBody: "<b>This message has been moved to the top of your inbox per your request. Please take action soon.</b>",
         name: "ServAce85",
         replyTo: "desiredEmail@gmail.com",
         from: "desiredEmail@gmail.com",
         subject: "Re: " + messages[i].getSubject()
      });
   }

测试 3:

  messages = GmailApp.getMessagesForThreads(threads);
  for (var i = 0 ; i < threads.length; i++) {          
       messages[i][0].forward("desiredEmail@gmail.com", {
         subject: messages[i][0].getSubject()
       });
  }

测试 4:

function moveEmail(threadsToMove) {
  var  threads = threadsToMove;
  var  messages = GmailApp.getMessagesForThreads(threads);
  for (var i = 0 ; i < threads.length; i++) {
    messages[i][0].forward(Session.getActiveUser().getEmail(), {
        subject: "Re: " + messages[i][0].getSubject(),
          htmlBody: "<b>This message has been moved to the top of your inbox per your request. Please take action soon.</b></n>" + Session.getActiveUser().getEmail() + "</n>" + messages[i][0].getBody()
      });
    GmailApp.sendEmail(Session.getActiveUser().getEmail(), "Re: " + messages[i][0].getSubject(), messages[i][0].getPermalink());
  }
}

这似乎对我有用:

function moveEmail() {
  var  threads = GmailApp.getInboxThreads(0, 2); // Change to what you want the threads to be
  var  messages = GmailApp.getMessagesForThreads(threads);
  for (var i = 0 ; i < threads.length; i++) {
      messages[i][0].forward("CHANGEEMAIL@GMAIL.COM", {
          htmlBody: "<b>This message has been moved to the top of your inbox per your request. Please take action soon.</b></n>" + messages[i][0].getBody()
      });
   }
}

我来这里是为了寻找类似于暂停收件箱的解决方案。

做了这个:

1) 在 Gmail 中设置过滤器,以便每封新邮件都会绕过收件箱并标记为您创建的自定义标签。

2)为以下谷歌脚本功能制作时间触发器:

function moveTheMails(){
  var label0 = GmailApp.getUserLabelByName("Custom Label/Sublabel if wanted");
  var threads = label0.getThreads();
  for (var i = 0; i < threads.length; i++) {
    threads[i].moveToInbox();
    threads[i].removeLabel(label0);
  }
}

瞧,取决于您的时间触发器,您的新邮件会在自定义时间发送到您的收件箱。作为gmail过滤器,我使用了:发件人:(-{a@b.com OR c@d.com}) to:(me1@my.com OR me2@my.com)来自中的地址在过滤器中被排除 (-),因此来自该人员的邮件将直接传递到收件箱中。

相关内容

最新更新