Package Exports
- simple-node-imap-async
- simple-node-imap-async/index.js
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (simple-node-imap-async) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
Overview
Base package simple-node-imap
Version 1.0.0
Adding async/await when fetching of messages
Version 1.0.4
Adding fix to handle multiple emails being read at the same time.
Adding Boolean values to store new variables:
This will identify if an existing event was skipped
isInstanceSkipped = BooleanThis will identify if an existing event is already running
isInstanceRunning = BooleanThis will store instances(mail) that is currently being processed
instances = Array
Version 1.0.6
- Adding xoauth2. (less-secure-apps won't be supported with google anymore by the end of May 2022)
Use
Install
npm install simple-node-imap-async
JavaScript Code:
const SimpleImapAsync = require("simple-node-imap-async");
const simpleImapAsync = new SimpleImapAsync({
xoauth2: "xoauth2",
username: "imap-username", // Will be deprecated on May 30, 2022
password: "imap-password", // Will be deprecated on May 30, 2022
host: "imap-host",
port: 993, // imap port
tls: true,
connTimeout: 10000, // Default by node-imap
authTimeout: 5000, // Default by node-imap,
debug: console.log, // Or your custom function with only one incoming argument. Default: null
tlsOptions: { rejectUnauthorized: false },
mailbox: "INBOX", // mailbox to monitor
searchFilter: ["UNSEEN", "FLAGGED"], // the search filter being used after an IDLE notification has been retrieved
markSeen: true, // all fetched email willbe marked as seen and not fetched next time
fetchUnreadOnStart: true, // use it only if you want to get all unread email on lib start. Default is `false`,
mailParserOptions: {streamAttachments: true}, // options to be passed to mailParser lib.
attachments: true, // download attachments as they are encountered to the project directory
});
simpleImapAsync.start(); // start listening
simpleImapAsync.on("server:connected", () => {
console.log("imapConnected");
});
simpleImapAsync.on("server:disconnected", () => {
console.log("imapDisconnected");
});
simpleImapAsync.on("error", err => {
console.log(err);
});
simpleImapAsync.on("message", message => {
console.log(message);
});
// stop listening
simpleImapAsync.stop();
Attachments
Attachments are converted into base64 strings.
License
MIT