Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- const getInbox = () => {
- return new Promise((resolve, reject) => {
- imaps.connect(config).then(function (connection) {
- return connection.openBox('INBOX').then(function () {
- var searchCriteria = ['ALL'];
- var fetchOptions = {
- bodies: ['HEADER', 'TEXT', ''],
- };
- return connection.search(searchCriteria, fetchOptions).then(async function (messages) {
- let promises = messages.map(item=>{
- return new Promise((resolve,reject)=>{
- var all = _.find(item.parts, { "which": "" })
- var id = item.attributes.uid;
- var idHeader = "Imap-Id: " + id + "rn";
- simpleParser(idHeader + all.body, (err, mail) => {
- resolve(mail);
- });
- });
- });
- Promise.all(promises).then(data=>{
- let d = data.filter(obj=>obj.me).map(obj=>{
- return {
- from:obj.from.value.map(obj=>obj.address).join(','),
- to:obj.to.value.map(obj=>obj.address).join(','),
- subject:obj.subject,
- attachments:obj.attachments,
- message_id:obj.messageId,
- date:obj.date
- }
- });
- resolve(d);
- })
- });
- });
- });
- }); }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement