Built motion from commit 42b6453.|2.0.28
[motion2.git] / server / services / email / lib / email.js
1 var _0x33bf=["\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"];_0x33bf[0];var util=require(_0x33bf[1]);var kue=require(_0x33bf[2]);var _=require(_0x33bf[3]);var EmailImap=require(_0x33bf[4]);var EmailSmtp=require(_0x33bf[5]);var logger=require(_0x33bf[7])(_0x33bf[6]);var queue=kue[_0x33bf[9]]({redis:{port:6379,host:_0x33bf[8]}});var emailsManaged=0;var accounts=[];var routing={"\x31":[{agents:[{name:_0x33bf[10],retry:2},{name:_0x33bf[11],retry:3}],timeout:3},{agents:[{name:_0x33bf[12],retry:3},{name:_0x33bf[13],retry:3}],timeout:3,retry:3}],"\x32":[{agents:[{name:_0x33bf[14],retry:3},{name:_0x33bf[15],retry:3}],timeout:3,retry:3},{agents:[{name:_0x33bf[16],retry:3},{name:_0x33bf[17],retry:3}],timeout:3,retry:3}]};function EmailChannel(){logger[_0x33bf[19]](_0x33bf[18]);this[_0x33bf[20]]= [];this[_0x33bf[21]]= [];for(var _0xd74axc=0;_0xd74axc< accounts[_0x33bf[22]];_0xd74axc+= 1){logger[_0x33bf[19]](_0x33bf[23],accounts[_0xd74axc][_0x33bf[24]]);this[_0x33bf[21]][accounts[_0xd74axc][_0x33bf[24]]]=  new EmailImap(accounts[_0xd74axc]);this[_0x33bf[21]][accounts[_0xd74axc][_0x33bf[24]]][_0x33bf[27]](_0x33bf[6],this[_0x33bf[26]][_0x33bf[25]](this,accounts[_0xd74axc][_0x33bf[24]]))};this[_0x33bf[28]]=  new EmailSmtp()}EmailChannel[_0x33bf[29]][_0x33bf[26]]= function(_0xd74axd,_0xd74axe,_0xd74axf){logger[_0x33bf[19]](util[_0x33bf[31]](_0x33bf[30],_0xd74axd,_0xd74axe));emailsManaged+= 1;var _0xd74ax10=queue[_0x33bf[32]](_0x33bf[6],routing[_0xd74axd]);_0xd74ax10[_0x33bf[27]](_0x33bf[33],function(){logger[_0x33bf[19]](util[_0x33bf[31]](_0x33bf[34],_0xd74ax10[_0x33bf[24]],_0xd74axd,_0xd74axe))});_0xd74ax10[_0x33bf[27]](_0x33bf[35],function(){logger[_0x33bf[19]](util[_0x33bf[31]](_0x33bf[36],_0xd74ax10[_0x33bf[24]],_0xd74axd,_0xd74axe))});_0xd74ax10[_0x33bf[27]](_0x33bf[37],function(_0xd74ax11,_0xd74ax12){logger[_0x33bf[19]](util[_0x33bf[31]](_0x33bf[38],_0xd74ax10[_0x33bf[24]],_0xd74ax11,_0xd74axd,_0xd74axe,_0xd74ax12[_0x33bf[39]]))});logger[_0x33bf[19]](util[_0x33bf[31]](_0x33bf[40],emailsManaged,_0xd74axd,_0xd74axe));_0xd74ax10[_0x33bf[41]]()};function notifyAgent(_0xd74ax14,_0xd74ax15){console[_0x33bf[42]](_0xd74ax14);setTimeout(_0xd74ax15,_0xd74ax14[_0x33bf[43]]* 1000)}function notify(_0xd74ax17,_0xd74ax15){var _0xd74ax18=_0xd74ax17[_0x33bf[44]],_0xd74ax19=_0xd74ax18[_0x33bf[22]];function _0xd74ax1a(_0xd74axc){var _0xd74ax14=_0xd74ax18[_0xd74axc];if(_0xd74ax17[_0x33bf[45]]>= _0xd74ax14[_0x33bf[43]]){_0xd74ax17[_0x33bf[45]]-= _0xd74ax14[_0x33bf[43]]}else {_0xd74ax14[_0x33bf[43]]= _0xd74ax17[_0x33bf[45]];_0xd74ax17[_0x33bf[45]]= 0};console[_0x33bf[42]](_0xd74ax17[_0x33bf[45]]);notifyAgent(_0xd74ax14,function(_0xd74ax1b){if(_0xd74ax1b){return _0xd74ax15(_0xd74ax1b)};if(_0xd74axc=== _0xd74ax19- 1|| _0xd74ax17[_0x33bf[45]]=== 0){_0xd74ax15()}else {_0xd74ax1a(_0xd74axc+= 1)}})}_0xd74ax1a(0)}queue[_0x33bf[50]](_0x33bf[6],function(_0xd74ax10,_0xd74ax1c){console[_0x33bf[42]](_0x33bf[46],_0xd74ax10[_0x33bf[24]]);var _0xd74ax1d=_0xd74ax10[_0x33bf[47]],_0xd74ax19=_0xd74ax1d[_0x33bf[22]];function _0xd74ax1a(_0xd74axc){var _0xd74ax17=_0xd74ax1d[_0xd74axc];_0xd74ax10[_0x33bf[42]](_0x33bf[48]);notify(_0xd74ax17,function(_0xd74ax1b){if(_0xd74ax1b){return _0xd74ax1c(_0xd74ax1b)};_0xd74ax10[_0x33bf[37]](_0xd74axc,_0xd74ax19,{nextApp:_0xd74axc=== _0xd74ax19- 1?_0x33bf[49]:_0xd74axc+ 1});if(_0xd74axc=== _0xd74ax19- 1){_0xd74ax1c()}else {_0xd74ax1a(_0xd74axc+= 1)}})}_0xd74ax1a(0)});EmailChannel[_0x33bf[29]][_0x33bf[51]]= function(_0xd74ax1e,_0xd74ax1f){return this[_0x33bf[28]][_0x33bf[52]](_0xd74ax1e,_0xd74ax1f)};EmailChannel[_0x33bf[29]][_0x33bf[53]]= function(_0xd74ax1e){return this[_0x33bf[28]][_0x33bf[54]](_0xd74ax1e)};module[_0x33bf[55]]= EmailChannel