@coolgk/email
a javascript / typescript module
npm install @coolgk/email
a email sender wrapper class
Report bugs here: https://github.com/coolgk/node-utils/issues
Examples
import { Email } from '@coolgk/email';
const email = new Email({host: 'localhost'});
email.send({
subject: 'hello this is email subject',
from: {
name: 'Daniel Gong',
email: 'daniel.k.gong@example.com'
},
to: [
{
name: 'Dan Go',
email: 'dan@example.com'
},
'gong@example.com'
],
message: '<html><body><h1>test</h1>some message here <img src="cid:my-image" width="500" height="250"></body></html>',
attachments: [
{
path: '/tmp/test.png',
name: 'screenshot.png'
},
{
path:"/tmp/test.png",
headers:{"Content-ID": "<my-image>"}
}
]
}).then((sentMessage) => {
console.log(sentMessage);
}).catch((error) => {
console.log(error);
});
Email
Kind: global class
See: https://www.npmjs.com/package/emailjs#emailserverconnectoptions
new Email(options)
Param | Type | Default | Description |
---|
options | object | | |
[options.user] | string | | username for logging into smtp |
[options.password] | string | | password for logging into smtp |
[options.host] | string | "'localhost'" | smtp host |
[options.port] | string | | smtp port (if null a standard port number will be used) |
[options.ssl] | boolean | | boolean (if true or object, ssl connection will be made) |
[options.tls] | boolean | | boolean (if true or object, starttls will be initiated) |
[options.domain] | string | | domain to greet smtp with (defaults to os.hostname) |
[options.authentication] | Array.<string> | | authentication methods |
email.send(options, [attachments]) ⇒ promise
Kind: instance method of Email
Returns: promise
- - message sent
Param | Type | Description |
---|
options | object | |
options.subject | string | email subject |
[options.message] | string | html email message |
options.to | Array.<(string|object)> | to email address |
options.to[].name | string | name of the recipient |
options.to[].email | string | email address of the recipient |
[options.from] | string | object | see options.to |
[options.cc] | Array.<(string|object)> | see options.to |
[options.bcc] | Array.<(string|object)> | see options.to |
[attachments] | Array.<object> | email attachments |
attachments.path | string | file path |
[attachments.name] | string | file name |
[attachments.type] | string | file mime type |
[attachments.method] | string | method to send attachment as (used by calendar invites) |
[attachments.headers] | object | attachment headers, header: value pairs, e.g. {"Content-ID":""} |