@studiowebux/mailer v5.0.0
Introduction
This module is a wrapper to send emails, it uses nodemailer. This is a SMTP Implementation.
Installation
npm install --save @studiowebux/mailer
Usage
Configuration
Transport configuration
Official documentation : https://nodemailer.com/smtp/
const opts = {
isEnabled: true,
host: '127.0.0.1',
port: 2525,
secure: false,
auth: {
user: '',
pass: '',
},
pool: false,
tls: {
// do not fail on invalid certs
rejectUnauthorized: false,
},
};
The
isEnabled
parameter allows to deactivate the mailer service, that way it doesn't send all emails while doing tests.
Email data object
Official documentation : https://nodemailer.com/message/
// NOTE : bcc field is not detected by the mailparser and/or the smtp-server
const data = {
from: 'test@from.local',
to: ['test1@to.local', 'test2@to.local'],
cc: ['test3@cc.local', 'test5@cc.local', 'test6@cc.local'],
bcc: ['test4@bcc.local'],
subject: 'Testing the webux mailer',
html: '<p>Hello World !</p>',
text: 'Hello World !',
};
Functions
constructor(opts, log = console)
Initializes the transporter and the logger function
Verify(): Promise\<String>
Verifies the transporter configuration and authentication
webuxMailer
.Verify()
.then((info) => {
console.log(info);
})
.catch((e) => {
console.error(e);
});
Sendmail(data): Promise\<Object>
Sends an email if the mailer is enabled
const data = {
from: 'test@from.local',
to: ['test1@to.local', 'test2@to.local'],
subject: 'Testing the webux mailer',
html: '<p>Hello World !</p>',
text: 'Hello World !',
};
webuxMailer
.Sendmail(data)
.then((info) => {
console.log(info);
})
.catch((e) => {
console.error(e);
});
Quick start
For testing only, Check the examples/ directory for complete code.
example.js
const WebuxMailer = require('@studiowebux/mailer');
const opts = {
isEnabled: true,
host: process.env.HOST || '127.0.0.1',
port: 2525,
secure: false,
auth: {
user: process.env.USER || '',
pass: process.env.PASSWORD || '',
},
};
const webuxMailer = new WebuxMailer(opts, console);
const data = {
from: 'test@from.local',
to: ['test1@to.local', 'test2@to.local'],
subject: 'Testing the webux mailer',
html: '<p>Hello World !</p>',
text: 'Hello World !',
};
webuxMailer.Sendmail(data).then((info) => {
console.log(info);
});
Videos and other resources
Contributing
Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.
License
SEE LICENSE IN license.txt
23 days ago
8 months ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
2 years ago
2 years ago
3 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
5 years ago
5 years ago
5 years ago