Built motion from commit 0ad9c269e.|1.0.31
[motion.git] / server / config / ami / db / fax.js
1 var _0x416e=["\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"];_0x416e[0];var BPromise=require(_0x416e[1]);var moment=require(_0x416e[2]);var util=require(_0x416e[3]);var _=require(_0x416e[4]);var path=require(_0x416e[5]);var config=require(_0x416e[6]);var exec=require(_0x416e[8])[_0x416e[7]];var logger=require(_0x416e[10])(_0x416e[9]);var FaxMessage=require(_0x416e[12])[_0x416e[11]];var FaxRoom=require(_0x416e[12])[_0x416e[13]];var FaxAccount=require(_0x416e[12])[_0x416e[14]];var FaxAttachment=require(_0x416e[12])[_0x416e[15]];var Contact=require(_0x416e[12])[_0x416e[16]];module[_0x416e[17]]= function(){return {receivefax:function(_0xede8xe){return function(_0xede8xf){logger[_0x416e[21]](util[_0x416e[20]](_0x416e[18],_0xede8xe[_0x416e[19]]));var _0xede8x10=_[_0x416e[22]](_0xede8xe);var _0xede8x11;var _0xede8x12,_0xede8x13;return FaxAccount[_0x416e[83]]({where:{localstationid:_0xede8xe[_0x416e[63]]}})[_0x416e[37]](function(_0xede8x1c){if(!_0xede8x1c){throw  new Error(_0x416e[79])};logger[_0x416e[32]](_0x416e[80],_0xede8xe[_0x416e[63]]);_0xede8x11= _0xede8x1c;if(_0xede8x11[_0x416e[81]]){return Contact[_0x416e[82]]({where:{ListId:_0xede8x11[_0x416e[81]],$or:[{phone:_0xede8xe[_0x416e[19]]},{fax:_0xede8xe[_0x416e[19]]}]},defaults:{phone:_0xede8xe[_0x416e[19]],fax:_0xede8xe[_0x416e[19]],firstName:_0xede8xe[_0x416e[19]],ListId:_0xede8x11[_0x416e[81]]}})}else {return []}})[_0x416e[78]](function(_0xede8x1a,_0xede8x1b){if(_0xede8x1b!== undefined&&  !_0xede8x1b){return _0xede8x1a[_0x416e[72]]({fax:_0xede8xe[_0x416e[19]]})};return})[_0x416e[37]](function(){return FaxRoom[_0x416e[77]]({limit:1,where:{contact:_0xede8x10[_0x416e[19]],FaxAccountId:_0xede8x11[_0x416e[40]],status:{$ne:_0x416e[74]}},order:[[_0x416e[75],_0x416e[76]]]})})[_0x416e[37]](function(_0xede8x19){if(_0xede8x19[_0x416e[66]]){_0xede8x19= _[_0x416e[67]](_0xede8x19);return _0xede8x19[_0x416e[72]]({lastEvent:_0x416e[60],lastEventAt:moment()[_0x416e[20]](_0x416e[68]),status:_0x416e[69],openReason:_0x416e[70],faxIn:++_0xede8x19[_0x416e[71]]})}else {return FaxRoom[_0x416e[54]]({contact:_0xede8x10[_0x416e[19]],account:_0xede8x11[_0x416e[45]],status:_0x416e[73],lastEvent:_0x416e[60],lastEventAt:moment()[_0x416e[20]](_0x416e[68]),FaxAccountId:_0xede8x11[_0x416e[40]],faxIn:1})}})[_0x416e[37]](function(_0xede8x19){if(!_0xede8x19){throw  new Error(_0x416e[56])};logger[_0x416e[32]](_0x416e[57],_0xede8x19[_0x416e[40]]);_0xede8x13= _0xede8x19;_0xede8x10[_0x416e[58]]= _0xede8x19[_0x416e[40]];_0xede8x10[_0x416e[59]]= _0x416e[60];_0xede8x10[_0x416e[61]]= _0xede8x10[_0x416e[19]];_0xede8x10[_0x416e[62]]= _0xede8x10[_0x416e[63]];_0xede8x10[_0x416e[24]]= parseInt(_0xede8x10[_0x416e[30]])> 0?_0x416e[64]:_0x416e[65];return FaxMessage[_0x416e[54]](_0xede8x10)})[_0x416e[37]](function(_0xede8x16){if(!_0xede8x16){throw  new Error(_0x416e[44])};_0xede8x12= _0xede8x16;logger[_0x416e[32]](_0x416e[25],_0xede8x16[_0x416e[40]]);if(parseInt(_0xede8xe[_0x416e[30]])> 0){var _0xede8x17=path[_0x416e[46]](_0xede8xe[_0x416e[43]])[_0x416e[45]];var _0xede8x18=_0xede8x17+ _0x416e[47];return FaxAttachment[_0x416e[54]]({path:path[_0x416e[53]](config[_0x416e[48]],_0x416e[49],_0x416e[50],_0x416e[9],_0x416e[51],_0x416e[52],_0xede8x18),basename:_0xede8x18,name:_0xede8x17,FaxMessageId:_0xede8x16[_0x416e[40]]})};logger[_0x416e[24]](util[_0x416e[20]](_0x416e[55],_0xede8xe[_0x416e[30]]));return})[_0x416e[37]](function(_0xede8x15){if(!_0xede8x15){logger[_0x416e[24]](_0x416e[38]);return};logger[_0x416e[32]](_0x416e[39],_0xede8x15[_0x416e[40]]);return exec(_0x416e[41]+ _0xede8x15[_0x416e[5]]+ _0x416e[42]+ _0xede8xe[_0x416e[43]])})[_0x416e[37]](function(){if(parseInt(_0xede8xe[_0x416e[30]])> 0){logger[_0x416e[32]](_0x416e[31]);logger[_0x416e[21]](_0x416e[33]);process[_0x416e[35]]({message:_0x416e[34],doc:{message:_0xede8x12,account:_0xede8x11}});return _0xede8x12[_0x416e[36]]({plain:true})}})[_0x416e[29]](function(_0xede8x14){logger[_0x416e[24]](_0x416e[23],_0xede8x14);logger[_0x416e[24]](_0x416e[25],_0xede8x14[_0x416e[26]]);logger[_0x416e[24]](_0x416e[27],_0xede8x14[_0x416e[28]])})}},sendfax:function(_0xede8xe){return function(_0xede8xf){var _0xede8x12;return FaxMessage[_0x416e[83]]({where:{filename:_0xede8xe[_0x416e[43]],localstationid:_0xede8xe[_0x416e[63]]}})[_0x416e[37]](function(_0xede8x1e){if(!_0xede8x1e){throw  new Error(_0x416e[90])};_0xede8x12= _0xede8x1e;var _0xede8x1f=_0x416e[87];if(_0xede8xe[_0x416e[30]]=== _0x416e[91]){_0xede8x1f= _0x416e[92]};return _0xede8x12[_0x416e[72]]({remotestationid:_0xede8xe[_0x416e[93]],pagestransferred:_0xede8xe[_0x416e[30]],resolution:_0xede8xe[_0x416e[94]],transferrate:_0xede8xe[_0x416e[95]],status:_0xede8x1f})})[_0x416e[37]](function(_0xede8x16){logger[_0x416e[32]](_0x416e[88],_0xede8x16[_0x416e[40]]);return _0xede8x12[_0x416e[89]]()})[_0x416e[37]](function(_0xede8x1d){if(!_0xede8x1d){throw  new Error(_0x416e[86])};return _0xede8x1d[_0x416e[72]]({lastEvent:_0x416e[87]},{individualHooks:true})})[_0x416e[37]](function(_0xede8x19){logger[_0x416e[32]](_0x416e[85],_0xede8x19[_0x416e[40]])})[_0x416e[29]](function(_0xede8x14){logger[_0x416e[24]](_0x416e[84],_0xede8x14);logger[_0x416e[24]](_0x416e[25],_0xede8x14[_0x416e[26]]);logger[_0x416e[24]](_0x416e[27],_0xede8x14[_0x416e[28]])})}},faxstatus:function(_0xede8xe){return function(_0xede8xf){if(_0xede8xe[_0x416e[96]]!== _0x416e[35]){return BPromise[_0x416e[97]]()};return FaxMessage[_0x416e[83]]({where:{filename:_0xede8xe[_0x416e[43]],localstationid:_0xede8xe[_0x416e[63]]}})[_0x416e[37]](function(_0xede8x1e){if(!_0xede8x1e){throw  new Error(_0x416e[90])};return _0xede8x1e[_0x416e[72]]({channel:_0xede8xe[_0x416e[99]],channelstate:_0xede8xe[_0x416e[100]],channelstatedesc:_0xede8xe[_0x416e[101]],calleridnum:_0xede8xe[_0x416e[19]],calleridname:_0xede8xe[_0x416e[102]],connectedlinenum:_0xede8xe[_0x416e[103]],connectedlinename:_0xede8xe[_0x416e[104]],accountcode:_0xede8xe[_0x416e[105]],context:_0xede8xe[_0x416e[106]],exten:_0xede8xe[_0x416e[107]],priority:_0xede8xe[_0x416e[108]],uniqueid:_0xede8xe[_0x416e[109]],linkedid:_0xede8xe[_0x416e[110]],lastStatus:_0xede8xe[_0x416e[59]]})})[_0x416e[29]](function(_0xede8x14){logger[_0x416e[24]](_0x416e[98],_0xede8x14);logger[_0x416e[24]](_0x416e[25],_0xede8x14[_0x416e[26]]);logger[_0x416e[24]](_0x416e[27],_0xede8x14[_0x416e[28]])})}},faxerror:function(_0xede8xe){return function(_0xede8xf){if(!_0xede8xe[_0x416e[96]][_0x416e[112]](_0x416e[111])||  !_0xede8xe[_0x416e[113]]){return BPromise[_0x416e[97]]()};return FaxMessage[_0x416e[83]]({where:{channel:_0xede8xe[_0x416e[99]]}})[_0x416e[37]](function(_0xede8x1e){if(_0xede8x1e){return _0xede8x1e[_0x416e[72]]({error:_0xede8xe[_0x416e[113]]})};return})[_0x416e[29]](function(_0xede8x14){logger[_0x416e[24]](_0x416e[114],_0xede8x14)})}}}}