Mail sender with disk persistency. It uses microsoft graph api to send the mails.
You have two options to configure the library:
The following environment variables must be declared:
AZURE_CLIENT_ID
AZURE_TENANT_ID
AZURE_CLIENT_SECRET
MAIL_USERNAME
MAIL_PASSWORD
MAIL_STORE_PATH
MAIL_CRON
A config object with the following properties must be provided:
{
azureClientId: string,
azureTenantId: string,
azureClientSecret: string
username: string,
password: string,
storePath: string,
cron: string
}
The vars where previously defined in a .env file located at the root level
const { Mail, PersistentMail } = require("@norvento/persistent-mail");
const mail = new Mail('to', 'subject', 'body');
async function sendMail() {
await PersistentMail.init();
PersistentMail.sendMail(mail);
}
sendMail();
##Example with config from config object
const { Mail, PersistentMail } = require("@norvento/persistent-mail");
const mail = new Mail('to', 'subject', 'body');
const myConfig = {
azureClientId: "my azure client id,
azureTenantId: "my azure tenant id",
azureClientSecret: "my azure client secret",
username: "username",
password: "password",
storePath: "/tmp/persisten-mail",
cron: "*/1 * * * *"
}
async function sendMail() {
await PersistentMail.init(myConfig);
PersistentMail.sendMail(mail);
}
sendMail();