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:
isInstanceSkipped = Boolean
- This will identify if an existing event was skipped
isInstanceRunning = Boolean - This will identify if an existing event is already running
instances = Array - This will store instances(mail) that is currently being processed
Use
Install
npm install simple-node-imap-async
JavaScript Code:
const SimpleImapAsync = require("simple-node-imap-async");
const simpleImapAsync = new SimpleImapAsync({
username: "imap-username",
password: "imap-password",
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