smtp-connection-as-promised
TypeScript icon, indicating that this package has built-in type declarations

5.0.2 • Public • Published

smtp-connection-as-promised

Build Status Coverage Status npm

This module provides promisified version of smtp-connection from nodemailer module. The API is the same as for smtp-connection, except that all methods return Promise objects.

Requirements

This module requires Node >= 6.

Installation

npm install smtp-connection-as-promised

Additionally for Typescript:

npm install @types/node @types/nodemailer

Usage

const {SMTPConnectionAsPromised} = require("smtp-connection-as-promised")

Typescript:

import SMTPConnectionAsPromised from "smtp-connection-as-promised"
// or
import {SMTPConnectionAsPromised} from "smtp-connection-as-promised"

constructor

const connection = new SMTPConnectionAsPromised(options)

Create new SMTPConnection instance. Options are the same as for original smtp-connection constructor.

Example:

const connection = new SMTPConnectionAsPromised({
  opportunisticTLS: true,
  host: "smtp.example.com",
  port: 25,
})

ended

const isEnded = connection.ended

It is true if connection is already ended.

secure

const isSecure = connection.secure

It is true if connection uses TLS.

connect

await connection.connect()
console.log(connection.secure)

Establish the connection and set the secure property.

login

await connection.login(auth)

Login to the server if requires authentication.

auth is the authentication object with user, pass and xoauth2 properties.

Example:

await connection.login({
  user: "from@example.com",
  pass: "secret",
})

send

const info = await connection.send(envelope, message)

Send a message with an envelope. The info object is returned in a Promise.

Example:

const envelope = {
  from: "from@example.com",
  to: "to@example.net",
}
 
// prettier-ignore
const message =
  '' +
  'From: from@example.com\n' +
  'To: to@example.net\n' +
  'Subject: test\n' +
  '\n' +
  'Test\n'
 
const info = await connection.send(envelope, message)
console.log(info.response)

quit

await connection.quit()

Graceful SMTP session ending. The QUIT command is sent.

close

await connection.close()

Disconnecting of SMTP session.

reset

await connection.reset()

Reseting the SMTP session. The RSET command is set.

destroy

await connection.destroy()

Manually free resources taken by connection.

License

Copyright (c) 2016-2019 Piotr Roszatycki piotr.roszatycki@gmail.com

MIT

Package Sidebar

Install

npm i smtp-connection-as-promised

Weekly Downloads

56

Version

5.0.2

License

MIT

Unpacked Size

32.2 kB

Total Files

10

Last publish

Collaborators

  • dex4er