vpn.email.client
Version:
Vpn.Email client IMAP core
36 lines (35 loc) • 1.12 kB
JavaScript
;
const imap_1 = require("./imap");
const user = process.env;
const listenFolder = process.argv[2] === 'null' ? null : process.argv[2];
const saveFolder = process.argv[3] === 'null' ? null : process.argv[3];
let status = false;
let busy = false;
const sendStatus = (_status) => {
status = _status;
process.send(_status);
};
const imap = new imap_1.default(user, listenFolder, true, message => {
process.send(message);
}, sendStatus, null);
const sendMail = (buffer) => {
return imap.save(buffer, saveFolder, err => {
busy = false;
if (err) {
return sendStatus(false);
}
return sendStatus(true);
});
};
process.on('message', (cmd) => {
if (typeof cmd === 'string') {
if (cmd === 'busy') {
return imap.checkBusy();
}
return console.log(`imap process.on message ERROR unknow command!`, cmd);
}
if (!saveFolder || !saveFolder.length)
return console.log('========> imapSub ERROR, this have not saveFolder but looks try send mail!');
const data = new Buffer(cmd);
sendMail(data);
});