如何发送与地址不同的确认邮件?

时间:2014-07-31 07:15:16

标签: google-apps-script gmail google-sheets

我正在google docs脚本中发送包含以下代码的确认邮件。

但它是从我的个人Gmail地址发送的。我需要定义不同的邮件地址。因为我将这个用于我的公司,邮件需要显示sometest@companytsite.com

我该怎么做?

我的代码:

function Initialize() {

    var triggers = ScriptApp.getScriptTriggers();

    for (var i in triggers) {
        ScriptApp.deleteTrigger(triggers[i]);
    }

    ScriptApp.newTrigger("SendConfirmationMail")
        .forSpreadsheet(SpreadsheetApp.getActiveSpreadsheet())
        .onFormSubmit()
        .create();

}

function SendConfirmationMail(e) {

    try {

        var ss, cc, sendername, subject, columns;
        var message, value, textbody, sender;

        // This is your email address and you will be in the CC
        cc = Session.getActiveUser().getEmail();

        // This will show up as the sender's name
        sendername = "Your Name Goes Here";

        // Optional but change the following variable
        // to have a custom subject for Google Docs emails
        subject = "Google Form Successfully Submitted";

        // This is the body of the auto-reply
        message = "We have received your details.<br>Thanks!<br><br>";

        ss = SpreadsheetApp.getActiveSheet();
        columns = ss.getRange(1, 1, 1, ss.getLastColumn()).getValues()[0];

        // This is the submitter's email address
        sender = e.namedValues["Email Address"].toString();

        // Only include form values that are not blank
        for ( var keys in columns ) {
            var key = columns[keys];
            if ( e.namedValues[key] ) {
                message += key + ' :: '+ e.namedValues[key] + "<br />"; 
            }
        }

        textbody = message.replace("<br>", "\n");

        GmailApp.sendEmail(sender, subject, textbody, 
                            {cc: cc, name: sendername, htmlBody: message});

    } catch (e) {
        Logger.log(e.toString());
    }

}

1 个答案:

答案 0 :(得分:0)

根据文件:https://developers.google.com/apps-script/reference/gmail/gmail-app#sendEmail(String,String,String,Object) 您应该能够在选项中传入from。

GmailApp.sendEmail(sender, subject, textbody, {
    from: "sometest@companytsite.com",
    cc: cc, 
    name: sendername, 
    htmlBody: message
});

的Nb。为避免混淆,sender应该是to

现在它还说您要发送的电子邮件地址必须是别名,以检查您是否可以打印getAliases()以查看它是否存在。如果没有,您应该能够遵循这些说明:

https://support.google.com/mail/answer/22370?hl=en