const { SMTPServer } = require('smtp-server');
const nodemailer = require('nodemailer');
const SMTPServerInstance = new SMTPServer({
logger: true,
debug: true,
authOptional: true
});
SMTPServerInstance.listen(() => {
console.log('SMTP server is listening!\n');
const transporter = nodemailer.createTransport({
logger: true,
debug: true,
url: `smtp://${SMTPServerInstance.server.address().address}:${SMTPServerInstance.server.address().port}`,
ignoreTLS: true
});
console.log('Sending email...');
transporter
.sendMail({
from: 'sender@example.com',
to: 'receiver@example.com',
subject: 'Subject',
text: 'Text',
html: 'HTML'
})
.then((info) => {
console.log('Email successfully sent!', info);
})
.catch((err) => {
console.log('Error when sending an email:', err);
})
.finally(() => {
SMTPServerInstance.close();
});
});