Built motion from commit (unavailable).|2.3.2
[motion2.git] / server / services / email / lib / email.js
index 17c722a..b5c9ea5 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0xbd10=['email','bind','handleImapEmail','end','handleImapEnd','error','handleImapError','isNil','disabled','messages','New\x20email\x20from\x20%s\x20%s\x20%s\x20to\x20%s','firstName','from','Mail\x20accepted\x20from\x20routing','catch','Mail\x20not\x20accepted\x20from\x20routing\x20%s','lastSync','sendMail','send','verifySmtp','Smtp','then','verified','verify','exports','lodash','moment','bluebird','ioredis','../../../config/environment','../../../config/logger','redis','defaults','localhost','socket.io-emitter','./smtp','info','start\x20email\x20channel','mailAccounts','imapAccounts','smtp','prototype','emit','name','key','active','Imap','status','messageStatus','total','stringify','md5','refresh','hasOwnProperty'];(function(_0x28c91d,_0x3e761e){var _0x1d31aa=function(_0x5ea2c0){while(--_0x5ea2c0){_0x28c91d['push'](_0x28c91d['shift']());}};_0x1d31aa(++_0x3e761e);}(_0xbd10,0x85));var _0x0bd1=function(_0x404364,_0x40ca63){_0x404364=_0x404364-0x0;var _0x146fe3=_0xbd10[_0x404364];return _0x146fe3;};'use strict';var _=require(_0x0bd1('0x0'));var moment=require(_0x0bd1('0x1'));var BPromise=require(_0x0bd1('0x2'));var md5=require('md5');var Redis=require(_0x0bd1('0x3'));var config=require(_0x0bd1('0x4'));var logger=require(_0x0bd1('0x5'))('email');config[_0x0bd1('0x6')]=_[_0x0bd1('0x7')](config[_0x0bd1('0x6')],{'host':_0x0bd1('0x8'),'port':0x18eb});var io=require(_0x0bd1('0x9'))(new Redis(config[_0x0bd1('0x6')]));var EmailImap=require('./imap');var EmailSmtp=require(_0x0bd1('0xa'));var mailAccount=require('../rpc/mailAccount');var md5Accounts={};function EmailChannel(_0x639350){logger[_0x0bd1('0xb')](_0x0bd1('0xc'));this[_0x0bd1('0xd')]=_0x639350['mailAccounts'];this[_0x0bd1('0xe')]={};this[_0x0bd1('0xf')]=new EmailSmtp();}EmailChannel[_0x0bd1('0x10')][_0x0bd1('0x11')]=function(_0x154b4f){var _0x216523=this['mailAccounts'][_0x154b4f];var _0x159b15={'id':_0x216523['id'],'name':_0x216523[_0x0bd1('0x12')],'key':_0x216523[_0x0bd1('0x13')],'active':_0x216523[_0x0bd1('0x14')],'Imap':{'status':_0x216523[_0x0bd1('0x15')][_0x0bd1('0x16')],'messageStatus':_0x216523['Imap'][_0x0bd1('0x17')],'total':_0x216523[_0x0bd1('0x15')][_0x0bd1('0x18')]}};if(_['isNil'](md5Accounts[_0x154b4f])){md5Accounts[_0x154b4f]={};}var _0x51f988=md5(JSON[_0x0bd1('0x19')](_0x159b15));if(md5Accounts[_0x154b4f][_0x0bd1('0x1a')]!==_0x51f988){md5Accounts[_0x154b4f][_0x0bd1('0x1a')]=_0x51f988;io['emit']('mailAccount:update',_0x159b15);}};EmailChannel[_0x0bd1('0x10')][_0x0bd1('0x1b')]=function(_0xc96c4d){for(var _0x5ab359 in _0xc96c4d){if(_0xc96c4d[_0x0bd1('0x1c')](_0x5ab359)){if(_0xc96c4d[_0x5ab359][_0x0bd1('0x15')]&&_0xc96c4d[_0x5ab359][_0x0bd1('0x14')]){var _0x3042c6=_0xc96c4d[_0x5ab359]['Imap'];if(!this[_0x0bd1('0xe')][_0x0bd1('0x1c')](_0x3042c6['id'])){this['imapAccounts'][_0x3042c6['id']]=new EmailImap(_0x3042c6,_0xc96c4d[_0x5ab359][_0x0bd1('0x1d')]);this[_0x0bd1('0xe')][_0x3042c6['id']]['on']('box',this['handleImapBox'][_0x0bd1('0x1e')](this,_0x5ab359));this[_0x0bd1('0xe')][_0x3042c6['id']]['on'](_0x0bd1('0x1d'),this[_0x0bd1('0x1f')][_0x0bd1('0x1e')](this,_0x5ab359));this[_0x0bd1('0xe')][_0x3042c6['id']]['on'](_0x0bd1('0x20'),this[_0x0bd1('0x21')]['bind'](this,_0x5ab359));this[_0x0bd1('0xe')][_0x3042c6['id']]['on'](_0x0bd1('0x22'),this[_0x0bd1('0x23')][_0x0bd1('0x1e')](this,_0x5ab359));}}else{if(_[_0x0bd1('0x24')](this['mailAccounts'][_0x5ab359][_0x0bd1('0x15')])){this['mailAccounts'][_0x5ab359]['Imap']={};}this[_0x0bd1('0xd')][_0x5ab359][_0x0bd1('0x15')][_0x0bd1('0x16')]=_0x0bd1('0x25');this[_0x0bd1('0xd')][_0x5ab359][_0x0bd1('0x15')][_0x0bd1('0x17')]='';this[_0x0bd1('0x11')](_0x5ab359);}}}};EmailChannel[_0x0bd1('0x10')]['handleImapBox']=function(_0x5cb236,_0x3250f6){if(this['mailAccounts'][_0x5cb236]){this[_0x0bd1('0xd')][_0x5cb236][_0x0bd1('0x15')]['status']='connected';this['mailAccounts'][_0x5cb236]['Imap']['messageStatus']=_0x3250f6[_0x0bd1('0x12')];if(_0x3250f6[_0x0bd1('0x26')]){this[_0x0bd1('0xd')][_0x5cb236]['Imap'][_0x0bd1('0x18')]=_0x3250f6[_0x0bd1('0x26')]['total'];}return this['emit'](_0x5cb236);}};EmailChannel[_0x0bd1('0x10')]['handleImapEmail']=function(_0x5366c4,_0x47980f){logger[_0x0bd1('0xb')](_0x0bd1('0x27'),_0x47980f[_0x0bd1('0x28')],_0x47980f['lastName'],_0x47980f[_0x0bd1('0x29')],_0x5366c4);if(this[_0x0bd1('0xd')][_0x5366c4]){return mailAccount['notify'](_0x5366c4,_0x47980f)['then'](function(_0x28877b){if(_0x28877b){logger['info'](_0x0bd1('0x2a'));}})[_0x0bd1('0x2b')](function(_0x5dbab4){logger[_0x0bd1('0x22')](_0x0bd1('0x2c'),JSON[_0x0bd1('0x19')](_0x5dbab4));});}};EmailChannel['prototype'][_0x0bd1('0x21')]=function(_0x4e79f4){if(this[_0x0bd1('0xd')][_0x4e79f4]&&this[_0x0bd1('0xd')][_0x4e79f4][_0x0bd1('0x15')]){if(this[_0x0bd1('0xe')][this['mailAccounts'][_0x4e79f4][_0x0bd1('0x15')]['id']]){delete this[_0x0bd1('0xe')][this[_0x0bd1('0xd')][_0x4e79f4][_0x0bd1('0x15')]['id']];}this[_0x0bd1('0xd')][_0x4e79f4][_0x0bd1('0x15')][_0x0bd1('0x2d')]=moment();this['emit'](_0x4e79f4);}};EmailChannel[_0x0bd1('0x10')][_0x0bd1('0x23')]=function(_0x488310,_0x224159){if(this[_0x0bd1('0xd')][_0x488310]){this[_0x0bd1('0xd')][_0x488310][_0x0bd1('0x15')][_0x0bd1('0x16')]=_0x0bd1('0x22');this[_0x0bd1('0xd')][_0x488310][_0x0bd1('0x15')][_0x0bd1('0x17')]=_0x224159;return this[_0x0bd1('0x11')](_0x488310);}};EmailChannel[_0x0bd1('0x10')][_0x0bd1('0x2e')]=function(_0x41ee78,_0x217c77){return this[_0x0bd1('0xf')][_0x0bd1('0x2f')](_0x41ee78,_0x217c77);};EmailChannel[_0x0bd1('0x10')][_0x0bd1('0x30')]=function(_0x54e3aa){var _0x5246fd=this;if(this[_0x0bd1('0xd')][_0x54e3aa['id']]){if(_[_0x0bd1('0x24')](this[_0x0bd1('0xd')][_0x54e3aa['id']][_0x0bd1('0x31')])){this[_0x0bd1('0xd')][_0x54e3aa['id']][_0x0bd1('0x31')]={};}this['mailAccounts'][_0x54e3aa['id']]['Smtp'][_0x0bd1('0x2d')]=moment();return new BPromise(function(_0x469905,_0x22c0b2){return _0x5246fd[_0x0bd1('0xf')]['verify'](_0x54e3aa)[_0x0bd1('0x32')](function(_0x5581da){_0x5246fd[_0x0bd1('0xd')][_0x54e3aa['id']]['Smtp'][_0x0bd1('0x16')]=_0x0bd1('0x33');_0x5246fd[_0x0bd1('0xd')][_0x54e3aa['id']][_0x0bd1('0x31')]['messageStatus']='';_0x5246fd[_0x0bd1('0x11')](_0x54e3aa['id']);_0x469905(_0x5581da);})[_0x0bd1('0x2b')](function(_0x3ac038){_0x5246fd['mailAccounts'][_0x54e3aa['id']][_0x0bd1('0x31')][_0x0bd1('0x16')]=_0x0bd1('0x22');_0x5246fd[_0x0bd1('0xd')][_0x54e3aa['id']][_0x0bd1('0x31')][_0x0bd1('0x17')]=_0x3ac038;_0x5246fd[_0x0bd1('0x11')](_0x54e3aa['id']);_0x22c0b2(_0x3ac038);});});}return this[_0x0bd1('0xf')][_0x0bd1('0x34')](_0x54e3aa);};module[_0x0bd1('0x35')]=EmailChannel;
\ No newline at end of file
+var _0x27a0=['bluebird','md5','ioredis','../../../config/environment','redis','localhost','socket.io-emitter','./imap','./smtp','info','start\x20email\x20channel','mailAccounts','imapAccounts','smtp','emit','name','key','active','Imap','status','total','isNil','stringify','prototype','email','handleImapBox','end','handleImapEnd','bind','handleImapError','disabled','messages','New\x20email\x20from\x20%s\x20%s\x20%s\x20to\x20%s','firstName','lastName','from','then','catch','error','Mail\x20not\x20accepted\x20from\x20routing\x20%s','lastSync','messageStatus','verifySmtp','Smtp','verify','verified','exports','moment'];(function(_0x14bf66,_0x3e1066){var _0xaf4bf7=function(_0x3d9c3f){while(--_0x3d9c3f){_0x14bf66['push'](_0x14bf66['shift']());}};_0xaf4bf7(++_0x3e1066);}(_0x27a0,0xbf));var _0x027a=function(_0x5f5bae,_0x167fb6){_0x5f5bae=_0x5f5bae-0x0;var _0x3422e8=_0x27a0[_0x5f5bae];return _0x3422e8;};'use strict';var _=require('lodash');var moment=require(_0x027a('0x0'));var BPromise=require(_0x027a('0x1'));var md5=require(_0x027a('0x2'));var Redis=require(_0x027a('0x3'));var config=require(_0x027a('0x4'));var logger=require('../../../config/logger')('email');config['redis']=_['defaults'](config[_0x027a('0x5')],{'host':_0x027a('0x6'),'port':0x18eb});var io=require(_0x027a('0x7'))(new Redis(config[_0x027a('0x5')]));var EmailImap=require(_0x027a('0x8'));var EmailSmtp=require(_0x027a('0x9'));var mailAccount=require('../rpc/mailAccount');var md5Accounts={};function EmailChannel(_0x3d1429){logger[_0x027a('0xa')](_0x027a('0xb'));this['mailAccounts']=_0x3d1429[_0x027a('0xc')];this[_0x027a('0xd')]={};this[_0x027a('0xe')]=new EmailSmtp();}EmailChannel['prototype'][_0x027a('0xf')]=function(_0xe5df59){var _0x7daf8a=this[_0x027a('0xc')][_0xe5df59];var _0x172eb4={'id':_0x7daf8a['id'],'name':_0x7daf8a[_0x027a('0x10')],'key':_0x7daf8a[_0x027a('0x11')],'active':_0x7daf8a[_0x027a('0x12')],'Imap':{'status':_0x7daf8a[_0x027a('0x13')][_0x027a('0x14')],'messageStatus':_0x7daf8a[_0x027a('0x13')]['messageStatus'],'total':_0x7daf8a[_0x027a('0x13')][_0x027a('0x15')]}};if(_[_0x027a('0x16')](md5Accounts[_0xe5df59])){md5Accounts[_0xe5df59]={};}var _0x21da53=md5(JSON[_0x027a('0x17')](_0x172eb4));if(md5Accounts[_0xe5df59]['md5']!==_0x21da53){md5Accounts[_0xe5df59]['md5']=_0x21da53;io[_0x027a('0xf')]('mailAccount:update',_0x172eb4);}};EmailChannel[_0x027a('0x18')]['refresh']=function(_0x432007){for(var _0x5a1224 in _0x432007){if(_0x432007['hasOwnProperty'](_0x5a1224)){if(_0x432007[_0x5a1224]['Imap']&&_0x432007[_0x5a1224][_0x027a('0x12')]){var _0x2f04e9=_0x432007[_0x5a1224][_0x027a('0x13')];if(!this[_0x027a('0xd')]['hasOwnProperty'](_0x2f04e9['id'])){this[_0x027a('0xd')][_0x2f04e9['id']]=new EmailImap(_0x2f04e9,_0x432007[_0x5a1224][_0x027a('0x19')]);this['imapAccounts'][_0x2f04e9['id']]['on']('box',this[_0x027a('0x1a')]['bind'](this,_0x5a1224));this[_0x027a('0xd')][_0x2f04e9['id']]['on']('email',this['handleImapEmail']['bind'](this,_0x5a1224));this['imapAccounts'][_0x2f04e9['id']]['on'](_0x027a('0x1b'),this[_0x027a('0x1c')][_0x027a('0x1d')](this,_0x5a1224));this[_0x027a('0xd')][_0x2f04e9['id']]['on']('error',this[_0x027a('0x1e')][_0x027a('0x1d')](this,_0x5a1224));}}else{if(_[_0x027a('0x16')](this[_0x027a('0xc')][_0x5a1224][_0x027a('0x13')])){this[_0x027a('0xc')][_0x5a1224]['Imap']={};}this[_0x027a('0xc')][_0x5a1224]['Imap'][_0x027a('0x14')]=_0x027a('0x1f');this[_0x027a('0xc')][_0x5a1224][_0x027a('0x13')]['messageStatus']='';this['emit'](_0x5a1224);}}}};EmailChannel[_0x027a('0x18')][_0x027a('0x1a')]=function(_0x338141,_0x129d5f){if(this['mailAccounts'][_0x338141]){this[_0x027a('0xc')][_0x338141]['Imap'][_0x027a('0x14')]='connected';this[_0x027a('0xc')][_0x338141]['Imap']['messageStatus']=_0x129d5f[_0x027a('0x10')];if(_0x129d5f['messages']){this['mailAccounts'][_0x338141][_0x027a('0x13')]['total']=_0x129d5f[_0x027a('0x20')]['total'];}return this[_0x027a('0xf')](_0x338141);}};EmailChannel[_0x027a('0x18')]['handleImapEmail']=function(_0xe4ea7d,_0x4b4ac4){logger[_0x027a('0xa')](_0x027a('0x21'),_0x4b4ac4[_0x027a('0x22')],_0x4b4ac4[_0x027a('0x23')],_0x4b4ac4[_0x027a('0x24')],_0xe4ea7d);if(this[_0x027a('0xc')][_0xe4ea7d]){return mailAccount['notify'](_0xe4ea7d,_0x4b4ac4)[_0x027a('0x25')](function(_0x592350){if(_0x592350){logger[_0x027a('0xa')]('Mail\x20accepted\x20from\x20routing');}})[_0x027a('0x26')](function(_0x40c4fe){logger[_0x027a('0x27')](_0x027a('0x28'),JSON[_0x027a('0x17')](_0x40c4fe));});}};EmailChannel['prototype'][_0x027a('0x1c')]=function(_0x26e716){if(this[_0x027a('0xc')][_0x26e716]&&this[_0x027a('0xc')][_0x26e716][_0x027a('0x13')]){if(this[_0x027a('0xd')][this[_0x027a('0xc')][_0x26e716][_0x027a('0x13')]['id']]){delete this[_0x027a('0xd')][this[_0x027a('0xc')][_0x26e716][_0x027a('0x13')]['id']];}this['mailAccounts'][_0x26e716][_0x027a('0x13')][_0x027a('0x29')]=moment();this[_0x027a('0xf')](_0x26e716);}};EmailChannel[_0x027a('0x18')][_0x027a('0x1e')]=function(_0x163dce,_0x2378b9){if(this['mailAccounts'][_0x163dce]){this[_0x027a('0xc')][_0x163dce][_0x027a('0x13')][_0x027a('0x14')]='error';this[_0x027a('0xc')][_0x163dce]['Imap'][_0x027a('0x2a')]=_0x2378b9;return this[_0x027a('0xf')](_0x163dce);}};EmailChannel[_0x027a('0x18')]['sendMail']=function(_0x4f5140,_0x32a44e){return this[_0x027a('0xe')]['send'](_0x4f5140,_0x32a44e);};EmailChannel[_0x027a('0x18')][_0x027a('0x2b')]=function(_0x3094f8){var _0x1b173e=this;if(this[_0x027a('0xc')][_0x3094f8['id']]){if(_[_0x027a('0x16')](this[_0x027a('0xc')][_0x3094f8['id']][_0x027a('0x2c')])){this[_0x027a('0xc')][_0x3094f8['id']][_0x027a('0x2c')]={};}this[_0x027a('0xc')][_0x3094f8['id']][_0x027a('0x2c')][_0x027a('0x29')]=moment();return new BPromise(function(_0x163783,_0x466c80){return _0x1b173e[_0x027a('0xe')][_0x027a('0x2d')](_0x3094f8)['then'](function(_0x275692){_0x1b173e[_0x027a('0xc')][_0x3094f8['id']][_0x027a('0x2c')][_0x027a('0x14')]=_0x027a('0x2e');_0x1b173e[_0x027a('0xc')][_0x3094f8['id']]['Smtp'][_0x027a('0x2a')]='';_0x1b173e[_0x027a('0xf')](_0x3094f8['id']);_0x163783(_0x275692);})['catch'](function(_0x45eedc){_0x1b173e['mailAccounts'][_0x3094f8['id']]['Smtp'][_0x027a('0x14')]='error';_0x1b173e[_0x027a('0xc')][_0x3094f8['id']][_0x027a('0x2c')][_0x027a('0x2a')]=_0x45eedc;_0x1b173e[_0x027a('0xf')](_0x3094f8['id']);_0x466c80(_0x45eedc);});});}return this[_0x027a('0xe')]['verify'](_0x3094f8);};module[_0x027a('0x2f')]=EmailChannel;
\ No newline at end of file