Built motion from commit 7e022ab.|2.0.18
[motion2.git] / server / services / email / lib / email.js
1 var _0x7b67=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x75\x74\x69\x6C","\x6B\x75\x65","\x6C\x6F\x64\x61\x73\x68","\x2E\x2F\x69\x6D\x61\x70","\x2E\x2F\x73\x6D\x74\x70","\x65\x6D\x61\x69\x6C","\x2E\x2E\x2F\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72","\x6C\x6F\x63\x61\x6C\x68\x6F\x73\x74","\x63\x72\x65\x61\x74\x65\x51\x75\x65\x75\x65","\x65\x6E\x7A\x6F","\x64\x61\x6E\x69\x65\x6C\x65","\x61\x62\x69","\x76\x61\x6C\x65\x72\x69\x6F","\x67\x69\x6F\x72\x67\x69\x6F","\x6D\x65\x6F","\x64\x69\x65\x67\x6F","\x62\x65\x70\x70\x65","\x73\x74\x61\x72\x74\x20\x65\x6D\x61\x69\x6C\x20\x63\x68\x61\x6E\x6E\x65\x6C","\x69\x6E\x66\x6F","\x6A\x6F\x62\x73","\x69\x6D\x61\x70","\x6C\x65\x6E\x67\x74\x68","\x6C\x6F\x61\x64\x20\x61\x63\x63\x6F\x75\x6E\x74","\x69\x64","\x62\x69\x6E\x64","\x68\x61\x6E\x64\x6C\x65\x49\x6D\x61\x70\x45\x6D\x61\x69\x6C","\x6F\x6E","\x73\x6D\x74\x70","\x70\x72\x6F\x74\x6F\x74\x79\x70\x65","\x6E\x65\x77\x20\x65\x6D\x61\x69\x6C\x20\x6F\x6E\x20\x61\x63\x63\x6F\x75\x6E\x74\x20\x25\x73\x20\x77\x69\x74\x68\x20\x73\x65\x71\x6E\x6F\x20\x25\x73","\x66\x6F\x72\x6D\x61\x74","\x63\x72\x65\x61\x74\x65","\x63\x6F\x6D\x70\x6C\x65\x74\x65","\x6A\x6F\x62\x20\x25\x73\x20\x63\x6F\x6D\x70\x6C\x65\x74\x65\x20\x66\x6F\x72\x20\x61\x63\x63\x6F\x75\x6E\x74\x20\x25\x73\x20\x77\x69\x74\x68\x20\x73\x65\x71\x6E\x6F\x20\x25\x73","\x66\x61\x69\x6C\x65\x64","\x6A\x6F\x62\x20\x25\x73\x20\x66\x61\x69\x6C\x65\x64\x20\x66\x6F\x72\x20\x61\x63\x63\x6F\x75\x6E\x74\x20\x25\x73\x20\x77\x69\x74\x68\x20\x73\x65\x71\x6E\x6F\x20\x25\x73","\x70\x72\x6F\x67\x72\x65\x73\x73","\x6A\x6F\x62\x20\x25\x73\x20\x70\x72\x6F\x67\x72\x65\x73\x73\x20\x61\x74\x20\x25\x73\x25\x20\x66\x6F\x72\x20\x61\x63\x63\x6F\x75\x6E\x74\x20\x25\x73\x20\x77\x69\x74\x68\x20\x73\x65\x71\x6E\x6F\x20\x25\x73\x2C\x20\x6E\x65\x78\x74\x20\x61\x70\x70\x20\x25\x73","\x6E\x65\x78\x74\x41\x70\x70","\x25\x73\x20\x65\x6D\x61\x69\x6C\x73\x20\x6D\x61\x6E\x61\x67\x65\x64\x20\x66\x6F\x72\x20\x61\x63\x63\x6F\x75\x6E\x74\x20\x25\x73\x20\x77\x69\x74\x68\x20\x73\x65\x71\x6E\x6F\x20\x25\x73","\x73\x61\x76\x65","\x6C\x6F\x67","\x72\x65\x74\x72\x79","\x61\x67\x65\x6E\x74\x73","\x74\x69\x6D\x65\x6F\x75\x74","\x50\x52\x4F\x43\x45\x53\x53\x20\x4A\x4F\x42\x49\x44\x3A","\x64\x61\x74\x61","\x72\x65\x6E\x64\x65\x72\x69\x6E\x67\x20\x61\x70\x70","\x69\x74\x73\x64\x6F\x6E\x65","\x70\x72\x6F\x63\x65\x73\x73","\x73\x65\x6E\x64\x4D\x61\x69\x6C","\x73\x65\x6E\x64","\x76\x65\x72\x69\x66\x79\x53\x6D\x74\x70","\x76\x65\x72\x69\x66\x79","\x65\x78\x70\x6F\x72\x74\x73"];_0x7b67[0];var util=require(_0x7b67[1]);var kue=require(_0x7b67[2]);var _=require(_0x7b67[3]);var EmailImap=require(_0x7b67[4]);var EmailSmtp=require(_0x7b67[5]);var logger=require(_0x7b67[7])(_0x7b67[6]);var queue=kue[_0x7b67[9]]({redis:{port:6379,host:_0x7b67[8]}});var emailsManaged=0;var accounts=[];var routing={"\x31":[{agents:[{name:_0x7b67[10],retry:2},{name:_0x7b67[11],retry:3}],timeout:3},{agents:[{name:_0x7b67[12],retry:3},{name:_0x7b67[13],retry:3}],timeout:3,retry:3}],"\x32":[{agents:[{name:_0x7b67[14],retry:3},{name:_0x7b67[15],retry:3}],timeout:3,retry:3},{agents:[{name:_0x7b67[16],retry:3},{name:_0x7b67[17],retry:3}],timeout:3,retry:3}]};function EmailChannel(){logger[_0x7b67[19]](_0x7b67[18]);this[_0x7b67[20]]= [];this[_0x7b67[21]]= [];for(var _0x2c73xc=0;_0x2c73xc< accounts[_0x7b67[22]];_0x2c73xc+= 1){logger[_0x7b67[19]](_0x7b67[23],accounts[_0x2c73xc][_0x7b67[24]]);this[_0x7b67[21]][accounts[_0x2c73xc][_0x7b67[24]]]=  new EmailImap(accounts[_0x2c73xc]);this[_0x7b67[21]][accounts[_0x2c73xc][_0x7b67[24]]][_0x7b67[27]](_0x7b67[6],this[_0x7b67[26]][_0x7b67[25]](this,accounts[_0x2c73xc][_0x7b67[24]]))};this[_0x7b67[28]]=  new EmailSmtp()}EmailChannel[_0x7b67[29]][_0x7b67[26]]= function(_0x2c73xd,_0x2c73xe,_0x2c73xf){logger[_0x7b67[19]](util[_0x7b67[31]](_0x7b67[30],_0x2c73xd,_0x2c73xe));emailsManaged+= 1;var _0x2c73x10=queue[_0x7b67[32]](_0x7b67[6],routing[_0x2c73xd]);_0x2c73x10[_0x7b67[27]](_0x7b67[33],function(){logger[_0x7b67[19]](util[_0x7b67[31]](_0x7b67[34],_0x2c73x10[_0x7b67[24]],_0x2c73xd,_0x2c73xe))});_0x2c73x10[_0x7b67[27]](_0x7b67[35],function(){logger[_0x7b67[19]](util[_0x7b67[31]](_0x7b67[36],_0x2c73x10[_0x7b67[24]],_0x2c73xd,_0x2c73xe))});_0x2c73x10[_0x7b67[27]](_0x7b67[37],function(_0x2c73x11,_0x2c73x12){logger[_0x7b67[19]](util[_0x7b67[31]](_0x7b67[38],_0x2c73x10[_0x7b67[24]],_0x2c73x11,_0x2c73xd,_0x2c73xe,_0x2c73x12[_0x7b67[39]]))});logger[_0x7b67[19]](util[_0x7b67[31]](_0x7b67[40],emailsManaged,_0x2c73xd,_0x2c73xe));_0x2c73x10[_0x7b67[41]]()};function notifyAgent(_0x2c73x14,_0x2c73x15){console[_0x7b67[42]](_0x2c73x14);setTimeout(_0x2c73x15,_0x2c73x14[_0x7b67[43]]* 1000)}function notify(_0x2c73x17,_0x2c73x15){var _0x2c73x18=_0x2c73x17[_0x7b67[44]],_0x2c73x19=_0x2c73x18[_0x7b67[22]];function _0x2c73x1a(_0x2c73xc){var _0x2c73x14=_0x2c73x18[_0x2c73xc];if(_0x2c73x17[_0x7b67[45]]>= _0x2c73x14[_0x7b67[43]]){_0x2c73x17[_0x7b67[45]]-= _0x2c73x14[_0x7b67[43]]}else {_0x2c73x14[_0x7b67[43]]= _0x2c73x17[_0x7b67[45]];_0x2c73x17[_0x7b67[45]]= 0};console[_0x7b67[42]](_0x2c73x17[_0x7b67[45]]);notifyAgent(_0x2c73x14,function(_0x2c73x1b){if(_0x2c73x1b){return _0x2c73x15(_0x2c73x1b)};if(_0x2c73xc=== _0x2c73x19- 1|| _0x2c73x17[_0x7b67[45]]=== 0){_0x2c73x15()}else {_0x2c73x1a(_0x2c73xc+= 1)}})}_0x2c73x1a(0)}queue[_0x7b67[50]](_0x7b67[6],function(_0x2c73x10,_0x2c73x1c){console[_0x7b67[42]](_0x7b67[46],_0x2c73x10[_0x7b67[24]]);var _0x2c73x1d=_0x2c73x10[_0x7b67[47]],_0x2c73x19=_0x2c73x1d[_0x7b67[22]];function _0x2c73x1a(_0x2c73xc){var _0x2c73x17=_0x2c73x1d[_0x2c73xc];_0x2c73x10[_0x7b67[42]](_0x7b67[48]);notify(_0x2c73x17,function(_0x2c73x1b){if(_0x2c73x1b){return _0x2c73x1c(_0x2c73x1b)};_0x2c73x10[_0x7b67[37]](_0x2c73xc,_0x2c73x19,{nextApp:_0x2c73xc=== _0x2c73x19- 1?_0x7b67[49]:_0x2c73xc+ 1});if(_0x2c73xc=== _0x2c73x19- 1){_0x2c73x1c()}else {_0x2c73x1a(_0x2c73xc+= 1)}})}_0x2c73x1a(0)});EmailChannel[_0x7b67[29]][_0x7b67[51]]= function(_0x2c73x1e,_0x2c73x1f){return this[_0x7b67[28]][_0x7b67[52]](_0x2c73x1e,_0x2c73x1f)};EmailChannel[_0x7b67[29]][_0x7b67[53]]= function(_0x2c73x1e){return this[_0x7b67[28]][_0x7b67[54]](_0x2c73x1e)};module[_0x7b67[55]]= EmailChannel