简体   繁体   English

Google脚本-转发邮件

[英]Google Script - forwarding mail

Can I ask you for advice. 我可以请教一下吗。 I have a Google script that does this: 1) check whether there is any conversation marked by an asterisk 2) if so, deselect it, and then forward this conversation to that address 我有一个执行此操作的Google脚本:1)检查是否有星号标记的对话2)如果是,请取消选择它,然后将此对话转发到该地址

It works well, but I need to easily pimp. 它运作良好,但我需要轻松拉皮条。 Rather than forward, I need to send the message to the address, which would be the subject of a report and found the body of a message by message body was found under the link to the thread found messages and the icing on the cake would have been references to attachments in the message. 而不是转发,我需要将消息发送到该地址,该地址将成为报告的主题,并在找到的消息的链接的链接下找到了按消息正文显示的消息正文,并且蛋糕上的糖衣会被邮件中的附件引用。

    function TJ() {
  var threads = GmailApp.search('is:starred');
  for (var h = 0; h < threads.length; h++) {
    var messages = threads[h].getMessages();
    for (var i = 0; i < messages.length; i++) {
      if (messages[i].isStarred())
      {
        Logger.log(messages[i].getSubject());
        messages[i].unstar();
        messages[i].forward("--email-address--", {
          cc: "",
          bcc: ""
          });     
      }
  }
}
}

THX! 谢谢!

This is perfect! 太棒了!

function AddSM2GTDApp() {
      var threads = GmailApp.search('is:starred');
      for (var h = 0; h < threads.length; h++) {
        var messages = threads[h].getMessages();
        for (var i = 0; i < messages.length; i++) {
          if (messages[i].isStarred())
          {
            Logger.log(messages[i].getSubject());
            var subject = messages[i].getSubject();
            Logger.log(messages[i].getBody());
            var body = messages[i].getBody();
            Logger.log(messages[i].getId());
            var id = messages[i].getId();
            var label = GmailApp.getUserLabelByName("Add2GTDApp");
            threads[h].addLabel(label);
            messages[i].unstar();
            MailApp.sendEmail({
         to: "your@email.com",
         subject: subject,
         htmlBody: "https://mail.google.com/mail/u/0/#inbox/"+id+"<br>--------------------------------------------------------------------------------------<br>"+body+"<br>--------------------------------------------------------------------------------------<br>Mail to Nirvana Script ",
       }); 
          }
      }
    }
    }

Please try the below code , You can add 5 mins time driven event trigger to run the script 请尝试以下代码,您可以添加5分钟的时间驱动事件触发器来运行脚本

function MailForward() {

try{
var glabel = createLabel_("Mail-Forwarded");
var rtm_email = 'abc@abc.com';
var from_email = Session.getActiveUser().getEmail();
var threads =  GmailApp.search('in:inbox is:unread newer_than:1d');
var mForward = 0;

for (var i=0;i<threads.length;i++) {

  var messages=threads[i].getMessages();
  for (var m = 0; m < messages.length; m++){
    if (messages[m].isUnread()){

    mForward = 0;  
    var mlabels = threads[i].getLabels();
    for (var j = 0; j < mlabels.length; j++) {
      Logger.log(mlabels[j].getName());

      if (mlabels[j].getName() === "Mail-Forwarded") {
      mForward = 1;  
      }
    }

    if (mForward===0) {

    //   Logger.log(messages.length)
    //   Logger.log(messages[m].getFrom());
    var from = messages[m].getFrom();

    //Logger.log(messages[m].getDate());
    var date = messages[m].getDate();

    // Logger.log(messages[m].getSubject());
    var subject = messages[m].getSubject();

    //  Logger.log(messages[m].getTo());
    var to = messages[m].getTo();

    var body = messages[m].getBody();
    var attachment = messages[m].getAttachments();

    var emailoptions = ("---------- Forwarded message ----------" +'<br>'+'From: '+from+ "<'" + from.replace(/^.+<([^>]+)>$/, "$1") +"'>"+'<br>'+ 'Date: '+date+'<br>'+ 'Subject: ' +subject+'<br>'+ 
                    'To: ' +to+ "<'" + to.replace(/^.+<([^>]+)>$/, "$1") +"'>"+'<br>'+'<br>'+'<br>');

    messages[m].forward(rtm_email,{htmlBody: emailoptions + body , Attachment: attachment});

    glabel.addToThread(threads[i]);
    Logger.log(glabel.getName());
    messages[m].markRead();

    mForward = 1;

      }
    }
  }
}
} catch(e) {

 MailApp.sendEmail("abc@abc.com", "Exception found in Sript", e );
  Logger.log(e);

}
}

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM