Google Apps Script: sendMail from form näidis

Kuidas saata e-kirju, kasutades Google Apps Script vormi.

Google Apps Script on võimas tööriist, mis võimaldab automatiseerida erinevaid Google’i rakendusi, sealhulgas Google Formsi ja Gmaili. Üks levinud kasutusviise on automaatsete e-kirjade saatmine pärast vormi täitmist.

Kuidas see töötab?

Kui kasutaja täidab Google Formsi, salvestatakse vastused Google Sheetsi. Google Apps Scripti abil saab vormi esitamise sündmusele reageerida ning saata vastajale või administraatorile e-kirja, kasutades sendMail funktsiooni.

Seadistamine

  1. Ava Google Sheets, mis on seotud sinu Google Formsiga.
  2. Mine Apps Scripti (laiendused > Apps Script).
  3. Lisa skript ja salvesta.
  4. Seadista sündmuse päästik:
    • Klõpsa “Edit” > “Triggers”.
    • Lisa uus päästik (sendEmailOnFormSubmit), vali “From form” > “On form submit”.

Kasu

  1. Automatiseeritud vastamine parandab kasutajakogemust.
  2. Kiire ja efektiivne suhtlus.
  3. Võimalus kohandada ja laiendada e-kirja sisu.

Selle meetodi abil saad hõlpsalt luua dünaamilise e-kirjade süsteemi Google Apps Scripti abil.

Näidis

On tehtud ilus ja oma väljenditega vorm (TÄHTIS! üks väli on email)

GoogleTable salvestab vormi sisestused

Lisame Google Apps Script

function sendEmailToClient() {

    //Текущая Гугл Таблица записана в переменную:
    let ss = SpreadsheetApp.getActiveSpreadsheet();

    //Лист текущей таблицы с именем "Ответы на форму (1)", в который загружаются ответы из формы, записан в переменную:
    let listAnswers = ss.getSheetByName("Ответы на форму (1)");

    //Получен email клиента из ячейки с адресом: последняя строка, 4 ряд, - и записан в переменную:
    let clientEmail = listAnswers.getRange(listAnswers.getLastRow(),6).getValue();

    //valik-viimane rida, kolmas veerg
    let valik = listAnswers.getRange(listAnswers.getLastRow(),15).getValue();

    let nimi=listAnswers.getRange(listAnswers.getLastRow(),2).getValue();
    let sugu=listAnswers.getRange(listAnswers.getLastRow(),3).getValue();
    let vanus=listAnswers.getRange(listAnswers.getLastRow(),4).getValue();
    let syn=listAnswers.getRange(listAnswers.getLastRow(),5).getValue();
    let post=listAnswers.getRange(listAnswers.getLastRow(),6).getValue();
    let sport=listAnswers.getRange(listAnswers.getLastRow(),7).getValue();
    let fusteg=listAnswers.getRange(listAnswers.getLastRow(),8).getValue();
    let toit=listAnswers.getRange(listAnswers.getLastRow(),9).getValue();
    let stress=listAnswers.getRange(listAnswers.getLastRow(),10).getValue();
    let uni=listAnswers.getRange(listAnswers.getLastRow(),11).getValue();
    let har=listAnswers.getRange(listAnswers.getLastRow(),12).getValue();
    let elu=listAnswers.getRange(listAnswers.getLastRow(),13).getValue();
    let rahul=listAnswers.getRange(listAnswers.getLastRow(),14).getValue();

    //Тело письма, отформатированное в html-разметке, записано в переменную:
    let bodyValik1 =
    'Tere! <br/> Meie saime kätte teie <strong>küsitluse vastused</strong><br/> ' +
    'Meil on heameel, et soovite meie uudiskirju saada!<br/>' + '<br/><br/>'+'<strong>Saadame Teile ka Teie vastused: </strong><br/>' + 'Teie nimi: ' + nimi + '<br/> <br/> Teie sugu: ' + sugu + '<br/> Teie vanus: ' + vanus + '<br/> Teie sünnipäev: ' + syn + '<br/> Teie e-post: ' + post + '<br/> Teie tegelete spordiga: '+ sport + '<br/> Teile meeldivad: ' + fusteg + '<br/> Toidust teie eelistate: ' + toit + '<br/> Teie igapäevane stressitase: ' + stress + '<br/>Teie magate: ' + uni +  '<br/> Teie harjumused: ' + har + '<br/> Elustiili parandamise soov: ' + elu + '<br/>Elustiiliga rahulolek: ' + rahul +
    '<br/><br/>' +
    'Lugupidamisega, <br/> Anna Oleks';
    let bodyValik2 =
    'Tere! <br/> Meie saime kätte teie <strong>küsitluse vastused</strong><br/> ' +
    'Meil on nii kahju, et Teie ei soovi meie uudiskirju saada!<br/>' + '<br/><br/>'+'<strong>Saadame Teile ka Teie vastused: </strong><br/>' + 'Teie nimi: ' + nimi + '<br/> <br/> Teie sugu: ' + sugu + '<br/> Teie vanus: ' + vanus + '<br/> Teie sünnipäev: ' + syn + '<br/> Teie e-post: ' + post + '<br/> Teie tegelete spordiga: '+ sport + '<br/> Teile meeldivad: ' + fusteg + '<br/> Toidust teie eelistate: ' + toit + '<br/> Teie igapäevane stressitase: ' + stress + '<br/>Teie magate: ' + uni +  '<br/> Teie harjumused: ' + har + '<br/> Elustiili parandamise soov: ' + elu + '<br/>Elustiiliga rahulolek: ' + rahul +
    '<br/><br/>' +
    'Lugupidamisega, <br/> Anna Oleks';
    let bodyValimta =
    'Tere! <br/> Meie ei saanud kätte teie vastust meie uudiskirjade kohta!' +'<br/><br/>'+'<strong>Saadame Teile ka Teie vastused: </strong><br/>' + 'Teie nimi: ' + nimi + '<br/> <br/> Teie sugu: ' + sugu + '<br/> Teie vanus: ' + vanus + '<br/> Teie sünnipäev: ' + syn + '<br/> Teie e-post: ' + post + '<br/> Teie tegelete spordiga: '+ sport + '<br/> Teile meeldivad: ' + fusteg + '<br/> Toidust teie eelistate: ' + toit + '<br/> Teie igapäevane stressitase: ' + stress + '<br/>Teie magate: ' + uni +  '<br/> Teie harjumused: ' + har + '<br/> Elustiili parandamise soov: ' + elu + '<br/>Elustiiliga rahulolek: ' + rahul +
    '<br/><br/>' +
    'Lugupidamisega, <br/> Anna Oleks';
    'Lugupidamisega, <br/> Anna Oleks';
    let body;

    //tingimused
    if(valik=='Jah'){body=bodyValik1}
    else if(valik=='Ei'){body=bodyValik2}
    else{body=bodyValimta}
    //В описании кода приведены дополнительные пояснения относительно html-разметки

    //Отправлено письмо клиенту (отправителем будет тот, кто запускает скрипт):
    //Для отправки используется функция sendEmail (по-правильному: метод класса MailApp)
    //Ссылка на подробную информацию о методе в описании к коду

    MailApp.sendEmail(clientEmail, "Vormi vastus",'',{htmlBody: body});

    }

Kirja saatmine ankeedi täitjale

Uudiskirjaga liitunud inimesele saadetud kiri

Uudiskirjast loobunud inimesele saadetud kiri

Küsimusele uudiskirjast ei vastanud inimesele saadetud kiri

Allikas