@coolgk/email
a javascript / typescript modulenpm install @coolgk/email
a email sender wrapper class
Report bugs here: https://github.com/coolgk/node-utils/issues
Examples
import { Email } from '@coolgk/email';
// OR
// const { Email } = require('@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);
});
See: https://www.npmjs.com/package/emailjs#emailserverconnectoptions
* [new Email(options)](#new_Email_new)
* [.send(options, [attachments])](#Email+send) ⇒ <code>promise</code>
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":""} |