From e47cc153c6ab3ecfae717b81e5c278ae239fc47c Mon Sep 17 00:00:00 2001 From: Tom Lunar Date: Fri, 31 Jul 2015 02:08:06 +0200 Subject: [PATCH 1/4] Group 'node-imap' configuration into its own configuration object --- index.js | 10 +--------- readme.md | 14 ++++++++------ test.js | 14 ++++++++------ 3 files changed, 17 insertions(+), 21 deletions(-) diff --git a/index.js b/index.js index 56a12cb..515af46 100644 --- a/index.js +++ b/index.js @@ -24,16 +24,8 @@ function MailListener(options) { this.attachmentOptions = options.attachmentOptions || {}; this.attachments = options.attachments || false; this.attachmentOptions.directory = (this.attachmentOptions.directory ? this.attachmentOptions.directory : ''); - this.imap = new Imap({ - xoauth2: options.xoauth2, - user: options.username, - password: options.password, - host: options.host, - port: options.port, - tls: options.tls, - tlsOptions: options.tlsOptions || {} - }); + this.imap = new Imap(options.imap); this.imap.once('ready', imapReady.bind(this)); this.imap.once('close', imapClose.bind(this)); this.imap.on('error', imapError.bind(this)); diff --git a/readme.md b/readme.md index 95a586d..f949461 100644 --- a/readme.md +++ b/readme.md @@ -21,12 +21,14 @@ JavaScript Code: var MailListener = require("mail-listener2"); var mailListener = new MailListener({ - username: "imap-username", - password: "imap-password", - host: "imap-host", - port: 993, // imap port - tls: true, - tlsOptions: { rejectUnauthorized: false }, + imap: { + username: "imap-username", + password: "imap-password", + host: "imap-host", + port: 993, // imap port + tls: true, + 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 diff --git a/test.js b/test.js index c22f3b5..f7f63ff 100644 --- a/test.js +++ b/test.js @@ -1,12 +1,14 @@ var MailListener = require("./"); var mailListener = new MailListener({ - username: "xxxx", - password: "xxx", - host: "imap.gmail.com", - port: 993, - tls: true, - tlsOptions: { rejectUnauthorized: false }, + imap: { + username: "xxxx", + password: "xxx", + host: "imap.gmail.com", + port: 993, + tls: true, + tlsOptions: { rejectUnauthorized: false } + }, mailbox: "INBOX", markSeen: true, fetchUnreadOnStart: true, From f098cc46aa6cec1a01ad54b782c00a66f7ab0082 Mon Sep 17 00:00:00 2001 From: Tom Lunar Date: Fri, 31 Jul 2015 02:22:10 +0200 Subject: [PATCH 2/4] Enable the use of the old configuration structure for backward compatibility reasons --- index.js | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/index.js b/index.js index 515af46..866ee90 100644 --- a/index.js +++ b/index.js @@ -25,6 +25,18 @@ function MailListener(options) { this.attachments = options.attachments || false; this.attachmentOptions.directory = (this.attachmentOptions.directory ? this.attachmentOptions.directory : ''); + if (!options.imap) { + options.imap = { + xoauth2: options.xoauth2, + user: options.username, + password: options.password, + host: options.host, + port: options.port, + tls: options.tls, + tlsOptions: options.tlsOptions || {} + }; + } + this.imap = new Imap(options.imap); this.imap.once('ready', imapReady.bind(this)); this.imap.once('close', imapClose.bind(this)); From e950dfd4cf55beda18b5f5d5f8f7960117280766 Mon Sep 17 00:00:00 2001 From: Tom Lunar Date: Fri, 31 Jul 2015 02:27:05 +0200 Subject: [PATCH 3/4] Add a text in the readme suggesting to refer to the 'node-imap' documentation for imap configuration --- readme.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/readme.md b/readme.md index f949461..2c17970 100644 --- a/readme.md +++ b/readme.md @@ -21,7 +21,7 @@ JavaScript Code: var MailListener = require("mail-listener2"); var mailListener = new MailListener({ - imap: { + imap: { // please refer to the node-imap documentation for more details on configuration username: "imap-username", password: "imap-password", host: "imap-host", From 620387667eac0984d6875f2b97c65c4fe61b400e Mon Sep 17 00:00:00 2001 From: Tom Lunar Date: Fri, 31 Jul 2015 03:30:24 +0200 Subject: [PATCH 4/4] Fix 'node-mail' username in test.js and readme.md ('user' is expected, not 'username') --- readme.md | 2 +- test.js | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/readme.md b/readme.md index 2c17970..712d0c6 100644 --- a/readme.md +++ b/readme.md @@ -22,7 +22,7 @@ var MailListener = require("mail-listener2"); var mailListener = new MailListener({ imap: { // please refer to the node-imap documentation for more details on configuration - username: "imap-username", + user: "imap-username", password: "imap-password", host: "imap-host", port: 993, // imap port diff --git a/test.js b/test.js index f7f63ff..10e564d 100644 --- a/test.js +++ b/test.js @@ -2,7 +2,7 @@ var MailListener = require("./"); var mailListener = new MailListener({ imap: { - username: "xxxx", + user: "xxxx", password: "xxx", host: "imap.gmail.com", port: 993,