39 lines
1.6 KiB
JavaScript
39 lines
1.6 KiB
JavaScript
import nodeMailer from "nodemailer";
|
|
import dotenv from 'dotenv';
|
|
import moment from "moment";
|
|
dotenv.config();
|
|
const adminEmail = process.env.ADMIN_EMAIL;
|
|
|
|
const adminPassword = process.env.ADMIN_EMAIL_PASSWORD;
|
|
// Mình sử dụng host của google - gmail
|
|
const mailHost = process.env.EMAIL_HOST;
|
|
// 587 là một cổng tiêu chuẩn và phổ biến trong giao thức SMTP
|
|
const mailPort = process.env.EMAIL_PORT;
|
|
const sendMail = (to, subject, htmlContent) => {
|
|
// Khởi tạo một thằng transporter object sử dụng chuẩn giao thức truyền tải SMTP với các thông tin cấu hình ở trên.
|
|
const transporter = nodeMailer.createTransport({
|
|
pool: true,
|
|
host: mailHost,
|
|
port: mailPort,
|
|
secure: true, // nếu các bạn dùng port 465 (smtps) thì để true, còn lại hãy để false cho tất cả các port khác
|
|
auth: {
|
|
user: adminEmail,
|
|
pass: adminPassword,
|
|
},
|
|
});
|
|
const options = {
|
|
from: adminEmail, // địa chỉ admin email bạn dùng để gửi
|
|
to: to, // địa chỉ gửi đến
|
|
subject: subject, // Tiêu đề của mail
|
|
html: htmlContent, // Phần nội dung mail mình sẽ dùng html thay vì thuần văn bản thông thường.
|
|
};
|
|
// hàm transporter.sendMail() này sẽ trả về cho chúng ta một Promise
|
|
return transporter.sendMail(options);
|
|
};
|
|
console.log(process.env.ADMIN_EMAIL)
|
|
console.log(process.env.EMAIL_HOST)
|
|
console.log(process.env.EMAIL_PORT)
|
|
console.log(process.env.ADMIN_EMAIL_PASSWORD)
|
|
|
|
sendMail("joseph@apactech.io", "REPORT "+moment(Date.now()).format("DD/MM/YYYY"),
|
|
"<div>sdfsdfsdfsdf</div>") |