Email di Elysia-Light
Elysia-Light menyediakan utility email berbasis Nodemailer untuk mengirim email secara terstruktur dan konsisten. Utility ini dirancang sederhana, eksplisit, dan mudah diintegrasikan dengan API, queue, maupun cron job.
Konsep Dasar Email Utility
Pengiriman email dipisahkan dari logika bisnis utama. Elysia-Light menyediakan dua fungsi utama: sendMail untuk mengirim email dan renderMailTemplate untuk merender template HTML berbasis file stub.
Konfigurasi Environment Variable
Sebelum menggunakan email utility, pastikan environment variable berikut sudah dikonfigurasi dengan benar. Konfigurasi ini mengikuti standar SMTP umum.
Kode berhasil di copy!
5
Mengirim Email Sederhana
Gunakan fungsi sendMail untuk mengirim email dengan konten text atau HTML. Fungsi ini akan langsung mengirim email melalui SMTP yang telah dikonfigurasi.
Kode berhasil di copy!
5
Mengirim Email dengan HTML & Attachment
Email dapat dikirim menggunakan HTML dan attachment file. Attachment akan dikirim sebagai file terlampir sesuai standar email.
Kode berhasil di copy!
5
Menggunakan Template Email
Elysia-Light mendukung template email berbasis file stub. Template dirender menggunakan renderMailTemplate sebelum dikirim sebagai HTML.
Kode berhasil di copy!
5
Struktur Template Email
Template email disimpan dalam folder mails/templates. Setiap template menggunakan file .stub dan dirender ke dalam layout utama.
Kode berhasil di copy!
5
Integrasi dengan Queue
Pengiriman email sangat disarankan dilakukan melalui queue agar tidak memperlambat response API. API atau cron hanya perlu mendorong job ke queue, lalu worker akan memanggil sendMail.
Kode berhasil di copy!
5
Best Practice
Selalu kirim email melalui queue, gunakan template untuk konsistensi, dan hindari meletakkan logic bisnis di dalam template. Email sebaiknya menjadi output dari proses, bukan pusat logika.