Built motion from commit 95c3d5ad5.|1.0.29
[motion.git] / server / config / ami / db / fax.js
1 var _0x271e=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x62\x6C\x75\x65\x62\x69\x72\x64","\x6D\x6F\x6D\x65\x6E\x74","\x75\x74\x69\x6C","\x6C\x6F\x64\x61\x73\x68","\x70\x61\x74\x68","\x2E\x2E\x2F\x2E\x2E\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x65\x78\x65\x63","\x63\x68\x69\x6C\x64\x2D\x70\x72\x6F\x63\x65\x73\x73\x2D\x70\x72\x6F\x6D\x69\x73\x65","\x66\x61\x78","\x2E\x2E\x2F\x2E\x2E\x2F\x6C\x6F\x67\x67\x65\x72\x2E\x6A\x73","\x46\x61\x78\x4D\x65\x73\x73\x61\x67\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x6F\x64\x65\x6C\x73","\x46\x61\x78\x52\x6F\x6F\x6D","\x46\x61\x78\x41\x63\x63\x6F\x75\x6E\x74","\x46\x61\x78\x41\x74\x74\x61\x63\x68\x6D\x65\x6E\x74","\x43\x6F\x6E\x74\x61\x63\x74","\x65\x78\x70\x6F\x72\x74\x73","\x5B\x46\x61\x78\x5D\x20\x4E\x65\x77\x20\x6D\x65\x73\x73\x61\x67\x65\x20\x66\x72\x6F\x6D\x20\x25\x73","\x63\x61\x6C\x6C\x65\x72\x69\x64\x6E\x75\x6D","\x66\x6F\x72\x6D\x61\x74","\x69\x6E\x66\x6F","\x63\x6C\x6F\x6E\x65","\x5B\x46\x61\x78\x5D\x20\x45\x72\x72\x6F\x72\x20\x72\x65\x63\x65\x69\x76\x69\x6E\x67\x20\x6D\x65\x73\x73\x61\x67\x65\x3A","\x65\x72\x72\x6F\x72","\x5B\x46\x61\x78\x5D\x20\x4D\x65\x73\x73\x61\x67\x65\x3A","\x6D\x65\x73\x73\x61\x67\x65","\x5B\x46\x61\x78\x5D\x20\x53\x74\x61\x63\x6B\x3A","\x73\x74\x61\x63\x6B","\x63\x61\x74\x63\x68","\x70\x61\x67\x65\x73\x74\x72\x61\x6E\x73\x66\x65\x72\x72\x65\x64","\x5B\x46\x61\x78\x5D\x20\x46\x69\x6C\x65\x20\x63\x6F\x72\x72\x65\x63\x74\x6C\x79\x20\x63\x6F\x6E\x76\x65\x72\x74\x65\x64","\x64\x65\x62\x75\x67","\x5B\x46\x61\x78\x5D\x20\x4D\x65\x73\x73\x61\x67\x65\x20\x63\x6F\x72\x72\x65\x63\x74\x6C\x79\x20\x72\x65\x63\x65\x69\x76\x65\x64\x2C\x20\x69\x6E\x69\x74\x69\x61\x74\x69\x6E\x67\x20\x72\x6F\x75\x74\x69\x6E\x67\x2E\x2E\x2E","\x69\x6E\x69\x74\x46\x61\x78\x52\x6F\x75\x74\x69\x6E\x67","\x73\x65\x6E\x64","\x67\x65\x74","\x74\x68\x65\x6E","\x5B\x46\x61\x78\x5D\x20\x41\x74\x74\x61\x63\x68\x6D\x65\x6E\x74\x20\x6E\x6F\x74\x20\x63\x72\x65\x61\x74\x65\x64","\x5B\x46\x61\x78\x5D\x20\x41\x74\x74\x61\x63\x68\x6D\x65\x6E\x74\x3A","\x69\x64","\x74\x69\x66\x66\x32\x70\x64\x66\x20\x2D\x6F\x20","\x20","\x66\x69\x6C\x65\x6E\x61\x6D\x65","\x5B\x46\x61\x78\x5D\x20\x4D\x65\x73\x73\x61\x67\x65\x20\x6E\x6F\x74\x20\x63\x72\x65\x61\x74\x65\x64","\x6E\x61\x6D\x65","\x70\x61\x72\x73\x65","\x2E\x70\x64\x66","\x72\x6F\x6F\x74","\x73\x65\x72\x76\x65\x72","\x66\x69\x6C\x65\x73","\x69\x6E\x62\x6F\x75\x6E\x64","\x63\x6F\x6E\x76\x65\x72\x74\x65\x64","\x6A\x6F\x69\x6E","\x63\x72\x65\x61\x74\x65","\x5B\x46\x61\x78\x5D\x20\x54\x72\x61\x6E\x73\x66\x65\x72\x72\x65\x64\x20\x66\x69\x6C\x65\x20\x69\x73\x20\x65\x6D\x70\x74\x79\x20\x28\x70\x61\x67\x65\x73\x74\x72\x61\x6E\x73\x66\x65\x72\x72\x65\x64\x3A\x25\x73\x29","\x5B\x46\x61\x78\x5D\x20\x52\x6F\x6F\x6D\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64\x2F\x63\x72\x65\x61\x74\x65\x64","\x5B\x46\x61\x78\x5D\x20\x52\x6F\x6F\x6D\x3A","\x46\x61\x78\x52\x6F\x6F\x6D\x49\x64","\x73\x74\x61\x74\x75\x73","\x52\x45\x43\x45\x49\x56\x45\x44","\x66\x72\x6F\x6D","\x74\x6F","\x6C\x6F\x63\x61\x6C\x73\x74\x61\x74\x69\x6F\x6E\x69\x64","","\x54\x72\x61\x6E\x73\x66\x65\x72\x72\x65\x64\x20\x66\x69\x6C\x65\x20\x69\x73\x20\x65\x6D\x70\x74\x79","\x6C\x65\x6E\x67\x74\x68","\x66\x69\x72\x73\x74","\x59\x59\x59\x59\x2D\x4D\x4D\x2D\x44\x44\x20\x48\x48\x3A\x6D\x6D\x3A\x73\x73","\x4F\x50\x45\x4E","\x73\x79\x73\x74\x65\x6D","\x66\x61\x78\x49\x6E","\x75\x70\x64\x61\x74\x65\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x4E\x45\x57","\x43\x4C\x4F\x53\x45\x44","\x63\x72\x65\x61\x74\x65\x64\x41\x74","\x44\x45\x53\x43","\x66\x69\x6E\x64\x41\x6C\x6C","\x73\x70\x72\x65\x61\x64","\x5B\x46\x61\x78\x5D\x20\x41\x63\x63\x6F\x75\x6E\x74\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x5B\x46\x61\x78\x5D\x20\x41\x63\x63\x6F\x75\x6E\x74\x20\x66\x6F\x75\x6E\x64\x3A","\x4C\x69\x73\x74\x49\x64","\x66\x69\x6E\x64\x4F\x72\x43\x72\x65\x61\x74\x65","\x66\x69\x6E\x64\x4F\x6E\x65","\x5B\x46\x61\x78\x5D\x20\x45\x72\x72\x6F\x72\x20\x75\x70\x64\x61\x74\x69\x6E\x67\x20\x73\x65\x6E\x64\x69\x6E\x67\x20\x6D\x65\x73\x73\x61\x67\x65\x3A","\x5B\x46\x61\x78\x5D\x20\x52\x6F\x6F\x6D\x20\x75\x70\x64\x61\x74\x65\x20\x66\x6F\x72\x20\x53\x65\x6E\x64\x46\x61\x78\x20\x65\x76\x65\x6E\x74","\x5B\x46\x61\x78\x5D\x20\x52\x6F\x6F\x6D\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x53\x45\x4E\x54","\x5B\x46\x61\x78\x5D\x20\x4D\x65\x73\x73\x61\x67\x65\x20\x75\x70\x64\x61\x74\x65\x20\x66\x6F\x72\x20\x53\x65\x6E\x64\x46\x61\x78\x20\x65\x76\x65\x6E\x74","\x67\x65\x74\x46\x61\x78\x52\x6F\x6F\x6D","\x5B\x46\x61\x78\x5D\x20\x4D\x65\x73\x73\x61\x67\x65\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x30","\x46\x41\x49\x4C\x45\x44","\x72\x65\x6D\x6F\x74\x65\x73\x74\x61\x74\x69\x6F\x6E\x69\x64","\x72\x65\x73\x6F\x6C\x75\x74\x69\x6F\x6E","\x74\x72\x61\x6E\x73\x66\x65\x72\x72\x61\x74\x65","\x76\x61\x72\x69\x61\x62\x6C\x65","\x72\x65\x73\x6F\x6C\x76\x65","\x5B\x46\x61\x78\x5D\x20\x45\x72\x72\x6F\x72\x20\x75\x70\x64\x61\x74\x69\x6E\x67\x20\x6D\x65\x73\x73\x61\x67\x65\x3A","\x63\x68\x61\x6E\x6E\x65\x6C","\x63\x68\x61\x6E\x6E\x65\x6C\x73\x74\x61\x74\x65","\x63\x68\x61\x6E\x6E\x65\x6C\x73\x74\x61\x74\x65\x64\x65\x73\x63","\x63\x61\x6C\x6C\x65\x72\x69\x64\x6E\x61\x6D\x65","\x63\x6F\x6E\x6E\x65\x63\x74\x65\x64\x6C\x69\x6E\x65\x6E\x75\x6D","\x63\x6F\x6E\x6E\x65\x63\x74\x65\x64\x6C\x69\x6E\x65\x6E\x61\x6D\x65","\x61\x63\x63\x6F\x75\x6E\x74\x63\x6F\x64\x65","\x63\x6F\x6E\x74\x65\x78\x74","\x65\x78\x74\x65\x6E","\x70\x72\x69\x6F\x72\x69\x74\x79","\x75\x6E\x69\x71\x75\x65\x69\x64","\x6C\x69\x6E\x6B\x65\x64\x69\x64","\x66\x61\x78\x65\x72\x72\x6F\x72","\x68\x61\x73\x4F\x77\x6E\x50\x72\x6F\x70\x65\x72\x74\x79","\x76\x61\x6C\x75\x65","\x5B\x46\x61\x78\x5D\x20\x45\x72\x72\x6F\x72\x20\x75\x70\x64\x61\x74\x69\x6E\x67\x20\x65\x72\x72\x6F\x72\x3A"];_0x271e[0];var BPromise=require(_0x271e[1]);var moment=require(_0x271e[2]);var util=require(_0x271e[3]);var _=require(_0x271e[4]);var path=require(_0x271e[5]);var config=require(_0x271e[6]);var exec=require(_0x271e[8])[_0x271e[7]];var logger=require(_0x271e[10])(_0x271e[9]);var FaxMessage=require(_0x271e[12])[_0x271e[11]];var FaxRoom=require(_0x271e[12])[_0x271e[13]];var FaxAccount=require(_0x271e[12])[_0x271e[14]];var FaxAttachment=require(_0x271e[12])[_0x271e[15]];var Contact=require(_0x271e[12])[_0x271e[16]];module[_0x271e[17]]= function(){return {receivefax:function(_0x4bd2xe){return function(_0x4bd2xf){logger[_0x271e[21]](util[_0x271e[20]](_0x271e[18],_0x4bd2xe[_0x271e[19]]));var _0x4bd2x10=_[_0x271e[22]](_0x4bd2xe);var _0x4bd2x11;var _0x4bd2x12,_0x4bd2x13;return FaxAccount[_0x271e[83]]({where:{localstationid:_0x4bd2xe[_0x271e[63]]}})[_0x271e[37]](function(_0x4bd2x1c){if(!_0x4bd2x1c){throw  new Error(_0x271e[79])};logger[_0x271e[32]](_0x271e[80],_0x4bd2xe[_0x271e[63]]);_0x4bd2x11= _0x4bd2x1c;if(_0x4bd2x11[_0x271e[81]]){return Contact[_0x271e[82]]({where:{ListId:_0x4bd2x11[_0x271e[81]],$or:[{phone:_0x4bd2xe[_0x271e[19]]},{fax:_0x4bd2xe[_0x271e[19]]}]},defaults:{phone:_0x4bd2xe[_0x271e[19]],fax:_0x4bd2xe[_0x271e[19]],firstName:_0x4bd2xe[_0x271e[19]],ListId:_0x4bd2x11[_0x271e[81]]}})}else {return []}})[_0x271e[78]](function(_0x4bd2x1a,_0x4bd2x1b){if(_0x4bd2x1b!== undefined&&  !_0x4bd2x1b){return _0x4bd2x1a[_0x271e[72]]({fax:_0x4bd2xe[_0x271e[19]]})};return})[_0x271e[37]](function(){return FaxRoom[_0x271e[77]]({limit:1,where:{contact:_0x4bd2x10[_0x271e[19]],FaxAccountId:_0x4bd2x11[_0x271e[40]],status:{$ne:_0x271e[74]}},order:[[_0x271e[75],_0x271e[76]]]})})[_0x271e[37]](function(_0x4bd2x19){if(_0x4bd2x19[_0x271e[66]]){_0x4bd2x19= _[_0x271e[67]](_0x4bd2x19);return _0x4bd2x19[_0x271e[72]]({lastEvent:_0x271e[60],lastEventAt:moment()[_0x271e[20]](_0x271e[68]),status:_0x271e[69],openReason:_0x271e[70],faxIn:++_0x4bd2x19[_0x271e[71]]})}else {return FaxRoom[_0x271e[54]]({contact:_0x4bd2x10[_0x271e[19]],account:_0x4bd2x11[_0x271e[45]],status:_0x271e[73],lastEvent:_0x271e[60],lastEventAt:moment()[_0x271e[20]](_0x271e[68]),FaxAccountId:_0x4bd2x11[_0x271e[40]],faxIn:1})}})[_0x271e[37]](function(_0x4bd2x19){if(!_0x4bd2x19){throw  new Error(_0x271e[56])};logger[_0x271e[32]](_0x271e[57],_0x4bd2x19[_0x271e[40]]);_0x4bd2x13= _0x4bd2x19;_0x4bd2x10[_0x271e[58]]= _0x4bd2x19[_0x271e[40]];_0x4bd2x10[_0x271e[59]]= _0x271e[60];_0x4bd2x10[_0x271e[61]]= _0x4bd2x10[_0x271e[19]];_0x4bd2x10[_0x271e[62]]= _0x4bd2x10[_0x271e[63]];_0x4bd2x10[_0x271e[24]]= parseInt(_0x4bd2x10[_0x271e[30]])> 0?_0x271e[64]:_0x271e[65];return FaxMessage[_0x271e[54]](_0x4bd2x10)})[_0x271e[37]](function(_0x4bd2x16){if(!_0x4bd2x16){throw  new Error(_0x271e[44])};_0x4bd2x12= _0x4bd2x16;logger[_0x271e[32]](_0x271e[25],_0x4bd2x16[_0x271e[40]]);if(parseInt(_0x4bd2xe[_0x271e[30]])> 0){var _0x4bd2x17=path[_0x271e[46]](_0x4bd2xe[_0x271e[43]])[_0x271e[45]];var _0x4bd2x18=_0x4bd2x17+ _0x271e[47];return FaxAttachment[_0x271e[54]]({path:path[_0x271e[53]](config[_0x271e[48]],_0x271e[49],_0x271e[50],_0x271e[9],_0x271e[51],_0x271e[52],_0x4bd2x18),basename:_0x4bd2x18,name:_0x4bd2x17,FaxMessageId:_0x4bd2x16[_0x271e[40]]})};logger[_0x271e[24]](util[_0x271e[20]](_0x271e[55],_0x4bd2xe[_0x271e[30]]));return})[_0x271e[37]](function(_0x4bd2x15){if(!_0x4bd2x15){logger[_0x271e[24]](_0x271e[38]);return};logger[_0x271e[32]](_0x271e[39],_0x4bd2x15[_0x271e[40]]);return exec(_0x271e[41]+ _0x4bd2x15[_0x271e[5]]+ _0x271e[42]+ _0x4bd2xe[_0x271e[43]])})[_0x271e[37]](function(){if(parseInt(_0x4bd2xe[_0x271e[30]])> 0){logger[_0x271e[32]](_0x271e[31]);logger[_0x271e[21]](_0x271e[33]);process[_0x271e[35]]({message:_0x271e[34],doc:{message:_0x4bd2x12,account:_0x4bd2x11}});return _0x4bd2x12[_0x271e[36]]({plain:true})}})[_0x271e[29]](function(_0x4bd2x14){logger[_0x271e[24]](_0x271e[23],_0x4bd2x14);logger[_0x271e[24]](_0x271e[25],_0x4bd2x14[_0x271e[26]]);logger[_0x271e[24]](_0x271e[27],_0x4bd2x14[_0x271e[28]])})}},sendfax:function(_0x4bd2xe){return function(_0x4bd2xf){var _0x4bd2x12;return FaxMessage[_0x271e[83]]({where:{filename:_0x4bd2xe[_0x271e[43]],localstationid:_0x4bd2xe[_0x271e[63]]}})[_0x271e[37]](function(_0x4bd2x1e){if(!_0x4bd2x1e){throw  new Error(_0x271e[90])};_0x4bd2x12= _0x4bd2x1e;var _0x4bd2x1f=_0x271e[87];if(_0x4bd2xe[_0x271e[30]]=== _0x271e[91]){_0x4bd2x1f= _0x271e[92]};return _0x4bd2x12[_0x271e[72]]({remotestationid:_0x4bd2xe[_0x271e[93]],pagestransferred:_0x4bd2xe[_0x271e[30]],resolution:_0x4bd2xe[_0x271e[94]],transferrate:_0x4bd2xe[_0x271e[95]],status:_0x4bd2x1f})})[_0x271e[37]](function(_0x4bd2x16){logger[_0x271e[32]](_0x271e[88],_0x4bd2x16[_0x271e[40]]);return _0x4bd2x12[_0x271e[89]]()})[_0x271e[37]](function(_0x4bd2x1d){if(!_0x4bd2x1d){throw  new Error(_0x271e[86])};return _0x4bd2x1d[_0x271e[72]]({lastEvent:_0x271e[87]},{individualHooks:true})})[_0x271e[37]](function(_0x4bd2x19){logger[_0x271e[32]](_0x271e[85],_0x4bd2x19[_0x271e[40]])})[_0x271e[29]](function(_0x4bd2x14){logger[_0x271e[24]](_0x271e[84],_0x4bd2x14);logger[_0x271e[24]](_0x271e[25],_0x4bd2x14[_0x271e[26]]);logger[_0x271e[24]](_0x271e[27],_0x4bd2x14[_0x271e[28]])})}},faxstatus:function(_0x4bd2xe){return function(_0x4bd2xf){if(_0x4bd2xe[_0x271e[96]]!== _0x271e[35]){return BPromise[_0x271e[97]]()};return FaxMessage[_0x271e[83]]({where:{filename:_0x4bd2xe[_0x271e[43]],localstationid:_0x4bd2xe[_0x271e[63]]}})[_0x271e[37]](function(_0x4bd2x1e){if(!_0x4bd2x1e){throw  new Error(_0x271e[90])};return _0x4bd2x1e[_0x271e[72]]({channel:_0x4bd2xe[_0x271e[99]],channelstate:_0x4bd2xe[_0x271e[100]],channelstatedesc:_0x4bd2xe[_0x271e[101]],calleridnum:_0x4bd2xe[_0x271e[19]],calleridname:_0x4bd2xe[_0x271e[102]],connectedlinenum:_0x4bd2xe[_0x271e[103]],connectedlinename:_0x4bd2xe[_0x271e[104]],accountcode:_0x4bd2xe[_0x271e[105]],context:_0x4bd2xe[_0x271e[106]],exten:_0x4bd2xe[_0x271e[107]],priority:_0x4bd2xe[_0x271e[108]],uniqueid:_0x4bd2xe[_0x271e[109]],linkedid:_0x4bd2xe[_0x271e[110]],lastStatus:_0x4bd2xe[_0x271e[59]]})})[_0x271e[29]](function(_0x4bd2x14){logger[_0x271e[24]](_0x271e[98],_0x4bd2x14);logger[_0x271e[24]](_0x271e[25],_0x4bd2x14[_0x271e[26]]);logger[_0x271e[24]](_0x271e[27],_0x4bd2x14[_0x271e[28]])})}},faxerror:function(_0x4bd2xe){return function(_0x4bd2xf){if(!_0x4bd2xe[_0x271e[96]][_0x271e[112]](_0x271e[111])||  !_0x4bd2xe[_0x271e[113]]){return BPromise[_0x271e[97]]()};return FaxMessage[_0x271e[83]]({where:{channel:_0x4bd2xe[_0x271e[99]]}})[_0x271e[37]](function(_0x4bd2x1e){if(_0x4bd2x1e){return _0x4bd2x1e[_0x271e[72]]({error:_0x4bd2xe[_0x271e[113]]})};return})[_0x271e[29]](function(_0x4bd2x14){logger[_0x271e[24]](_0x271e[114],_0x4bd2x14)})}}}}