Built motion from commit 85328c08.|2.5.50
[motion2.git] / server / services / ami / fax / index.js
index d1249d4..d55b549 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x9b63=['syncNewExten','faxstatus','syncFaxStatus','syncReceiveFax','hangup','syncHangup','originateresponse','syncOriginateResponse','prototype','syncNewchannel','context','from-voip-provider','hasOwnProperty','exten','uniqueid','channel','name','info','\x20syncNewchannel\x20','variable','value','syncNewState','channelstate','channelstatedesc','operation','status','localstationid','filename','\x20syncFaxStatus\x20','remotestationid','pagestransferred','resolution','transferrate','calleridnum','/var/opt/motion2/server/files/attachments/','\x20result\x20conversion\x20file\x20','message','create','parse','application/pdf','notify','catch','error','\x20notify\x20','stringify','\x20receiveFax\x20','merge','pick','response','AttachmentId','update','SENDING\x20FAILED\x20','then','[Fax][Message][Error][Updated]','[Fax][Message][Error][NoUpdate1]','[Fax][Message][Error][NoUpdate2]','updateStatus','logger','[Fax][Message][Updated]','[Fax][Message][NoUpdate1]','finally','[Fax][Message][NoUpdate2]','SENDING\x20FAILED:\x20','faxstatusstring','SENDING\x20FAILED','send','execOriginate','[Fax][execOriginate][success]','[Fax][execOriginate][failure]','Fax\x20failed','checkTrunk','FaxAccountId','Trunk','isValid','Trunk\x20Reachable','format','gs\x20-q\x20-dNOPAUSE\x20-dBATCH\x20-sDEVICE=tiffg4\x20-sPAPERSIZE=letter\x20-sOutputFile=/var/opt/motion2/server/files/attachments/%s.tif\x20\x20%s\x20-c\x20quit','execute','%s/%s.tif','dir','variablesAction','Action','addVariables','isNil','active','SIP/%s','reachable','unmonitored','[Fax][checkTrunk][Trunk\x20not\x20work]','\x20Trunk\x20is\x20not\x20active','Trunk\x20not\x20working','[Fax][checkTrunk][Empty\x20Fax]','Empty\x20Fax','[Fax][checkTrunk][Empty\x20path]','Empty\x20path','Is\x20Valid','exports','lodash','bluebird','uuid','moment','path','tiff2pdf','./util/gs','../../../config/logger','fax','./rpcDb','./channel','./util/util','../rpc/faxAccount','channels','faxAccounts','trunks','actions','bind','varset','syncVarSet','newexten'];(function(_0x149279,_0x88624f){var _0x431a98=function(_0x23c969){while(--_0x23c969){_0x149279['push'](_0x149279['shift']());}};_0x431a98(++_0x88624f);}(_0x9b63,0x1c3));var _0x39b6=function(_0x47f002,_0x53fb90){_0x47f002=_0x47f002-0x0;var _0x2b18b8=_0x9b63[_0x47f002];return _0x2b18b8;};'use strict';var util=require('util');var _=require(_0x39b6('0x0'));var BPromise=require(_0x39b6('0x1'));var uuid=require(_0x39b6('0x2'));var moment=require(_0x39b6('0x3'));var path=require(_0x39b6('0x4'));var tiff2pdf=require(_0x39b6('0x5'));var gs=require(_0x39b6('0x6'));var logger=require(_0x39b6('0x7'))(_0x39b6('0x8'));var ami=require('../ami');var rpcDb=require(_0x39b6('0x9'));var Channel=require(_0x39b6('0xa'));var ut=require(_0x39b6('0xb'));var Action=require('./action');var faxAccount=require(_0x39b6('0xc'));var attachment=require('../rpc/attachment');var faxMessage=require('../rpc/faxMessage');function Fax(_0x4ed430){this[_0x39b6('0xd')]={};this['faxAccounts']=_0x4ed430[_0x39b6('0xe')];this[_0x39b6('0xf')]=_0x4ed430['trunks'];this[_0x39b6('0x10')]={};ami['on']('newchannel',this['syncNewchannel'][_0x39b6('0x11')](this));ami['on'](_0x39b6('0x12'),this[_0x39b6('0x13')][_0x39b6('0x11')](this));ami['on']('newstate',this['syncNewState'][_0x39b6('0x11')](this));ami['on'](_0x39b6('0x14'),this[_0x39b6('0x15')][_0x39b6('0x11')](this));ami['on'](_0x39b6('0x16'),this[_0x39b6('0x17')][_0x39b6('0x11')](this));ami['on']('receivefax',this[_0x39b6('0x18')][_0x39b6('0x11')](this));ami['on'](_0x39b6('0x19'),this[_0x39b6('0x1a')][_0x39b6('0x11')](this));ami['on'](_0x39b6('0x1b'),this[_0x39b6('0x1c')][_0x39b6('0x11')](this));}Fax[_0x39b6('0x1d')][_0x39b6('0x1e')]=function(_0x2b5ac6){if(_0x2b5ac6[_0x39b6('0x1f')]===_0x39b6('0x20')){for(var _0x1f4011 in this[_0x39b6('0xe')]){if(this[_0x39b6('0xe')][_0x39b6('0x21')](_0x1f4011)){if(_0x2b5ac6[_0x39b6('0x22')]===this[_0x39b6('0xe')][_0x1f4011]['localstationid']){this[_0x39b6('0xd')][_0x2b5ac6[_0x39b6('0x23')]]={};this[_0x39b6('0xd')][_0x2b5ac6[_0x39b6('0x23')]][_0x39b6('0x24')]=_0x2b5ac6[_0x39b6('0x24')];this['channels'][_0x2b5ac6[_0x39b6('0x23')]]['id']=this[_0x39b6('0xe')][_0x1f4011]['id'];this[_0x39b6('0xd')][_0x2b5ac6[_0x39b6('0x23')]][_0x39b6('0x25')]=this[_0x39b6('0xe')][_0x1f4011][_0x39b6('0x25')];logger[_0x39b6('0x26')](_0x2b5ac6['uniqueid'],_0x39b6('0x27'));}}}}if(this[_0x39b6('0x10')][_0x2b5ac6[_0x39b6('0x23')]]){this[_0x39b6('0xd')][_0x2b5ac6[_0x39b6('0x23')]]={};this[_0x39b6('0xd')][_0x2b5ac6[_0x39b6('0x23')]][_0x39b6('0x24')]=_0x2b5ac6[_0x39b6('0x24')];logger[_0x39b6('0x26')](_0x2b5ac6['uniqueid'],'\x20syncNewchannel\x20');}};Fax['prototype']['syncVarSet']=function(_0x3e203a){if(this['channels'][_0x3e203a['uniqueid']]){for(var _0x26f8bc in _0x3e203a[_0x39b6('0x28')]){if(_0x3e203a[_0x39b6('0x28')]['hasOwnProperty'](_0x26f8bc)){this[_0x39b6('0xd')][_0x3e203a[_0x39b6('0x23')]][_0x26f8bc]=_0x3e203a[_0x39b6('0x29')];}}}};Fax[_0x39b6('0x1d')][_0x39b6('0x2a')]=function(_0x5d711d){if(this[_0x39b6('0xd')][_0x5d711d[_0x39b6('0x23')]]){this[_0x39b6('0xd')][_0x5d711d['uniqueid']][_0x39b6('0x2b')]=_0x5d711d[_0x39b6('0x2b')];this[_0x39b6('0xd')][_0x5d711d['uniqueid']][_0x39b6('0x2c')]=_0x5d711d['channelstatedesc'];}};Fax[_0x39b6('0x1d')][_0x39b6('0x15')]=function(_0x47c653){if(this[_0x39b6('0xd')][_0x47c653[_0x39b6('0x23')]]){for(var _0x4a46df in _0x47c653['variable']){if(_0x47c653[_0x39b6('0x28')]['hasOwnProperty'](_0x4a46df)){this['channels'][_0x47c653[_0x39b6('0x23')]][_0x4a46df]=_0x47c653[_0x39b6('0x29')];}}}};Fax[_0x39b6('0x1d')][_0x39b6('0x17')]=function(_0x4c5fe0){if(this[_0x39b6('0xd')][_0x4c5fe0['uniqueid']]){this['channels'][_0x4c5fe0['uniqueid']]['operation']=_0x4c5fe0[_0x39b6('0x2d')];this[_0x39b6('0xd')][_0x4c5fe0[_0x39b6('0x23')]][_0x39b6('0x2e')]=_0x4c5fe0[_0x39b6('0x2e')];this['channels'][_0x4c5fe0['uniqueid']][_0x39b6('0x2f')]=_0x4c5fe0['localstationid'];this['channels'][_0x4c5fe0[_0x39b6('0x23')]][_0x39b6('0x30')]=_0x4c5fe0[_0x39b6('0x30')];logger[_0x39b6('0x26')](_0x4c5fe0[_0x39b6('0x23')],_0x39b6('0x31'));}};Fax[_0x39b6('0x1d')]['syncReceiveFax']=function(_0x2cad00){var _0x4f1597=this;if(this[_0x39b6('0xd')][_0x2cad00['uniqueid']]){var _0x23d8f8=this[_0x39b6('0xd')][_0x2cad00[_0x39b6('0x23')]]['id'];this[_0x39b6('0xd')][_0x2cad00['uniqueid']][_0x39b6('0x32')]=_0x2cad00['remotestationid'];this['channels'][_0x2cad00[_0x39b6('0x23')]][_0x39b6('0x33')]=_0x2cad00[_0x39b6('0x33')];this[_0x39b6('0xd')][_0x2cad00[_0x39b6('0x23')]]['localstationid']=_0x2cad00[_0x39b6('0x2f')];this[_0x39b6('0xd')][_0x2cad00['uniqueid']][_0x39b6('0x34')]=_0x2cad00[_0x39b6('0x34')];this['channels'][_0x2cad00[_0x39b6('0x23')]][_0x39b6('0x35')]=_0x2cad00[_0x39b6('0x35')];this['channels'][_0x2cad00['uniqueid']][_0x39b6('0x30')]=_0x2cad00[_0x39b6('0x30')];this[_0x39b6('0xd')][_0x2cad00['uniqueid']][_0x39b6('0x36')]=_0x2cad00[_0x39b6('0x36')];if(this['channels'][_0x2cad00[_0x39b6('0x23')]]['pagestransferred']>0x0){tiff2pdf(_0x2cad00[_0x39b6('0x30')],_0x39b6('0x37'),function(_0x592e64){logger[_0x39b6('0x26')](_0x2cad00[_0x39b6('0x23')],_0x39b6('0x38'),_0x592e64[_0x39b6('0x39')]);attachment[_0x39b6('0x3a')]({'name':path[_0x39b6('0x3b')](_0x2cad00[_0x39b6('0x30')])[_0x39b6('0x25')],'basename':path[_0x39b6('0x3b')](_0x2cad00[_0x39b6('0x30')])[_0x39b6('0x25')]+'.pdf','type':_0x39b6('0x3c')})['then'](function(_0x5321be){faxAccount[_0x39b6('0x3d')](_0x23d8f8,{'from':_0x2cad00[_0x39b6('0x36')],'mapKey':'fax','body':path[_0x39b6('0x3b')](_0x2cad00[_0x39b6('0x30')])[_0x39b6('0x25')]+'.pdf','AttachmentId':_0x5321be['id']})[_0x39b6('0x3e')](function(_0x13e08f){logger[_0x39b6('0x3f')](_0x2cad00[_0x39b6('0x23')],_0x39b6('0x40'),JSON[_0x39b6('0x41')](_0x13e08f));});})[_0x39b6('0x3e')](function(_0x5e368c){logger[_0x39b6('0x3f')](_0x2cad00['uniqueid'],'\x20receiveFax\x20',JSON[_0x39b6('0x41')](_0x5e368c));});});}logger[_0x39b6('0x26')](_0x2cad00['uniqueid'],_0x39b6('0x42'));}};Fax['prototype'][_0x39b6('0x1c')]=function(_0x52c7bc){if(this[_0x39b6('0x10')][_0x52c7bc['uniqueid']]){_[_0x39b6('0x43')](this[_0x39b6('0xd')][_0x52c7bc[_0x39b6('0x23')]],_[_0x39b6('0x44')](_0x52c7bc,[_0x39b6('0x45'),'reason']));}};function updateStatus(_0x22d606){if(_0x22d606[_0x39b6('0x46')]){faxMessage[_0x39b6('0x47')](_0x22d606['AttachmentId'],{'failMessage':_0x39b6('0x48')})[_0x39b6('0x49')](function(_0xd40aad){ut['logger'](_0x39b6('0x4a'),_0xd40aad);})['catch'](function(_0x22a73e){ut['logger'](_0x39b6('0x4b'),_0x22a73e);});}else{ut['logger'](_0x39b6('0x4c'));}}Fax[_0x39b6('0x1d')][_0x39b6('0x4d')]=function(_0x45bc49,_0x267c6f,_0x463f39){var _0x3c386d=this;var _0x3f1e96={};if(_0x267c6f){_0x3f1e96={'read':_0x267c6f};}else{_0x3f1e96={'failMessage':_0x463f39};}if(this[_0x39b6('0x10')][_0x45bc49]['AttachmentId']){faxMessage[_0x39b6('0x47')](this['actions'][_0x45bc49][_0x39b6('0x46')],_0x3f1e96)[_0x39b6('0x49')](function(_0x271797){ut[_0x39b6('0x4e')](_0x39b6('0x4f'),_0x271797);})['catch'](function(_0x397596){ut['logger'](_0x39b6('0x50'),_0x397596);})[_0x39b6('0x51')](function(){delete _0x3c386d[_0x39b6('0xd')][_0x45bc49];delete _0x3c386d[_0x39b6('0x10')][_0x45bc49];});}else{ut[_0x39b6('0x4e')](_0x39b6('0x52'));delete this[_0x39b6('0xd')][_0x45bc49];delete this[_0x39b6('0x10')][_0x45bc49];}};Fax[_0x39b6('0x1d')][_0x39b6('0x1a')]=function(_0x4f87b2){var _0x101fda=this;if(this[_0x39b6('0xd')][_0x4f87b2['uniqueid']]){if(this[_0x39b6('0x10')][_0x4f87b2[_0x39b6('0x23')]]){this[_0x39b6('0xd')][_0x4f87b2[_0x39b6('0x23')]]['id']=this[_0x39b6('0x10')][_0x4f87b2[_0x39b6('0x23')]]['id'];this[_0x39b6('0xd')][_0x4f87b2[_0x39b6('0x23')]][_0x39b6('0x25')]=this[_0x39b6('0x10')][_0x4f87b2[_0x39b6('0x23')]][_0x39b6('0x25')];}logger[_0x39b6('0x26')](_0x4f87b2['uniqueid'],this[_0x39b6('0x10')][_0x4f87b2[_0x39b6('0x23')]]?'\x20hangup\x20sendFile\x20':'\x20hangup\x20faxRiceive\x20',JSON['stringify'](this[_0x39b6('0xd')][_0x4f87b2[_0x39b6('0x23')]]));if(this[_0x39b6('0x10')][_0x4f87b2['uniqueid']]){if(this[_0x39b6('0xd')][_0x4f87b2[_0x39b6('0x23')]]['faxpages']>0x0&&this[_0x39b6('0xd')][_0x4f87b2[_0x39b6('0x23')]][_0x39b6('0x16')]==='SUCCESS'){this[_0x39b6('0x4d')](_0x4f87b2[_0x39b6('0x23')],!![]);}else{this[_0x39b6('0x4d')](_0x4f87b2['uniqueid'],![],this['channels'][_0x4f87b2[_0x39b6('0x23')]]['faxstatusstring']?_0x39b6('0x53')+this[_0x39b6('0xd')][_0x4f87b2[_0x39b6('0x23')]][_0x39b6('0x54')]:_0x39b6('0x55'));}}}};Fax['prototype'][_0x39b6('0x56')]=function(_0x279e65){var _0x510624=this;return new BPromise(function(_0x289d52,_0x5e60a5){_0x510624[_0x39b6('0x57')](_0x279e65,_0x510624[_0x39b6('0xe')][_0x279e65['FaxAccountId']])[_0x39b6('0x49')](function(_0x11ca82){ut[_0x39b6('0x4e')](_0x39b6('0x58'),_0x11ca82);_0x289d52(ut[_0x39b6('0x39')]('Fax\x20received'));})[_0x39b6('0x3e')](function(_0x4a6c2b){ut['logger'](_0x39b6('0x59'),_0x4a6c2b);updateStatus(_0x279e65);_0x5e60a5(ut[_0x39b6('0x39')](_0x39b6('0x5a')));});});};Fax[_0x39b6('0x1d')]['checkAfterSend']=function(_0x1cadc6){var _0x4f7970=this;return new BPromise(function(_0x31d1e1,_0x47627f){var _0x4ec434=_0x4f7970[_0x39b6('0x5b')](_0x4f7970['faxAccounts'][_0x1cadc6[_0x39b6('0x5c')]][_0x39b6('0x5d')],_0x1cadc6);if(_0x4ec434[_0x39b6('0x5e')]){_0x31d1e1(ut[_0x39b6('0x39')](_0x39b6('0x5f')));}else{_0x47627f(ut[_0x39b6('0x39')](_0x4ec434[_0x39b6('0x39')]));}});};function originate(_0x4d6404,_0x5f2384,_0x1f961f){return new BPromise(function(_0x513964,_0x3f1826){if(_0x1f961f){var _0x929c1a=util[_0x39b6('0x60')](_0x39b6('0x61'),path[_0x39b6('0x3b')](_0x4d6404[_0x39b6('0x4')])[_0x39b6('0x25')],_0x4d6404[_0x39b6('0x4')]);gs[_0x39b6('0x62')](_0x929c1a)['then'](function(){_0x4d6404[_0x39b6('0x4')]=util[_0x39b6('0x60')](_0x39b6('0x63'),path[_0x39b6('0x3b')](_0x4d6404['path'])[_0x39b6('0x64')],path[_0x39b6('0x3b')](_0x4d6404[_0x39b6('0x4')])[_0x39b6('0x25')]);_0x5f2384['XMF-PATH']=_0x4d6404[_0x39b6('0x4')];ut[_0x39b6('0x4e')]('Convert\x20pdf\x20to\x20tif','');ami['Action'](ut[_0x39b6('0x65')](_0x4d6404,_0x5f2384))['then'](function(_0x5d897c){_0x513964(_0x5d897c);})[_0x39b6('0x3e')](function(_0x110ba9){_0x3f1826(_0x110ba9);});})['catch'](function(_0x4fc0c2){_0x3f1826(_0x4fc0c2);});}else{ami[_0x39b6('0x66')](ut[_0x39b6('0x65')](_0x4d6404,_0x5f2384))[_0x39b6('0x49')](function(_0x4cf337){_0x513964(_0x4cf337);})['catch'](function(_0x45bfa7){_0x3f1826(_0x45bfa7);});}});}Fax[_0x39b6('0x1d')][_0x39b6('0x57')]=function(_0x402114,_0x28adb0){var _0x29a5ce=this;return new BPromise(function(_0x43432e,_0x236200){var _0x4eabb3=uuid['v4']();var _0x3e5e05=ut[_0x39b6('0x67')](_0x402114,_0x28adb0);_0x29a5ce['actions'][_0x4eabb3]=new Action(_0x4eabb3,_0x28adb0,_0x402114);var _0x42f186=_0x29a5ce['actions'][_0x4eabb3];if(path['parse'](_0x402114[_0x39b6('0x4')])['ext']==='.pdf'){originate(_0x42f186,_0x3e5e05,!![])[_0x39b6('0x49')](function(_0x50dd51){_0x43432e(_0x50dd51);})['catch'](function(_0x519827){_0x236200(_0x519827);});}else{originate(_0x42f186,_0x3e5e05,![])[_0x39b6('0x49')](function(_0x4112b2){_0x43432e(_0x4112b2);})[_0x39b6('0x3e')](function(_0x19691f){_0x236200(_0x19691f);});}});};Fax[_0x39b6('0x1d')]['isTrunkReachable']=function(_0x522158){return!_[_0x39b6('0x68')](_0x522158)&&!_[_0x39b6('0x68')](_0x522158[_0x39b6('0x25')])&&!_[_0x39b6('0x68')](_0x522158['active'])&&_0x522158[_0x39b6('0x69')]&&!_[_0x39b6('0x68')](this[_0x39b6('0xf')][util[_0x39b6('0x60')](_0x39b6('0x6a'),_0x522158[_0x39b6('0x25')])])&&!_[_0x39b6('0x68')](this[_0x39b6('0xf')][util[_0x39b6('0x60')](_0x39b6('0x6a'),_0x522158[_0x39b6('0x25')])][_0x39b6('0x2e')])&&(this[_0x39b6('0xf')][util[_0x39b6('0x60')](_0x39b6('0x6a'),_0x522158[_0x39b6('0x25')])]['status']===_0x39b6('0x6b')||this[_0x39b6('0xf')][util[_0x39b6('0x60')](_0x39b6('0x6a'),_0x522158[_0x39b6('0x25')])]['status']===_0x39b6('0x6c'));};Fax[_0x39b6('0x1d')][_0x39b6('0x5b')]=function(_0x19b4d9,_0x1a8e4d){if(!this['isTrunkReachable'](_0x19b4d9)){ut['logger'](_0x39b6('0x6d'),_['isNil'](_0x19b4d9)?'':_0x19b4d9[_0x39b6('0x25')]+_0x39b6('0x6e'));return{'isValid':![],'message':_0x39b6('0x6f')};}if(_[_0x39b6('0x68')](_0x1a8e4d[_0x39b6('0x8')])){ut[_0x39b6('0x4e')](_0x39b6('0x70'),JSON[_0x39b6('0x41')](_0x1a8e4d));return{'isValid':![],'message':_0x39b6('0x71')};}if(_['isNil'](_0x1a8e4d[_0x39b6('0x4')])){ut[_0x39b6('0x4e')](_0x39b6('0x72'),JSON['stringify'](_0x1a8e4d));return{'isValid':![],'message':_0x39b6('0x73')};}return{'isValid':!![],'message':_0x39b6('0x74')};};module[_0x39b6('0x75')]=Fax;
\ No newline at end of file
+var _0x4024=['Convert\x20pdf\x20to\x20tif','Action','variablesAction','addVariables','ext','isTrunkReachable','isNil','active','SIP/%s','reachable','[Fax][checkTrunk][Trunk\x20not\x20work]','Trunk\x20not\x20working','Empty\x20Fax','[Fax][checkTrunk][Empty\x20path]','Empty\x20path','Is\x20Valid','exports','util','lodash','uuid','moment','tiff2pdf','../../../config/logger','fax','./channel','./util/util','./action','../rpc/attachment','channels','trunks','actions','syncNewchannel','varset','syncVarSet','newstate','syncNewState','bind','syncNewExten','faxstatus','syncFaxStatus','receivefax','syncReceiveFax','hangup','syncHangup','originateresponse','syncOriginateResponse','prototype','context','from-voip-provider','hasOwnProperty','exten','localstationid','channel','uniqueid','faxAccounts','name','info','\x20syncNewchannel\x20','variable','channelstate','channelstatedesc','value','operation','status','filename','\x20syncFaxStatus\x20','remotestationid','pagestransferred','resolution','transferrate','calleridnum','/var/opt/motion2/server/files/attachments/','\x20result\x20conversion\x20file\x20','create','parse','.pdf','application/pdf','then','catch','error','\x20notify\x20','stringify','\x20receiveFax\x20','merge','pick','response','reason','logger','[Fax][Message][Error][Updated]','[Fax][Message][Error][NoUpdate1]','[Fax][Message][Error][NoUpdate2]','updateStatus','AttachmentId','[Fax][Message][Updated]','[Fax][Message][NoUpdate1]','finally','[Fax][Message][NoUpdate2]','\x20hangup\x20sendFile\x20','\x20hangup\x20faxRiceive\x20','faxpages','SUCCESS','faxstatusstring','send','execOriginate','FaxAccountId','[Fax][execOriginate][success]','Fax\x20received','[Fax][execOriginate][failure]','message','Fax\x20failed','checkTrunk','Trunk','isValid','format','gs\x20-q\x20-dNOPAUSE\x20-dBATCH\x20-sDEVICE=tiffg4\x20-sPAPERSIZE=letter\x20-sOutputFile=/var/opt/motion2/server/files/attachments/%s.tif\x20\x20%s\x20-c\x20quit','path','execute','%s/%s.tif','dir','XMF-PATH'];(function(_0x53d172,_0x46611b){var _0x1bd0a2=function(_0x19fb52){while(--_0x19fb52){_0x53d172['push'](_0x53d172['shift']());}};_0x1bd0a2(++_0x46611b);}(_0x4024,0x89));var _0x4402=function(_0x58bf75,_0x296b1c){_0x58bf75=_0x58bf75-0x0;var _0x4f8cb7=_0x4024[_0x58bf75];return _0x4f8cb7;};'use strict';var util=require(_0x4402('0x0'));var _=require(_0x4402('0x1'));var BPromise=require('bluebird');var uuid=require(_0x4402('0x2'));var moment=require(_0x4402('0x3'));var path=require('path');var tiff2pdf=require(_0x4402('0x4'));var gs=require('./util/gs');var logger=require(_0x4402('0x5'))(_0x4402('0x6'));var ami=require('../ami');var rpcDb=require('./rpcDb');var Channel=require(_0x4402('0x7'));var ut=require(_0x4402('0x8'));var Action=require(_0x4402('0x9'));var faxAccount=require('../rpc/faxAccount');var attachment=require(_0x4402('0xa'));var faxMessage=require('../rpc/faxMessage');function Fax(_0x5c0b70){this[_0x4402('0xb')]={};this['faxAccounts']=_0x5c0b70['faxAccounts'];this[_0x4402('0xc')]=_0x5c0b70['trunks'];this[_0x4402('0xd')]={};ami['on']('newchannel',this[_0x4402('0xe')]['bind'](this));ami['on'](_0x4402('0xf'),this[_0x4402('0x10')]['bind'](this));ami['on'](_0x4402('0x11'),this[_0x4402('0x12')][_0x4402('0x13')](this));ami['on']('newexten',this[_0x4402('0x14')][_0x4402('0x13')](this));ami['on'](_0x4402('0x15'),this[_0x4402('0x16')][_0x4402('0x13')](this));ami['on'](_0x4402('0x17'),this[_0x4402('0x18')][_0x4402('0x13')](this));ami['on'](_0x4402('0x19'),this[_0x4402('0x1a')][_0x4402('0x13')](this));ami['on'](_0x4402('0x1b'),this[_0x4402('0x1c')][_0x4402('0x13')](this));}Fax[_0x4402('0x1d')][_0x4402('0xe')]=function(_0x399c24){if(_0x399c24[_0x4402('0x1e')]===_0x4402('0x1f')){for(var _0x231382 in this['faxAccounts']){if(this['faxAccounts'][_0x4402('0x20')](_0x231382)){if(_0x399c24[_0x4402('0x21')]===this['faxAccounts'][_0x231382][_0x4402('0x22')]){this[_0x4402('0xb')][_0x399c24['uniqueid']]={};this[_0x4402('0xb')][_0x399c24['uniqueid']]['channel']=_0x399c24[_0x4402('0x23')];this[_0x4402('0xb')][_0x399c24[_0x4402('0x24')]]['id']=this['faxAccounts'][_0x231382]['id'];this[_0x4402('0xb')][_0x399c24['uniqueid']]['name']=this[_0x4402('0x25')][_0x231382][_0x4402('0x26')];logger[_0x4402('0x27')](_0x399c24[_0x4402('0x24')],_0x4402('0x28'));}}}}if(this[_0x4402('0xd')][_0x399c24[_0x4402('0x24')]]){this[_0x4402('0xb')][_0x399c24[_0x4402('0x24')]]={};this['channels'][_0x399c24[_0x4402('0x24')]]['channel']=_0x399c24[_0x4402('0x23')];logger[_0x4402('0x27')](_0x399c24[_0x4402('0x24')],_0x4402('0x28'));}};Fax['prototype'][_0x4402('0x10')]=function(_0x4e9cb5){if(this['channels'][_0x4e9cb5[_0x4402('0x24')]]){for(var _0x395e49 in _0x4e9cb5[_0x4402('0x29')]){if(_0x4e9cb5[_0x4402('0x29')][_0x4402('0x20')](_0x395e49)){this['channels'][_0x4e9cb5[_0x4402('0x24')]][_0x395e49]=_0x4e9cb5['value'];}}}};Fax[_0x4402('0x1d')][_0x4402('0x12')]=function(_0x42dd32){if(this['channels'][_0x42dd32[_0x4402('0x24')]]){this[_0x4402('0xb')][_0x42dd32[_0x4402('0x24')]][_0x4402('0x2a')]=_0x42dd32[_0x4402('0x2a')];this[_0x4402('0xb')][_0x42dd32[_0x4402('0x24')]][_0x4402('0x2b')]=_0x42dd32[_0x4402('0x2b')];}};Fax[_0x4402('0x1d')][_0x4402('0x14')]=function(_0x50748c){if(this[_0x4402('0xb')][_0x50748c['uniqueid']]){for(var _0x336168 in _0x50748c['variable']){if(_0x50748c[_0x4402('0x29')][_0x4402('0x20')](_0x336168)){this[_0x4402('0xb')][_0x50748c[_0x4402('0x24')]][_0x336168]=_0x50748c[_0x4402('0x2c')];}}}};Fax['prototype'][_0x4402('0x16')]=function(_0x3fa7ae){if(this[_0x4402('0xb')][_0x3fa7ae['uniqueid']]){this[_0x4402('0xb')][_0x3fa7ae[_0x4402('0x24')]]['operation']=_0x3fa7ae[_0x4402('0x2d')];this[_0x4402('0xb')][_0x3fa7ae[_0x4402('0x24')]][_0x4402('0x2e')]=_0x3fa7ae[_0x4402('0x2e')];this[_0x4402('0xb')][_0x3fa7ae[_0x4402('0x24')]][_0x4402('0x22')]=_0x3fa7ae[_0x4402('0x22')];this['channels'][_0x3fa7ae[_0x4402('0x24')]][_0x4402('0x2f')]=_0x3fa7ae[_0x4402('0x2f')];logger['info'](_0x3fa7ae[_0x4402('0x24')],_0x4402('0x30'));}};Fax['prototype']['syncReceiveFax']=function(_0x2b9d51){var _0x5b7c2e=this;if(this[_0x4402('0xb')][_0x2b9d51[_0x4402('0x24')]]){var _0x5569a2=this['channels'][_0x2b9d51['uniqueid']]['id'];this[_0x4402('0xb')][_0x2b9d51[_0x4402('0x24')]][_0x4402('0x31')]=_0x2b9d51[_0x4402('0x31')];this['channels'][_0x2b9d51[_0x4402('0x24')]][_0x4402('0x32')]=_0x2b9d51[_0x4402('0x32')];this['channels'][_0x2b9d51[_0x4402('0x24')]]['localstationid']=_0x2b9d51[_0x4402('0x22')];this[_0x4402('0xb')][_0x2b9d51['uniqueid']][_0x4402('0x33')]=_0x2b9d51['resolution'];this[_0x4402('0xb')][_0x2b9d51[_0x4402('0x24')]]['transferrate']=_0x2b9d51[_0x4402('0x34')];this[_0x4402('0xb')][_0x2b9d51[_0x4402('0x24')]][_0x4402('0x2f')]=_0x2b9d51['filename'];this['channels'][_0x2b9d51[_0x4402('0x24')]]['calleridnum']=_0x2b9d51[_0x4402('0x35')];if(this[_0x4402('0xb')][_0x2b9d51[_0x4402('0x24')]][_0x4402('0x32')]>0x0){tiff2pdf(_0x2b9d51[_0x4402('0x2f')],_0x4402('0x36'),function(_0x173040){logger[_0x4402('0x27')](_0x2b9d51[_0x4402('0x24')],_0x4402('0x37'),_0x173040['message']);attachment[_0x4402('0x38')]({'name':path[_0x4402('0x39')](_0x2b9d51['filename'])[_0x4402('0x26')],'basename':path[_0x4402('0x39')](_0x2b9d51['filename'])[_0x4402('0x26')]+_0x4402('0x3a'),'type':_0x4402('0x3b')})[_0x4402('0x3c')](function(_0x13a3a4){faxAccount['notify'](_0x5569a2,{'from':_0x2b9d51[_0x4402('0x35')],'mapKey':_0x4402('0x6'),'body':path[_0x4402('0x39')](_0x2b9d51[_0x4402('0x2f')])[_0x4402('0x26')]+_0x4402('0x3a'),'AttachmentId':_0x13a3a4['id']})[_0x4402('0x3d')](function(_0x136c9c){logger[_0x4402('0x3e')](_0x2b9d51[_0x4402('0x24')],_0x4402('0x3f'),JSON['stringify'](_0x136c9c));});})[_0x4402('0x3d')](function(_0x4ff240){logger[_0x4402('0x3e')](_0x2b9d51[_0x4402('0x24')],'\x20receiveFax\x20',JSON[_0x4402('0x40')](_0x4ff240));});});}logger[_0x4402('0x27')](_0x2b9d51[_0x4402('0x24')],_0x4402('0x41'));}};Fax[_0x4402('0x1d')][_0x4402('0x1c')]=function(_0x5b094b){if(this[_0x4402('0xd')][_0x5b094b[_0x4402('0x24')]]){_[_0x4402('0x42')](this[_0x4402('0xb')][_0x5b094b[_0x4402('0x24')]],_[_0x4402('0x43')](_0x5b094b,[_0x4402('0x44'),_0x4402('0x45')]));}};function updateStatus(_0x216488){if(_0x216488['AttachmentId']){faxMessage['update'](_0x216488['AttachmentId'],{'failMessage':'SENDING\x20FAILED\x20'})[_0x4402('0x3c')](function(_0x29e67b){ut[_0x4402('0x46')](_0x4402('0x47'),_0x29e67b);})['catch'](function(_0x169bb2){ut[_0x4402('0x46')](_0x4402('0x48'),_0x169bb2);});}else{ut[_0x4402('0x46')](_0x4402('0x49'));}}Fax[_0x4402('0x1d')][_0x4402('0x4a')]=function(_0x53d306,_0x325b20,_0x2a8085){var _0x38e6d1=this;var _0x11c162={};if(_0x325b20){_0x11c162={'read':_0x325b20};}else{_0x11c162={'failMessage':_0x2a8085};}if(this[_0x4402('0xd')][_0x53d306][_0x4402('0x4b')]){faxMessage['update'](this[_0x4402('0xd')][_0x53d306][_0x4402('0x4b')],_0x11c162)[_0x4402('0x3c')](function(_0x295c9b){ut[_0x4402('0x46')](_0x4402('0x4c'),_0x295c9b);})[_0x4402('0x3d')](function(_0x5dbf62){ut['logger'](_0x4402('0x4d'),_0x5dbf62);})[_0x4402('0x4e')](function(){delete _0x38e6d1[_0x4402('0xb')][_0x53d306];delete _0x38e6d1['actions'][_0x53d306];});}else{ut['logger'](_0x4402('0x4f'));delete this[_0x4402('0xb')][_0x53d306];delete this[_0x4402('0xd')][_0x53d306];}};Fax[_0x4402('0x1d')][_0x4402('0x1a')]=function(_0x37ba14){var _0x248104=this;if(this[_0x4402('0xb')][_0x37ba14[_0x4402('0x24')]]){if(this[_0x4402('0xd')][_0x37ba14[_0x4402('0x24')]]){this[_0x4402('0xb')][_0x37ba14[_0x4402('0x24')]]['id']=this['actions'][_0x37ba14[_0x4402('0x24')]]['id'];this['channels'][_0x37ba14[_0x4402('0x24')]]['name']=this[_0x4402('0xd')][_0x37ba14[_0x4402('0x24')]][_0x4402('0x26')];}logger[_0x4402('0x27')](_0x37ba14[_0x4402('0x24')],this[_0x4402('0xd')][_0x37ba14['uniqueid']]?_0x4402('0x50'):_0x4402('0x51'),JSON[_0x4402('0x40')](this[_0x4402('0xb')][_0x37ba14[_0x4402('0x24')]]));if(this['actions'][_0x37ba14[_0x4402('0x24')]]){if(this[_0x4402('0xb')][_0x37ba14[_0x4402('0x24')]][_0x4402('0x52')]>0x0&&this[_0x4402('0xb')][_0x37ba14[_0x4402('0x24')]][_0x4402('0x15')]===_0x4402('0x53')){this['updateStatus'](_0x37ba14[_0x4402('0x24')],!![]);}else{this[_0x4402('0x4a')](_0x37ba14['uniqueid'],![],this[_0x4402('0xb')][_0x37ba14[_0x4402('0x24')]]['faxstatusstring']?'SENDING\x20FAILED:\x20'+this[_0x4402('0xb')][_0x37ba14[_0x4402('0x24')]][_0x4402('0x54')]:'SENDING\x20FAILED');}}}};Fax[_0x4402('0x1d')][_0x4402('0x55')]=function(_0x30e49b){var _0x55f261=this;return new BPromise(function(_0x2fe275,_0x41a2c6){_0x55f261[_0x4402('0x56')](_0x30e49b,_0x55f261['faxAccounts'][_0x30e49b[_0x4402('0x57')]])[_0x4402('0x3c')](function(_0x4f9865){ut['logger'](_0x4402('0x58'),_0x4f9865);_0x2fe275(ut['message'](_0x4402('0x59')));})[_0x4402('0x3d')](function(_0x4a83ac){ut['logger'](_0x4402('0x5a'),_0x4a83ac);updateStatus(_0x30e49b);_0x41a2c6(ut[_0x4402('0x5b')](_0x4402('0x5c')));});});};Fax[_0x4402('0x1d')]['checkAfterSend']=function(_0x1ee8a9){var _0x30e5d5=this;return new BPromise(function(_0x22ed41,_0x168095){var _0x2b2b40=_0x30e5d5[_0x4402('0x5d')](_0x30e5d5[_0x4402('0x25')][_0x1ee8a9['FaxAccountId']][_0x4402('0x5e')],_0x1ee8a9);if(_0x2b2b40[_0x4402('0x5f')]){_0x22ed41(ut['message']('Trunk\x20Reachable'));}else{_0x168095(ut[_0x4402('0x5b')](_0x2b2b40['message']));}});};function originate(_0x30569e,_0x586689,_0xc2ac06){return new BPromise(function(_0x10b89a,_0x22260b){if(_0xc2ac06){var _0x3f196a=util[_0x4402('0x60')](_0x4402('0x61'),path[_0x4402('0x39')](_0x30569e[_0x4402('0x62')])[_0x4402('0x26')],_0x30569e[_0x4402('0x62')]);gs[_0x4402('0x63')](_0x3f196a)[_0x4402('0x3c')](function(){_0x30569e[_0x4402('0x62')]=util[_0x4402('0x60')](_0x4402('0x64'),path[_0x4402('0x39')](_0x30569e['path'])[_0x4402('0x65')],path[_0x4402('0x39')](_0x30569e[_0x4402('0x62')])['name']);_0x586689[_0x4402('0x66')]=_0x30569e['path'];ut[_0x4402('0x46')](_0x4402('0x67'),'');ami[_0x4402('0x68')](ut[_0x4402('0x69')](_0x30569e,_0x586689))['then'](function(_0xac8513){_0x10b89a(_0xac8513);})['catch'](function(_0x127d47){_0x22260b(_0x127d47);});})[_0x4402('0x3d')](function(_0x24ee20){_0x22260b(_0x24ee20);});}else{ami['Action'](ut[_0x4402('0x69')](_0x30569e,_0x586689))['then'](function(_0x349ad1){_0x10b89a(_0x349ad1);})[_0x4402('0x3d')](function(_0x1be905){_0x22260b(_0x1be905);});}});}Fax[_0x4402('0x1d')][_0x4402('0x56')]=function(_0x1d0bf4,_0x19b427){var _0x2bed7c=this;return new BPromise(function(_0x438048,_0x5054f9){var _0x44d806=uuid['v4']();var _0x55a767=ut[_0x4402('0x6a')](_0x1d0bf4,_0x19b427);_0x2bed7c[_0x4402('0xd')][_0x44d806]=new Action(_0x44d806,_0x19b427,_0x1d0bf4);var _0x4734ef=_0x2bed7c[_0x4402('0xd')][_0x44d806];if(path[_0x4402('0x39')](_0x1d0bf4[_0x4402('0x62')])[_0x4402('0x6b')]==='.pdf'){originate(_0x4734ef,_0x55a767,!![])[_0x4402('0x3c')](function(_0x2a6dc1){_0x438048(_0x2a6dc1);})[_0x4402('0x3d')](function(_0x4c4845){_0x5054f9(_0x4c4845);});}else{originate(_0x4734ef,_0x55a767,![])[_0x4402('0x3c')](function(_0x59fc06){_0x438048(_0x59fc06);})[_0x4402('0x3d')](function(_0x4f3d70){_0x5054f9(_0x4f3d70);});}});};Fax[_0x4402('0x1d')][_0x4402('0x6c')]=function(_0x552962){return!_[_0x4402('0x6d')](_0x552962)&&!_['isNil'](_0x552962[_0x4402('0x26')])&&!_[_0x4402('0x6d')](_0x552962['active'])&&_0x552962[_0x4402('0x6e')]&&!_[_0x4402('0x6d')](this['trunks'][util[_0x4402('0x60')](_0x4402('0x6f'),_0x552962['name'])])&&!_[_0x4402('0x6d')](this[_0x4402('0xc')][util[_0x4402('0x60')](_0x4402('0x6f'),_0x552962[_0x4402('0x26')])][_0x4402('0x2e')])&&(this[_0x4402('0xc')][util[_0x4402('0x60')](_0x4402('0x6f'),_0x552962[_0x4402('0x26')])][_0x4402('0x2e')]===_0x4402('0x70')||this[_0x4402('0xc')][util[_0x4402('0x60')]('SIP/%s',_0x552962[_0x4402('0x26')])][_0x4402('0x2e')]==='unmonitored');};Fax[_0x4402('0x1d')]['checkTrunk']=function(_0x2c7ff5,_0x778945){if(!this[_0x4402('0x6c')](_0x2c7ff5)){ut['logger'](_0x4402('0x71'),_[_0x4402('0x6d')](_0x2c7ff5)?'':_0x2c7ff5[_0x4402('0x26')]+'\x20Trunk\x20is\x20not\x20active');return{'isValid':![],'message':_0x4402('0x72')};}if(_[_0x4402('0x6d')](_0x778945[_0x4402('0x6')])){ut[_0x4402('0x46')]('[Fax][checkTrunk][Empty\x20Fax]',JSON[_0x4402('0x40')](_0x778945));return{'isValid':![],'message':_0x4402('0x73')};}if(_[_0x4402('0x6d')](_0x778945[_0x4402('0x62')])){ut[_0x4402('0x46')](_0x4402('0x74'),JSON[_0x4402('0x40')](_0x778945));return{'isValid':![],'message':_0x4402('0x75')};}return{'isValid':!![],'message':_0x4402('0x76')};};module[_0x4402('0x77')]=Fax;
\ No newline at end of file