



LAPORAN PERKEMBANGAN TEKNOLOGI REMINDER EMAIL ASESOR MELALUI APPS SCRIPT
1. Pendahuluan Google Apps Script adalah platform berbasis JavaScript yang memungkinkan otomatisasi dan peningkatan fungsi layanan Google, termasuk Google Sheets dan Gmail. Dalam proyek ini, teknologi Google Apps Script digunakan untuk mengirimkan email pengingat secara otomatis kepada asesor terkait perpanjangan sertifikat kompetensi (SERKOM). Laporan ini akan membahas perkembangan implementasi sistem ini, kendala yang dihadapi, serta rencana pengembangan ke depan.
2. Deskripsi Implementasi Sistem ini didasarkan pada Google Sheets sebagai basis data yang berisi daftar email asesor, subjek email, isi pesan, serta tanggal pengiriman email pengingat. Google Apps Script digunakan untuk membaca data dari Google Sheets dan mengirimkan email secara otomatis sesuai dengan tanggal yang telah dijadwalkan.
a. Struktur Data dalam Google Sheets Tabel yang digunakan memiliki format sebagai berikut:
- Kolom A: Email penerima (asesor)
- Kolom B: Subjek email
- Kolom C: Isi pesan
- Kolom D: Tanggal pengiriman email
b. Kode Google Apps Script Kode utama yang digunakan untuk mengotomatiskan pengiriman email adalah sebagai berikut:
function sendScheduledEmails() {
var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Schedule");
var data = sheet.getDataRange().getValues();
var today = new Date();
if (!sheet) {
Logger.log("Error: Sheet 'Schedule' tidak ditemukan!");
return;
}
for (var i = 1; i < data.length; i++) {
var email = data[i][0];
var subject = data[i][1];
var message = data[i][2];
var dateString = data[i][3];
var scheduledDate = new Date(dateString);
if (scheduledDate.toDateString() === today.toDateString()) {
MailApp.sendEmail(email, subject, message);
Logger.log("Email sent to: " + email);
}
}
}
Kode di atas akan menjalankan loop melalui semua baris data dalam spreadsheet dan memeriksa apakah tanggal pengiriman email sama dengan tanggal hari ini. Jika cocok, email akan dikirimkan secara otomatis menggunakan layanan MailApp.sendEmail()
.
3. Kendala yang Dihadapi Dalam implementasi sistem ini, beberapa kendala teknis dan operasional ditemukan:
- Kesalahan Format Tanggal:
- Data tanggal dalam Google Sheets dapat bervariasi formatnya, menyebabkan
new Date(dateString)
menghasilkan nilai yang tidak valid. - Solusi: Memastikan format tanggal dalam spreadsheet sesuai dengan standar yang dapat dibaca oleh JavaScript (
YYYY-MM-DD
).
- Data tanggal dalam Google Sheets dapat bervariasi formatnya, menyebabkan
- Batasan Google Apps Script:
- Google membatasi jumlah email yang dapat dikirimkan per hari (100 email untuk akun Gmail biasa, 1500 email untuk akun Google Workspace).
- Solusi: Membuat mekanisme batching untuk mendistribusikan pengiriman email secara berkala.
- Kesalahan Nama Sheet:
- Jika nama sheet tidak sesuai dengan yang diharapkan oleh script (
Schedule
), sistem akan gagal mengambil data. - Solusi: Menambahkan validasi untuk memastikan nama sheet benar sebelum menjalankan script.
- Jika nama sheet tidak sesuai dengan yang diharapkan oleh script (
4. Rencana Pengembangan Ke Depan Untuk meningkatkan efektivitas dan keandalan sistem ini, beberapa pengembangan lebih lanjut direncanakan:
- Validasi Format Data Secara Otomatis:
- Menambahkan pengecekan format email dan tanggal sebelum eksekusi untuk menghindari kesalahan saat pengiriman.
- Logging yang Lebih Detail:
- Menyimpan log pengiriman email dalam Google Sheets agar dapat ditinjau oleh administrator.
- Mekanisme Pengiriman Ulang (Retry Mechanism):
- Jika pengiriman email gagal (misalnya karena masalah jaringan atau batas kuota), sistem akan mencoba mengirim ulang dalam waktu tertentu.
- Integrasi dengan Notifikasi WhatsApp atau SMS:
- Untuk meningkatkan keterjangkauan, sistem ini dapat diperluas dengan mengirimkan pengingat melalui WhatsApp atau SMS menggunakan API pihak ketiga.
5. JADI : Implementasi sistem pengingat email otomatis menggunakan Google Apps Script telah membantu meningkatkan efisiensi dalam mengingatkan asesor tentang perpanjangan sertifikat mereka. Meskipun beberapa kendala teknis ditemui, langkah-langkah mitigasi telah diidentifikasi dan rencana pengembangan ke depan telah disusun untuk meningkatkan kehandalan sistem ini.