Built motion from commit f74363e9.|2.6.34
[motion2.git] / server / services / email / lib / email.js
index 774d65e..0e76e3b 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0xe63c=['isNil','disabled','messageStatus','connected','messages','info','New\x20email\x20from\x20%s\x20%s\x20%s\x20to\x20%s','lastName','from','notify','then','Mail\x20accepted\x20from\x20routing','catch','Mail\x20not\x20accepted\x20from\x20routing\x20%s','handleImapError','sendMail','send','verifySmtp','Smtp','lastSync','verify','verified','exports','moment','bluebird','md5','ioredis','../../../config/environment','../../../config/logger','email','redis','socket.io-emitter','./imap','./smtp','../rpc/mailAccount','start\x20email\x20channel','mailAccounts','imapAccounts','smtp','prototype','emit','name','active','Imap','status','total','stringify','refresh','hasOwnProperty','provider','custom','service','box','handleImapBox','bind','handleImapEmail','error'];(function(_0x1e1191,_0x62c350){var _0x4dcde3=function(_0x8ac5d6){while(--_0x8ac5d6){_0x1e1191['push'](_0x1e1191['shift']());}};_0x4dcde3(++_0x62c350);}(_0xe63c,0x134));var _0xce63=function(_0x102f0a,_0x13474d){_0x102f0a=_0x102f0a-0x0;var _0x35e503=_0xe63c[_0x102f0a];return _0x35e503;};'use strict';var _=require('lodash');var moment=require(_0xce63('0x0'));var BPromise=require(_0xce63('0x1'));var md5=require(_0xce63('0x2'));var Redis=require(_0xce63('0x3'));var config=require(_0xce63('0x4'));var logger=require(_0xce63('0x5'))(_0xce63('0x6'));config[_0xce63('0x7')]=_['defaults'](config['redis'],{'host':'localhost','port':0x18eb});var io=require(_0xce63('0x8'))(new Redis(config['redis']));var EmailImap=require(_0xce63('0x9'));var EmailSmtp=require(_0xce63('0xa'));var mailAccount=require(_0xce63('0xb'));var md5Accounts={};function EmailChannel(_0x29f632){logger['info'](_0xce63('0xc'));this['mailAccounts']=_0x29f632[_0xce63('0xd')];this[_0xce63('0xe')]={};this[_0xce63('0xf')]=new EmailSmtp();}EmailChannel[_0xce63('0x10')][_0xce63('0x11')]=function(_0x446efa){var _0xd15768=this['mailAccounts'][_0x446efa];var _0x57874c={'id':_0xd15768['id'],'name':_0xd15768[_0xce63('0x12')],'key':_0xd15768['key'],'active':_0xd15768[_0xce63('0x13')],'Imap':{'status':_0xd15768[_0xce63('0x14')][_0xce63('0x15')],'messageStatus':_0xd15768[_0xce63('0x14')]['messageStatus'],'total':_0xd15768[_0xce63('0x14')][_0xce63('0x16')]}};if(_['isNil'](md5Accounts[_0x446efa])){md5Accounts[_0x446efa]={};}var _0x5194e2=md5(JSON[_0xce63('0x17')](_0x57874c));if(md5Accounts[_0x446efa]['md5']!==_0x5194e2){md5Accounts[_0x446efa][_0xce63('0x2')]=_0x5194e2;io[_0xce63('0x11')]('mailAccount:update',_0x57874c);}};EmailChannel['prototype'][_0xce63('0x18')]=function(_0x1f610c){for(var _0x48389e in _0x1f610c){if(_0x1f610c[_0xce63('0x19')](_0x48389e)){if(_0x1f610c[_0x48389e][_0xce63('0x14')]&&_0x1f610c[_0x48389e][_0xce63('0x13')]){var _0x231cb2=_0x1f610c[_0x48389e][_0xce63('0x14')];if(!_0x231cb2['service']&&_0x1f610c[_0x48389e][_0xce63('0x1a')]!==_0xce63('0x1b'))_0x231cb2[_0xce63('0x1c')]=_0x1f610c[_0x48389e][_0xce63('0x1a')];if(!this[_0xce63('0xe')]['hasOwnProperty'](_0x231cb2['id'])){this[_0xce63('0xe')][_0x231cb2['id']]=new EmailImap(_0x231cb2,_0x1f610c[_0x48389e][_0xce63('0x6')]);this[_0xce63('0xe')][_0x231cb2['id']]['on'](_0xce63('0x1d'),this[_0xce63('0x1e')][_0xce63('0x1f')](this,_0x48389e));this[_0xce63('0xe')][_0x231cb2['id']]['on'](_0xce63('0x6'),this[_0xce63('0x20')][_0xce63('0x1f')](this,_0x48389e));this[_0xce63('0xe')][_0x231cb2['id']]['on']('end',this['handleImapEnd'][_0xce63('0x1f')](this,_0x48389e));this[_0xce63('0xe')][_0x231cb2['id']]['on'](_0xce63('0x21'),this['handleImapError'][_0xce63('0x1f')](this,_0x48389e));}}else{if(_[_0xce63('0x22')](this['mailAccounts'][_0x48389e][_0xce63('0x14')])){this['mailAccounts'][_0x48389e]['Imap']={};}this[_0xce63('0xd')][_0x48389e]['Imap']['status']=_0xce63('0x23');this['mailAccounts'][_0x48389e][_0xce63('0x14')][_0xce63('0x24')]='';this[_0xce63('0x11')](_0x48389e);}}}};EmailChannel[_0xce63('0x10')][_0xce63('0x1e')]=function(_0x5a1353,_0x196047){if(this['mailAccounts'][_0x5a1353]){this[_0xce63('0xd')][_0x5a1353][_0xce63('0x14')][_0xce63('0x15')]=_0xce63('0x25');this[_0xce63('0xd')][_0x5a1353][_0xce63('0x14')]['messageStatus']=_0x196047[_0xce63('0x12')];if(_0x196047[_0xce63('0x26')]){this['mailAccounts'][_0x5a1353][_0xce63('0x14')][_0xce63('0x16')]=_0x196047[_0xce63('0x26')][_0xce63('0x16')];}return this[_0xce63('0x11')](_0x5a1353);}};EmailChannel[_0xce63('0x10')][_0xce63('0x20')]=function(_0x251666,_0x10c495){logger[_0xce63('0x27')](_0xce63('0x28'),_0x10c495['firstName'],_0x10c495[_0xce63('0x29')],_0x10c495[_0xce63('0x2a')],_0x251666);if(this[_0xce63('0xd')][_0x251666]){return mailAccount[_0xce63('0x2b')](_0x251666,_0x10c495)[_0xce63('0x2c')](function(_0x17dfa4){if(_0x17dfa4){logger['info'](_0xce63('0x2d'));}})[_0xce63('0x2e')](function(_0x4b9e8e){logger[_0xce63('0x21')](_0xce63('0x2f'),JSON[_0xce63('0x17')](_0x4b9e8e));});}};EmailChannel[_0xce63('0x10')]['handleImapEnd']=function(_0x4676f3){if(this['mailAccounts'][_0x4676f3]&&this[_0xce63('0xd')][_0x4676f3][_0xce63('0x14')]){if(this['imapAccounts'][this[_0xce63('0xd')][_0x4676f3][_0xce63('0x14')]['id']]){delete this['imapAccounts'][this[_0xce63('0xd')][_0x4676f3][_0xce63('0x14')]['id']];}this[_0xce63('0xd')][_0x4676f3][_0xce63('0x14')]['lastSync']=moment();this[_0xce63('0x11')](_0x4676f3);}};EmailChannel[_0xce63('0x10')][_0xce63('0x30')]=function(_0x1b691b,_0x2e03c6){if(this[_0xce63('0xd')][_0x1b691b]){this[_0xce63('0xd')][_0x1b691b][_0xce63('0x14')][_0xce63('0x15')]=_0xce63('0x21');this[_0xce63('0xd')][_0x1b691b][_0xce63('0x14')][_0xce63('0x24')]=_0x2e03c6;return this[_0xce63('0x11')](_0x1b691b);}};EmailChannel[_0xce63('0x10')][_0xce63('0x31')]=function(_0x873d3,_0x5b1f8b){return this[_0xce63('0xf')][_0xce63('0x32')](_0x873d3,_0x5b1f8b);};EmailChannel[_0xce63('0x10')][_0xce63('0x33')]=function(_0x4618de){var _0x2d431d=this;if(this[_0xce63('0xd')][_0x4618de['id']]){if(_['isNil'](this[_0xce63('0xd')][_0x4618de['id']][_0xce63('0x34')])){this['mailAccounts'][_0x4618de['id']][_0xce63('0x34')]={};}this[_0xce63('0xd')][_0x4618de['id']]['Smtp'][_0xce63('0x35')]=moment();return new BPromise(function(_0x5b1551,_0x533b3c){return _0x2d431d[_0xce63('0xf')][_0xce63('0x36')](_0x4618de)[_0xce63('0x2c')](function(_0x1d6af1){_0x2d431d[_0xce63('0xd')][_0x4618de['id']][_0xce63('0x34')][_0xce63('0x15')]=_0xce63('0x37');_0x2d431d[_0xce63('0xd')][_0x4618de['id']][_0xce63('0x34')]['messageStatus']='';_0x2d431d[_0xce63('0x11')](_0x4618de['id']);_0x5b1551(_0x1d6af1);})[_0xce63('0x2e')](function(_0x36a8a2){_0x2d431d['mailAccounts'][_0x4618de['id']]['Smtp'][_0xce63('0x15')]=_0xce63('0x21');_0x2d431d['mailAccounts'][_0x4618de['id']][_0xce63('0x34')][_0xce63('0x24')]=_0x36a8a2;_0x2d431d[_0xce63('0x11')](_0x4618de['id']);_0x533b3c(_0x36a8a2);});});}return this[_0xce63('0xf')][_0xce63('0x36')](_0x4618de);};module[_0xce63('0x38')]=EmailChannel;
\ No newline at end of file
+var _0x551c=['name','Imap','status','messageStatus','total','stringify','mailAccount:update','refresh','hasOwnProperty','active','service','provider','custom','email','box','bind','handleImapEmail','end','handleImapEnd','connected','messages','New\x20email\x20from\x20%s\x20%s\x20%s\x20to\x20%s','firstName','lastName','from','notify','Mail\x20accepted\x20from\x20routing','catch','error','Mail\x20not\x20accepted\x20from\x20routing\x20%s','lastSync','handleImapError','sendMail','send','verifySmtp','isNil','Smtp','verify','exports','bluebird','md5','ioredis','../../../config/environment','../../../config/logger','redis','socket.io-emitter','./imap','info','start\x20email\x20channel','mailAccounts','imapAccounts','smtp','prototype','emit'];(function(_0x1702b8,_0x28c7da){var _0x50028a=function(_0x4135b1){while(--_0x4135b1){_0x1702b8['push'](_0x1702b8['shift']());}};_0x50028a(++_0x28c7da);}(_0x551c,0x16b));var _0xc551=function(_0x19dfe0,_0x472631){_0x19dfe0=_0x19dfe0-0x0;var _0x2e61c=_0x551c[_0x19dfe0];return _0x2e61c;};'use strict';var _=require('lodash');var moment=require('moment');var BPromise=require(_0xc551('0x0'));var md5=require(_0xc551('0x1'));var Redis=require(_0xc551('0x2'));var config=require(_0xc551('0x3'));var logger=require(_0xc551('0x4'))('email');config[_0xc551('0x5')]=_['defaults'](config[_0xc551('0x5')],{'host':'localhost','port':0x18eb});var io=require(_0xc551('0x6'))(new Redis(config['redis']));var EmailImap=require(_0xc551('0x7'));var EmailSmtp=require('./smtp');var mailAccount=require('../rpc/mailAccount');var md5Accounts={};function EmailChannel(_0xbadc2f){logger[_0xc551('0x8')](_0xc551('0x9'));this['mailAccounts']=_0xbadc2f[_0xc551('0xa')];this[_0xc551('0xb')]={};this[_0xc551('0xc')]=new EmailSmtp();}EmailChannel[_0xc551('0xd')][_0xc551('0xe')]=function(_0x2eca43){var _0x1017e9=this[_0xc551('0xa')][_0x2eca43];var _0x35ad13={'id':_0x1017e9['id'],'name':_0x1017e9[_0xc551('0xf')],'key':_0x1017e9['key'],'active':_0x1017e9['active'],'Imap':{'status':_0x1017e9[_0xc551('0x10')][_0xc551('0x11')],'messageStatus':_0x1017e9[_0xc551('0x10')][_0xc551('0x12')],'total':_0x1017e9['Imap'][_0xc551('0x13')]}};if(_['isNil'](md5Accounts[_0x2eca43])){md5Accounts[_0x2eca43]={};}var _0x3981a8=md5(JSON[_0xc551('0x14')](_0x35ad13));if(md5Accounts[_0x2eca43][_0xc551('0x1')]!==_0x3981a8){md5Accounts[_0x2eca43]['md5']=_0x3981a8;io[_0xc551('0xe')](_0xc551('0x15'),_0x35ad13);}};EmailChannel[_0xc551('0xd')][_0xc551('0x16')]=function(_0x1660f1){for(var _0x434adb in _0x1660f1){if(_0x1660f1[_0xc551('0x17')](_0x434adb)){if(_0x1660f1[_0x434adb][_0xc551('0x10')]&&_0x1660f1[_0x434adb][_0xc551('0x18')]){var _0x4b4d7c=_0x1660f1[_0x434adb][_0xc551('0x10')];if(!_0x4b4d7c[_0xc551('0x19')]&&_0x1660f1[_0x434adb][_0xc551('0x1a')]!==_0xc551('0x1b'))_0x4b4d7c['service']=_0x1660f1[_0x434adb][_0xc551('0x1a')];if(!this[_0xc551('0xb')]['hasOwnProperty'](_0x4b4d7c['id'])){this[_0xc551('0xb')][_0x4b4d7c['id']]=new EmailImap(_0x4b4d7c,_0x1660f1[_0x434adb][_0xc551('0x1c')]);this[_0xc551('0xb')][_0x4b4d7c['id']]['on'](_0xc551('0x1d'),this['handleImapBox'][_0xc551('0x1e')](this,_0x434adb));this['imapAccounts'][_0x4b4d7c['id']]['on'](_0xc551('0x1c'),this[_0xc551('0x1f')][_0xc551('0x1e')](this,_0x434adb));this['imapAccounts'][_0x4b4d7c['id']]['on'](_0xc551('0x20'),this[_0xc551('0x21')][_0xc551('0x1e')](this,_0x434adb));this[_0xc551('0xb')][_0x4b4d7c['id']]['on']('error',this['handleImapError'][_0xc551('0x1e')](this,_0x434adb));}}else{if(_['isNil'](this[_0xc551('0xa')][_0x434adb][_0xc551('0x10')])){this['mailAccounts'][_0x434adb][_0xc551('0x10')]={};}this[_0xc551('0xa')][_0x434adb][_0xc551('0x10')][_0xc551('0x11')]='disabled';this[_0xc551('0xa')][_0x434adb]['Imap']['messageStatus']='';this['emit'](_0x434adb);}}}};EmailChannel[_0xc551('0xd')]['handleImapBox']=function(_0x2d80a8,_0x3d3ab6){if(this[_0xc551('0xa')][_0x2d80a8]){this['mailAccounts'][_0x2d80a8][_0xc551('0x10')][_0xc551('0x11')]=_0xc551('0x22');this[_0xc551('0xa')][_0x2d80a8][_0xc551('0x10')]['messageStatus']=_0x3d3ab6['name'];if(_0x3d3ab6[_0xc551('0x23')]){this[_0xc551('0xa')][_0x2d80a8][_0xc551('0x10')][_0xc551('0x13')]=_0x3d3ab6[_0xc551('0x23')][_0xc551('0x13')];}return this[_0xc551('0xe')](_0x2d80a8);}};EmailChannel['prototype'][_0xc551('0x1f')]=function(_0x48d934,_0x5108b9){logger[_0xc551('0x8')](_0xc551('0x24'),_0x5108b9[_0xc551('0x25')],_0x5108b9[_0xc551('0x26')],_0x5108b9[_0xc551('0x27')],_0x48d934);if(this['mailAccounts'][_0x48d934]){return mailAccount[_0xc551('0x28')](_0x48d934,_0x5108b9)['then'](function(_0x39b6d5){if(_0x39b6d5){logger[_0xc551('0x8')](_0xc551('0x29'));}})[_0xc551('0x2a')](function(_0x1606b2){logger[_0xc551('0x2b')](_0xc551('0x2c'),JSON[_0xc551('0x14')](_0x1606b2));});}};EmailChannel['prototype']['handleImapEnd']=function(_0x27c08d){if(this['mailAccounts'][_0x27c08d]&&this['mailAccounts'][_0x27c08d][_0xc551('0x10')]){if(this[_0xc551('0xb')][this[_0xc551('0xa')][_0x27c08d][_0xc551('0x10')]['id']]){delete this['imapAccounts'][this[_0xc551('0xa')][_0x27c08d][_0xc551('0x10')]['id']];}this[_0xc551('0xa')][_0x27c08d][_0xc551('0x10')][_0xc551('0x2d')]=moment();this[_0xc551('0xe')](_0x27c08d);}};EmailChannel[_0xc551('0xd')][_0xc551('0x2e')]=function(_0x2455f0,_0x3d7234){if(this['mailAccounts'][_0x2455f0]){this[_0xc551('0xa')][_0x2455f0]['Imap'][_0xc551('0x11')]=_0xc551('0x2b');this[_0xc551('0xa')][_0x2455f0][_0xc551('0x10')][_0xc551('0x12')]=_0x3d7234;return this[_0xc551('0xe')](_0x2455f0);}};EmailChannel[_0xc551('0xd')][_0xc551('0x2f')]=function(_0x3c0e98,_0x47c7df){return this['smtp'][_0xc551('0x30')](_0x3c0e98,_0x47c7df);};EmailChannel[_0xc551('0xd')][_0xc551('0x31')]=function(_0x24a7ed){var _0xa61818=this;if(this[_0xc551('0xa')][_0x24a7ed['id']]){if(_[_0xc551('0x32')](this[_0xc551('0xa')][_0x24a7ed['id']][_0xc551('0x33')])){this[_0xc551('0xa')][_0x24a7ed['id']][_0xc551('0x33')]={};}this['mailAccounts'][_0x24a7ed['id']][_0xc551('0x33')]['lastSync']=moment();return new BPromise(function(_0x11e3f4,_0x1e4bbd){return _0xa61818[_0xc551('0xc')]['verify'](_0x24a7ed)['then'](function(_0x15ee01){_0xa61818[_0xc551('0xa')][_0x24a7ed['id']][_0xc551('0x33')][_0xc551('0x11')]='verified';_0xa61818[_0xc551('0xa')][_0x24a7ed['id']][_0xc551('0x33')][_0xc551('0x12')]='';_0xa61818[_0xc551('0xe')](_0x24a7ed['id']);_0x11e3f4(_0x15ee01);})[_0xc551('0x2a')](function(_0x5669cb){_0xa61818[_0xc551('0xa')][_0x24a7ed['id']][_0xc551('0x33')][_0xc551('0x11')]=_0xc551('0x2b');_0xa61818[_0xc551('0xa')][_0x24a7ed['id']][_0xc551('0x33')][_0xc551('0x12')]=_0x5669cb;_0xa61818[_0xc551('0xe')](_0x24a7ed['id']);_0x1e4bbd(_0x5669cb);});});}return this[_0xc551('0xc')][_0xc551('0x34')](_0x24a7ed);};module[_0xc551('0x35')]=EmailChannel;
\ No newline at end of file