Daftar Isi
- Email Kustom Google Form
- Tahap I: Persiapan
- Membuat Skrip Baru
- Skrip Pertama: Mengetahui Indeks Input Pengguna
- Memasang Skrip Agar Dijalankan Pada Saat Form Dikirim
- Buat Pemicu (Trigger) Baru
- Menjalankan Form Untuk Mengetahui Indeks Input
- Membuka Catatan Eksekusi (Log)
- Catat Indeks Input
- Berikan Komentar Indeks Input
- Contoh Skrip Sederhana: Kirim Notifikasi
- Contoh Skrip Lebih Rumit: Kirim Status
Tahap II: Mulai Membuat Kode
Berikan Komentar Indeks Input
- Berikan komentar indeks input agar memudahkan mengolah data
- Beri komentar pada Logger, dapat diaktifkan kembali apabila diperlukan
function onFormsubmit(e) {
//0: nama lengkap, 1: institusi asal, 2: pekerjaan, 3: nomor hp, 4: sertifikat, 5: bukti
thisItem = e.response.getItemResponses();
/*Logger.log(readThisitem(thisItem[0]) + " " +
readThisitem(thisItem[1]) + " " +
readThisitem(thisItem[2]) + " " +
readThisitem(thisItem[3]) + " " +
readThisitem(thisItem[4]) + " " +
readThisitem(thisItem[5]) + " " +
readThisitem(thisItem[6]));*/
}
function readThisitem(thisItem) {
return (thisItem == undefined) ? "undefined" : thisItem.getResponse();
}
Contoh Skrip Sederhana: Kirim Notifikasi
function onFormsubmit(e) {
//0: nama lengkap, 1: institusi asal, 2: pekerjaan, 3: nomor hp, 4: sertifikat, 5: bukti
thisItem = e.response.getItemResponses();
/*Logger.log(readThisitem(thisItem[0]) + " " +
readThisitem(thisItem[1]) + " " +
readThisitem(thisItem[2]) + " " +
readThisitem(thisItem[3]) + " " +
readThisitem(thisItem[4]) + " " +
readThisitem(thisItem[5]) + " " +
readThisitem(thisItem[6]));*/
pesan = "Terima kasih " + readThisitem(thisItem[0]) +
" sudah mengisi dengan benar. " +
"\n\nBerikut adalah detail Seminar daring..."
option = {name: 'Panitia Seminar Fisioterapi Kolaborasi JPTA, IFI dan UNISA Yogyakarta',noReply: true};
//kirim email
MailApp.sendEmail(e.response.getRespondentEmail(), "Informasi Seminar Daring", pesan, option);
}
function readThisitem(thisItem) {
return (thisItem == undefined) ? "undefined" : thisItem.getResponse();
}
- Gunakan \n untuk baris baru di pesan email
- Cara mendapatkan alamat email:
- opsi Collect email addresses diaktifkan:
e.response.getRespondentEmail() akan memberikan alamat email yang diketik, bukan alamat email yang digunakan untuk login. Contoh ada skrip di atas. - opsi Collect email addresses tidak diaktifkan:
Perlu dibuatkan pertanyaan tersendiri. Diakses dengan thisItem[indeks].getResponse(). Contoh ada di skrip di bawah
- opsi Collect email addresses diaktifkan:
Contoh Skrip Lebih Rumit: Kirim Status
function onFormsubmit(e)
{
thisItem = e.response.getItemResponses();
if (((readThisitem(thisItem[8]) == "37,5 C - 38 C" || readThisitem(thisItem[8]) == "Lebih Dari 38 C") && readThisitem(thisItem[9]) == "Ya" && readThisitem(thisItem[10]) == "Ya" && readThisitem(thisItem[11]) == "Ya" && readThisitem(thisItem[13]) == "Ya" && readThisitem(thisItem[14]) == "Ya" && readThisitem(thisItem[17]) == "Ya"))
kategori = 1;
else if ((readThisitem(thisItem[8]) == "37,5 C - 38 C" || readThisitem(thisItem[8]) == "Lebih Dari 38 C") && readThisitem(thisItem[9]) == "Ya" && readThisitem(thisItem[11]) == "Ya")
kategori = 2;
else if ((readThisitem(thisItem[8]) == "37,5 C - 38 C" || readThisitem(thisItem[8]) == "Lebih Dari 38 C") && readThisitem(thisItem[9]) == "Ya" && readThisitem(thisItem[13]) == "Ya")
kategori = 3;
else if ((readThisitem(thisItem[8]) == "37,5 C - 38 C" || readThisitem(thisItem[8]) == "Lebih Dari 38 C") && readThisitem(thisItem[9]) == "Ya" && readThisitem(thisItem[14]) == "Ya")
kategori = 4;
else if ((readThisitem(thisItem[8]) == "37,5 C - 38 C" || readThisitem(thisItem[8]) == "Lebih Dari 38 C") && readThisitem(thisItem[9]) == "Ya" && readThisitem(thisItem[17]) == "Ya")
kategori = 5;
else if (readThisitem(thisItem[9]) == "Ya" && readThisitem(thisItem[16]) == "Ya")
kategori = 6;
else
kategori = 0;
if (kategori == 0)
{
pesan = "Terima kasih " + readThisitem(thisItem[1]) + " sudah mengisi dengan benar. \n\nSilahkan tidak melakukan aktifitas di luar rumah, tetap jaga kesehatan, konsumsi suplemen/multivitamin untuk menambah imunitas, konsumsi makanan bergizi, banyak minum air putih, jangan stress, dekatkan diri kepada Allah dan tetap menjaga komunikasi dengan Pembimbing Akademik.\n\nJika Anda merasa sakit, beberapa waktu setelah mengisi form ini, maka Anda dapat mengisi lagi form ini.\n\nPastikan identitas diri (KTP) dan Kartu BPJS (jika Ada) sudah disiapkan.\n\nFAQ Covid19: https://update.unisayogya.ac.id/covid19/faq";
}
else
{
pesan = "Terima kasih " + readThisitem(thisItem[1]) + " sudah mengisi dengan benar. \n\nSegera hubungi Hotline WA untuk mendapatkan informasi tindakan selanjutnya. Sebutkan NIM, nama lengkap dan program studi. Pastikan identitas diri (KTP) dan Kartu BPJS selalu tersedia.\n\nFAQ Covid19: https://update.unisayogya.ac.id/covid19/faq"
}
option = {name: 'Satuan Tugas Kewaspadaaan Covid19 UNISA Yogyakarta',noReply: true};
//kirim pesan ke Mahasiswa
MailApp.sendEmail(readThisitem(thisItem[20]), "Hasil Skrining Covid19 Mahasiswa", pesan, option);
//kirim pesan ke SATGAS
if (kategori != 0)
{
pesan = "KATEGORI: " + kategori + "\n\n";
for (var i = 0; i < thisItem.length; i++)
{
pesan += readThisitem(thisItem[i].getItem().getTitle() + ":\n" + readThisitem(thisItem[i]) + "\n\n";
}
MailApp.sendEmail("satgas@unisayogya.ac.id", "Early Warning Skrining Covid19 Mahasiswa", pesan, option);
}
FormApp.getActiveForm().setConfirmationMessage("Terima Kasih sudah mengisi Form Screening.");
}
function readThisitem(thisItem) {
return (thisItem == undefined) ? "undefined" : thisItem.getResponse();
}
Demikian, semoga bermanfaat. [bst]