Built motion from commit 932cf0d0.|2.5.42
[motion2.git] / server / services / ami / fax / index.js
index ae0910b..ed568a7 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0xda3f=['variablesAction','addVariables','ext','isTrunkReachable','isNil','active','SIP/%s','unmonitored','[Fax][checkTrunk][Trunk\x20not\x20work]','[Fax][checkTrunk][Empty\x20Fax]','Empty\x20Fax','[Fax][checkTrunk][Empty\x20path]','Is\x20Valid','exports','lodash','bluebird','tiff2pdf','../../../config/logger','fax','./rpcDb','./channel','../rpc/faxAccount','../rpc/attachment','../rpc/faxMessage','channels','faxAccounts','trunks','actions','newchannel','syncNewchannel','varset','syncVarSet','bind','newstate','syncNewState','newexten','faxstatus','syncReceiveFax','originateresponse','syncOriginateResponse','prototype','context','from-voip-provider','hasOwnProperty','exten','localstationid','uniqueid','name','info','\x20syncNewchannel\x20','channel','variable','value','channelstatedesc','syncNewExten','syncFaxStatus','operation','status','filename','remotestationid','pagestransferred','resolution','transferrate','\x20result\x20conversion\x20file\x20','create','parse','.pdf','application/pdf','then','notify','calleridnum','catch','\x20notify\x20','stringify','error','\x20receiveFax\x20','merge','response','reason','update','AttachmentId','SENDING\x20FAILED\x20','[Fax][Message][Error][Updated]','[Fax][Message][Error][NoUpdate1]','logger','[Fax][Message][Error][NoUpdate2]','[Fax][Message][NoUpdate1]','finally','[Fax][Message][NoUpdate2]','syncHangup','\x20hangup\x20sendFile\x20','\x20hangup\x20faxRiceive\x20','SUCCESS','updateStatus','faxstatusstring','SENDING\x20FAILED:\x20','SENDING\x20FAILED','execOriginate','FaxAccountId','[Fax][execOriginate][success]','message','Fax\x20received','checkAfterSend','checkTrunk','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','%s/%s.tif','XMF-PATH','Action'];(function(_0xcd49a3,_0x9bda43){var _0xd391b4=function(_0x429d89){while(--_0x429d89){_0xcd49a3['push'](_0xcd49a3['shift']());}};_0xd391b4(++_0x9bda43);}(_0xda3f,0xec));var _0xfda3=function(_0x34c33b,_0x180caf){_0x34c33b=_0x34c33b-0x0;var _0x37b26d=_0xda3f[_0x34c33b];return _0x37b26d;};'use strict';var util=require('util');var _=require(_0xfda3('0x0'));var BPromise=require(_0xfda3('0x1'));var uuid=require('uuid');var moment=require('moment');var path=require('path');var tiff2pdf=require(_0xfda3('0x2'));var gs=require('./util/gs');var logger=require(_0xfda3('0x3'))(_0xfda3('0x4'));var ami=require('../ami');var rpcDb=require(_0xfda3('0x5'));var Channel=require(_0xfda3('0x6'));var ut=require('./util/util');var Action=require('./action');var faxAccount=require(_0xfda3('0x7'));var attachment=require(_0xfda3('0x8'));var faxMessage=require(_0xfda3('0x9'));function Fax(_0x4018c0){this[_0xfda3('0xa')]={};this[_0xfda3('0xb')]=_0x4018c0[_0xfda3('0xb')];this[_0xfda3('0xc')]=_0x4018c0[_0xfda3('0xc')];this[_0xfda3('0xd')]={};ami['on'](_0xfda3('0xe'),this[_0xfda3('0xf')]['bind'](this));ami['on'](_0xfda3('0x10'),this[_0xfda3('0x11')][_0xfda3('0x12')](this));ami['on'](_0xfda3('0x13'),this[_0xfda3('0x14')]['bind'](this));ami['on'](_0xfda3('0x15'),this['syncNewExten'][_0xfda3('0x12')](this));ami['on'](_0xfda3('0x16'),this['syncFaxStatus']['bind'](this));ami['on']('receivefax',this[_0xfda3('0x17')][_0xfda3('0x12')](this));ami['on']('hangup',this['syncHangup']['bind'](this));ami['on'](_0xfda3('0x18'),this[_0xfda3('0x19')][_0xfda3('0x12')](this));}Fax[_0xfda3('0x1a')][_0xfda3('0xf')]=function(_0x40d702){if(_0x40d702[_0xfda3('0x1b')]===_0xfda3('0x1c')){for(var _0x4680bf in this[_0xfda3('0xb')]){if(this['faxAccounts'][_0xfda3('0x1d')](_0x4680bf)){if(_0x40d702[_0xfda3('0x1e')]===this[_0xfda3('0xb')][_0x4680bf][_0xfda3('0x1f')]){this['channels'][_0x40d702[_0xfda3('0x20')]]={};this[_0xfda3('0xa')][_0x40d702[_0xfda3('0x20')]]['channel']=_0x40d702['channel'];this[_0xfda3('0xa')][_0x40d702[_0xfda3('0x20')]]['id']=this[_0xfda3('0xb')][_0x4680bf]['id'];this['channels'][_0x40d702[_0xfda3('0x20')]][_0xfda3('0x21')]=this[_0xfda3('0xb')][_0x4680bf][_0xfda3('0x21')];logger[_0xfda3('0x22')](_0x40d702[_0xfda3('0x20')],_0xfda3('0x23'));}}}}if(this[_0xfda3('0xd')][_0x40d702[_0xfda3('0x20')]]){this['channels'][_0x40d702[_0xfda3('0x20')]]={};this[_0xfda3('0xa')][_0x40d702[_0xfda3('0x20')]]['channel']=_0x40d702[_0xfda3('0x24')];logger[_0xfda3('0x22')](_0x40d702[_0xfda3('0x20')],_0xfda3('0x23'));}};Fax[_0xfda3('0x1a')][_0xfda3('0x11')]=function(_0x514d2a){if(this[_0xfda3('0xa')][_0x514d2a[_0xfda3('0x20')]]){for(var _0x2bef2b in _0x514d2a[_0xfda3('0x25')]){if(_0x514d2a[_0xfda3('0x25')]['hasOwnProperty'](_0x2bef2b)){this[_0xfda3('0xa')][_0x514d2a[_0xfda3('0x20')]][_0x2bef2b]=_0x514d2a[_0xfda3('0x26')];}}}};Fax[_0xfda3('0x1a')][_0xfda3('0x14')]=function(_0x3cfeb2){if(this[_0xfda3('0xa')][_0x3cfeb2['uniqueid']]){this['channels'][_0x3cfeb2[_0xfda3('0x20')]]['channelstate']=_0x3cfeb2['channelstate'];this[_0xfda3('0xa')][_0x3cfeb2[_0xfda3('0x20')]][_0xfda3('0x27')]=_0x3cfeb2[_0xfda3('0x27')];}};Fax[_0xfda3('0x1a')][_0xfda3('0x28')]=function(_0x404531){if(this[_0xfda3('0xa')][_0x404531[_0xfda3('0x20')]]){for(var _0x5825bd in _0x404531[_0xfda3('0x25')]){if(_0x404531[_0xfda3('0x25')][_0xfda3('0x1d')](_0x5825bd)){this[_0xfda3('0xa')][_0x404531[_0xfda3('0x20')]][_0x5825bd]=_0x404531[_0xfda3('0x26')];}}}};Fax[_0xfda3('0x1a')][_0xfda3('0x29')]=function(_0x2bb705){if(this['channels'][_0x2bb705['uniqueid']]){this[_0xfda3('0xa')][_0x2bb705[_0xfda3('0x20')]]['operation']=_0x2bb705[_0xfda3('0x2a')];this[_0xfda3('0xa')][_0x2bb705[_0xfda3('0x20')]]['status']=_0x2bb705[_0xfda3('0x2b')];this[_0xfda3('0xa')][_0x2bb705[_0xfda3('0x20')]][_0xfda3('0x1f')]=_0x2bb705[_0xfda3('0x1f')];this['channels'][_0x2bb705[_0xfda3('0x20')]][_0xfda3('0x2c')]=_0x2bb705[_0xfda3('0x2c')];logger['info'](_0x2bb705[_0xfda3('0x20')],'\x20syncFaxStatus\x20');}};Fax[_0xfda3('0x1a')][_0xfda3('0x17')]=function(_0x43a58a){var _0x36a506=this;if(this[_0xfda3('0xa')][_0x43a58a[_0xfda3('0x20')]]){var _0x151f32=this[_0xfda3('0xa')][_0x43a58a['uniqueid']]['id'];this[_0xfda3('0xa')][_0x43a58a[_0xfda3('0x20')]][_0xfda3('0x2d')]=_0x43a58a[_0xfda3('0x2d')];this['channels'][_0x43a58a[_0xfda3('0x20')]][_0xfda3('0x2e')]=_0x43a58a[_0xfda3('0x2e')];this['channels'][_0x43a58a['uniqueid']][_0xfda3('0x1f')]=_0x43a58a[_0xfda3('0x1f')];this[_0xfda3('0xa')][_0x43a58a[_0xfda3('0x20')]][_0xfda3('0x2f')]=_0x43a58a[_0xfda3('0x2f')];this[_0xfda3('0xa')][_0x43a58a[_0xfda3('0x20')]][_0xfda3('0x30')]=_0x43a58a[_0xfda3('0x30')];this['channels'][_0x43a58a[_0xfda3('0x20')]][_0xfda3('0x2c')]=_0x43a58a['filename'];this[_0xfda3('0xa')][_0x43a58a['uniqueid']]['calleridnum']=_0x43a58a['calleridnum'];if(this[_0xfda3('0xa')][_0x43a58a[_0xfda3('0x20')]][_0xfda3('0x2e')]>0x0){tiff2pdf(_0x43a58a[_0xfda3('0x2c')],'/var/opt/motion2/server/files/attachments/',function(_0x8f0905){logger[_0xfda3('0x22')](_0x43a58a[_0xfda3('0x20')],_0xfda3('0x31'),_0x8f0905['message']);attachment[_0xfda3('0x32')]({'name':path[_0xfda3('0x33')](_0x43a58a[_0xfda3('0x2c')])['name'],'basename':path['parse'](_0x43a58a[_0xfda3('0x2c')])[_0xfda3('0x21')]+_0xfda3('0x34'),'type':_0xfda3('0x35')})[_0xfda3('0x36')](function(_0x73e8e4){faxAccount[_0xfda3('0x37')](_0x151f32,{'from':_0x43a58a[_0xfda3('0x38')],'mapKey':_0xfda3('0x4'),'body':path[_0xfda3('0x33')](_0x43a58a[_0xfda3('0x2c')])[_0xfda3('0x21')]+_0xfda3('0x34'),'AttachmentId':_0x73e8e4['id']})[_0xfda3('0x39')](function(_0x57013b){logger['error'](_0x43a58a[_0xfda3('0x20')],_0xfda3('0x3a'),JSON[_0xfda3('0x3b')](_0x57013b));});})[_0xfda3('0x39')](function(_0x597e5a){logger[_0xfda3('0x3c')](_0x43a58a[_0xfda3('0x20')],_0xfda3('0x3d'),JSON[_0xfda3('0x3b')](_0x597e5a));});});}logger[_0xfda3('0x22')](_0x43a58a['uniqueid'],_0xfda3('0x3d'));}};Fax[_0xfda3('0x1a')][_0xfda3('0x19')]=function(_0x36aa3a){if(this[_0xfda3('0xd')][_0x36aa3a['uniqueid']]){_[_0xfda3('0x3e')](this[_0xfda3('0xa')][_0x36aa3a[_0xfda3('0x20')]],_['pick'](_0x36aa3a,[_0xfda3('0x3f'),_0xfda3('0x40')]));}};function updateStatus(_0x11addf){if(_0x11addf['AttachmentId']){faxMessage[_0xfda3('0x41')](_0x11addf[_0xfda3('0x42')],{'failMessage':_0xfda3('0x43')})[_0xfda3('0x36')](function(_0x1ab4a8){ut['logger'](_0xfda3('0x44'),_0x1ab4a8);})['catch'](function(_0x17fe20){ut['logger'](_0xfda3('0x45'),_0x17fe20);});}else{ut[_0xfda3('0x46')](_0xfda3('0x47'));}}Fax[_0xfda3('0x1a')]['updateStatus']=function(_0x244c24,_0x3b430d,_0x2f2c32){var _0x372f15=this;var _0x18425a={};if(_0x3b430d){_0x18425a={'read':_0x3b430d};}else{_0x18425a={'failMessage':_0x2f2c32};}if(this[_0xfda3('0xd')][_0x244c24][_0xfda3('0x42')]){faxMessage['update'](this['actions'][_0x244c24][_0xfda3('0x42')],_0x18425a)[_0xfda3('0x36')](function(_0x218ee5){ut['logger']('[Fax][Message][Updated]',_0x218ee5);})[_0xfda3('0x39')](function(_0x1d6606){ut[_0xfda3('0x46')](_0xfda3('0x48'),_0x1d6606);})[_0xfda3('0x49')](function(){delete _0x372f15['channels'][_0x244c24];delete _0x372f15[_0xfda3('0xd')][_0x244c24];});}else{ut[_0xfda3('0x46')](_0xfda3('0x4a'));delete this[_0xfda3('0xa')][_0x244c24];delete this[_0xfda3('0xd')][_0x244c24];}};Fax[_0xfda3('0x1a')][_0xfda3('0x4b')]=function(_0x1c5073){var _0x3a8c51=this;if(this[_0xfda3('0xa')][_0x1c5073[_0xfda3('0x20')]]){if(this[_0xfda3('0xd')][_0x1c5073['uniqueid']]){this[_0xfda3('0xa')][_0x1c5073[_0xfda3('0x20')]]['id']=this[_0xfda3('0xd')][_0x1c5073[_0xfda3('0x20')]]['id'];this[_0xfda3('0xa')][_0x1c5073[_0xfda3('0x20')]][_0xfda3('0x21')]=this['actions'][_0x1c5073['uniqueid']][_0xfda3('0x21')];}logger[_0xfda3('0x22')](_0x1c5073['uniqueid'],this[_0xfda3('0xd')][_0x1c5073[_0xfda3('0x20')]]?_0xfda3('0x4c'):_0xfda3('0x4d'),JSON['stringify'](this['channels'][_0x1c5073[_0xfda3('0x20')]]));if(this[_0xfda3('0xd')][_0x1c5073[_0xfda3('0x20')]]){if(this['channels'][_0x1c5073[_0xfda3('0x20')]]['faxpages']>0x0&&this[_0xfda3('0xa')][_0x1c5073[_0xfda3('0x20')]][_0xfda3('0x16')]===_0xfda3('0x4e')){this[_0xfda3('0x4f')](_0x1c5073[_0xfda3('0x20')],!![]);}else{this['updateStatus'](_0x1c5073[_0xfda3('0x20')],![],this[_0xfda3('0xa')][_0x1c5073[_0xfda3('0x20')]][_0xfda3('0x50')]?_0xfda3('0x51')+this['channels'][_0x1c5073['uniqueid']][_0xfda3('0x50')]:_0xfda3('0x52'));}}}};Fax['prototype']['send']=function(_0x512d7b){var _0x248174=this;return new BPromise(function(_0x2c93d4,_0x4f3e45){_0x248174[_0xfda3('0x53')](_0x512d7b,_0x248174[_0xfda3('0xb')][_0x512d7b[_0xfda3('0x54')]])[_0xfda3('0x36')](function(_0x51e463){ut[_0xfda3('0x46')](_0xfda3('0x55'),_0x51e463);_0x2c93d4(ut[_0xfda3('0x56')](_0xfda3('0x57')));})[_0xfda3('0x39')](function(_0xf252ce){ut['logger']('[Fax][execOriginate][failure]',_0xf252ce);updateStatus(_0x512d7b);_0x4f3e45(ut[_0xfda3('0x56')]('Fax\x20failed'));});});};Fax[_0xfda3('0x1a')][_0xfda3('0x58')]=function(_0x20704a){var _0x3884b1=this;return new BPromise(function(_0x1d6547,_0x3c0155){var _0x44185c=_0x3884b1[_0xfda3('0x59')](_0x3884b1[_0xfda3('0xb')][_0x20704a[_0xfda3('0x54')]]['Trunk'],_0x20704a);if(_0x44185c[_0xfda3('0x5a')]){_0x1d6547(ut['message']('Trunk\x20Reachable'));}else{_0x3c0155(ut[_0xfda3('0x56')](_0x44185c[_0xfda3('0x56')]));}});};function originate(_0x531874,_0xa3b2e0,_0x26e1f5){return new BPromise(function(_0x42e387,_0x589c7a){if(_0x26e1f5){var _0x1a825c=util[_0xfda3('0x5b')](_0xfda3('0x5c'),path[_0xfda3('0x33')](_0x531874[_0xfda3('0x5d')])['name'],_0x531874['path']);gs['execute'](_0x1a825c)[_0xfda3('0x36')](function(){_0x531874[_0xfda3('0x5d')]=util[_0xfda3('0x5b')](_0xfda3('0x5e'),path[_0xfda3('0x33')](_0x531874[_0xfda3('0x5d')])['dir'],path[_0xfda3('0x33')](_0x531874[_0xfda3('0x5d')])[_0xfda3('0x21')]);_0xa3b2e0[_0xfda3('0x5f')]=_0x531874['path'];ut[_0xfda3('0x46')]('Convert\x20pdf\x20to\x20tif','');ami[_0xfda3('0x60')](ut[_0xfda3('0x61')](_0x531874,_0xa3b2e0))[_0xfda3('0x36')](function(_0x16e8f0){_0x42e387(_0x16e8f0);})[_0xfda3('0x39')](function(_0x291695){_0x589c7a(_0x291695);});})[_0xfda3('0x39')](function(_0x5af4bd){_0x589c7a(_0x5af4bd);});}else{ami[_0xfda3('0x60')](ut[_0xfda3('0x61')](_0x531874,_0xa3b2e0))[_0xfda3('0x36')](function(_0x2c3a49){_0x42e387(_0x2c3a49);})[_0xfda3('0x39')](function(_0x119564){_0x589c7a(_0x119564);});}});}Fax['prototype'][_0xfda3('0x53')]=function(_0x15041,_0x17161f){var _0x3ebf07=this;return new BPromise(function(_0x3ce543,_0x4a0a1c){var _0x174167=uuid['v4']();var _0x1d5b7a=ut[_0xfda3('0x62')](_0x15041,_0x17161f);_0x3ebf07[_0xfda3('0xd')][_0x174167]=new Action(_0x174167,_0x17161f,_0x15041);var _0xcb7ff4=_0x3ebf07[_0xfda3('0xd')][_0x174167];if(path[_0xfda3('0x33')](_0x15041[_0xfda3('0x5d')])[_0xfda3('0x63')]===_0xfda3('0x34')){originate(_0xcb7ff4,_0x1d5b7a,!![])['then'](function(_0x1c0e07){_0x3ce543(_0x1c0e07);})[_0xfda3('0x39')](function(_0x46210d){_0x4a0a1c(_0x46210d);});}else{originate(_0xcb7ff4,_0x1d5b7a,![])[_0xfda3('0x36')](function(_0x213bb1){_0x3ce543(_0x213bb1);})['catch'](function(_0x5e54e5){_0x4a0a1c(_0x5e54e5);});}});};Fax[_0xfda3('0x1a')][_0xfda3('0x64')]=function(_0x120fe9){return!_[_0xfda3('0x65')](_0x120fe9)&&!_[_0xfda3('0x65')](_0x120fe9[_0xfda3('0x21')])&&!_[_0xfda3('0x65')](_0x120fe9[_0xfda3('0x66')])&&_0x120fe9[_0xfda3('0x66')]&&!_[_0xfda3('0x65')](this[_0xfda3('0xc')][util['format'](_0xfda3('0x67'),_0x120fe9['name'])])&&!_['isNil'](this['trunks'][util[_0xfda3('0x5b')]('SIP/%s',_0x120fe9[_0xfda3('0x21')])][_0xfda3('0x2b')])&&(this['trunks'][util[_0xfda3('0x5b')](_0xfda3('0x67'),_0x120fe9['name'])][_0xfda3('0x2b')]==='reachable'||this[_0xfda3('0xc')][util[_0xfda3('0x5b')]('SIP/%s',_0x120fe9[_0xfda3('0x21')])][_0xfda3('0x2b')]===_0xfda3('0x68'));};Fax[_0xfda3('0x1a')][_0xfda3('0x59')]=function(_0x4e5791,_0x2bde10){if(!this[_0xfda3('0x64')](_0x4e5791)){ut[_0xfda3('0x46')](_0xfda3('0x69'),_[_0xfda3('0x65')](_0x4e5791)?'':_0x4e5791['name']+'\x20Trunk\x20is\x20not\x20active');return{'isValid':![],'message':'Trunk\x20not\x20working'};}if(_[_0xfda3('0x65')](_0x2bde10[_0xfda3('0x4')])){ut[_0xfda3('0x46')](_0xfda3('0x6a'),JSON[_0xfda3('0x3b')](_0x2bde10));return{'isValid':![],'message':_0xfda3('0x6b')};}if(_[_0xfda3('0x65')](_0x2bde10[_0xfda3('0x5d')])){ut['logger'](_0xfda3('0x6c'),JSON[_0xfda3('0x3b')](_0x2bde10));return{'isValid':![],'message':'Empty\x20path'};}return{'isValid':!![],'message':_0xfda3('0x6d')};};module[_0xfda3('0x6e')]=Fax;
\ No newline at end of file
+var _0x63a5=['[Fax][Message][NoUpdate2]','syncHangup','\x20hangup\x20sendFile\x20','\x20hangup\x20faxRiceive\x20','SUCCESS','faxstatusstring','SENDING\x20FAILED:\x20','SENDING\x20FAILED','send','FaxAccountId','[Fax][execOriginate][success]','Fax\x20received','Fax\x20failed','checkAfterSend','Trunk','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','path','execute','%s/%s.tif','dir','Convert\x20pdf\x20to\x20tif','Action','variablesAction','execOriginate','ext','isTrunkReachable','isNil','active','SIP/%s','reachable','unmonitored','checkTrunk','[Fax][checkTrunk][Trunk\x20not\x20work]','Trunk\x20not\x20working','[Fax][checkTrunk][Empty\x20Fax]','Empty\x20Fax','Empty\x20path','Is\x20Valid','exports','util','lodash','bluebird','moment','tiff2pdf','./util/gs','../../../config/logger','fax','./channel','./action','../rpc/faxAccount','channels','faxAccounts','trunks','actions','newchannel','syncNewchannel','bind','varset','syncVarSet','newstate','newexten','syncNewExten','faxstatus','syncFaxStatus','receivefax','syncReceiveFax','hangup','originateresponse','syncOriginateResponse','prototype','context','hasOwnProperty','uniqueid','channel','name','info','\x20syncNewchannel\x20','variable','value','channelstate','channelstatedesc','operation','status','localstationid','filename','\x20syncFaxStatus\x20','remotestationid','resolution','transferrate','pagestransferred','/var/opt/motion2/server/files/attachments/','\x20result\x20conversion\x20file\x20','message','create','parse','.pdf','application/pdf','notify','calleridnum','catch','\x20notify\x20','stringify','error','\x20receiveFax\x20','pick','response','reason','AttachmentId','update','SENDING\x20FAILED\x20','then','logger','[Fax][Message][Error][NoUpdate1]','updateStatus','[Fax][Message][Updated]','[Fax][Message][NoUpdate1]','finally'];(function(_0x21a9d9,_0x4d5ac8){var _0x46adce=function(_0xfdd336){while(--_0xfdd336){_0x21a9d9['push'](_0x21a9d9['shift']());}};_0x46adce(++_0x4d5ac8);}(_0x63a5,0x18e));var _0x563a=function(_0x456fb1,_0x859a1d){_0x456fb1=_0x456fb1-0x0;var _0x4083d6=_0x63a5[_0x456fb1];return _0x4083d6;};'use strict';var util=require(_0x563a('0x0'));var _=require(_0x563a('0x1'));var BPromise=require(_0x563a('0x2'));var uuid=require('uuid');var moment=require(_0x563a('0x3'));var path=require('path');var tiff2pdf=require(_0x563a('0x4'));var gs=require(_0x563a('0x5'));var logger=require(_0x563a('0x6'))(_0x563a('0x7'));var ami=require('../ami');var rpcDb=require('./rpcDb');var Channel=require(_0x563a('0x8'));var ut=require('./util/util');var Action=require(_0x563a('0x9'));var faxAccount=require(_0x563a('0xa'));var attachment=require('../rpc/attachment');var faxMessage=require('../rpc/faxMessage');function Fax(_0xff1f59){this[_0x563a('0xb')]={};this[_0x563a('0xc')]=_0xff1f59[_0x563a('0xc')];this[_0x563a('0xd')]=_0xff1f59[_0x563a('0xd')];this[_0x563a('0xe')]={};ami['on'](_0x563a('0xf'),this[_0x563a('0x10')][_0x563a('0x11')](this));ami['on'](_0x563a('0x12'),this[_0x563a('0x13')][_0x563a('0x11')](this));ami['on'](_0x563a('0x14'),this['syncNewState'][_0x563a('0x11')](this));ami['on'](_0x563a('0x15'),this[_0x563a('0x16')][_0x563a('0x11')](this));ami['on'](_0x563a('0x17'),this[_0x563a('0x18')]['bind'](this));ami['on'](_0x563a('0x19'),this[_0x563a('0x1a')][_0x563a('0x11')](this));ami['on'](_0x563a('0x1b'),this['syncHangup']['bind'](this));ami['on'](_0x563a('0x1c'),this[_0x563a('0x1d')]['bind'](this));}Fax[_0x563a('0x1e')][_0x563a('0x10')]=function(_0x162a5a){if(_0x162a5a[_0x563a('0x1f')]==='from-voip-provider'){for(var _0x598693 in this[_0x563a('0xc')]){if(this[_0x563a('0xc')][_0x563a('0x20')](_0x598693)){if(_0x162a5a['exten']===this['faxAccounts'][_0x598693]['localstationid']){this['channels'][_0x162a5a[_0x563a('0x21')]]={};this[_0x563a('0xb')][_0x162a5a[_0x563a('0x21')]][_0x563a('0x22')]=_0x162a5a['channel'];this['channels'][_0x162a5a[_0x563a('0x21')]]['id']=this[_0x563a('0xc')][_0x598693]['id'];this[_0x563a('0xb')][_0x162a5a[_0x563a('0x21')]][_0x563a('0x23')]=this[_0x563a('0xc')][_0x598693][_0x563a('0x23')];logger[_0x563a('0x24')](_0x162a5a['uniqueid'],_0x563a('0x25'));}}}}if(this['actions'][_0x162a5a[_0x563a('0x21')]]){this[_0x563a('0xb')][_0x162a5a[_0x563a('0x21')]]={};this[_0x563a('0xb')][_0x162a5a[_0x563a('0x21')]][_0x563a('0x22')]=_0x162a5a[_0x563a('0x22')];logger[_0x563a('0x24')](_0x162a5a['uniqueid'],_0x563a('0x25'));}};Fax[_0x563a('0x1e')][_0x563a('0x13')]=function(_0x3d79ac){if(this[_0x563a('0xb')][_0x3d79ac[_0x563a('0x21')]]){for(var _0x1afdff in _0x3d79ac[_0x563a('0x26')]){if(_0x3d79ac[_0x563a('0x26')][_0x563a('0x20')](_0x1afdff)){this[_0x563a('0xb')][_0x3d79ac[_0x563a('0x21')]][_0x1afdff]=_0x3d79ac[_0x563a('0x27')];}}}};Fax[_0x563a('0x1e')]['syncNewState']=function(_0x43379c){if(this[_0x563a('0xb')][_0x43379c[_0x563a('0x21')]]){this['channels'][_0x43379c[_0x563a('0x21')]][_0x563a('0x28')]=_0x43379c[_0x563a('0x28')];this[_0x563a('0xb')][_0x43379c[_0x563a('0x21')]][_0x563a('0x29')]=_0x43379c[_0x563a('0x29')];}};Fax['prototype'][_0x563a('0x16')]=function(_0x24ec9d){if(this[_0x563a('0xb')][_0x24ec9d[_0x563a('0x21')]]){for(var _0x1a77b8 in _0x24ec9d['variable']){if(_0x24ec9d['variable']['hasOwnProperty'](_0x1a77b8)){this['channels'][_0x24ec9d[_0x563a('0x21')]][_0x1a77b8]=_0x24ec9d[_0x563a('0x27')];}}}};Fax[_0x563a('0x1e')][_0x563a('0x18')]=function(_0x3e39b6){if(this[_0x563a('0xb')][_0x3e39b6['uniqueid']]){this['channels'][_0x3e39b6[_0x563a('0x21')]][_0x563a('0x2a')]=_0x3e39b6[_0x563a('0x2a')];this[_0x563a('0xb')][_0x3e39b6[_0x563a('0x21')]][_0x563a('0x2b')]=_0x3e39b6[_0x563a('0x2b')];this[_0x563a('0xb')][_0x3e39b6[_0x563a('0x21')]][_0x563a('0x2c')]=_0x3e39b6[_0x563a('0x2c')];this[_0x563a('0xb')][_0x3e39b6[_0x563a('0x21')]][_0x563a('0x2d')]=_0x3e39b6[_0x563a('0x2d')];logger[_0x563a('0x24')](_0x3e39b6['uniqueid'],_0x563a('0x2e'));}};Fax[_0x563a('0x1e')][_0x563a('0x1a')]=function(_0x5abfe4){var _0xfd4cee=this;if(this['channels'][_0x5abfe4[_0x563a('0x21')]]){var _0x930c24=this['channels'][_0x5abfe4['uniqueid']]['id'];this[_0x563a('0xb')][_0x5abfe4['uniqueid']][_0x563a('0x2f')]=_0x5abfe4[_0x563a('0x2f')];this[_0x563a('0xb')][_0x5abfe4[_0x563a('0x21')]]['pagestransferred']=_0x5abfe4['pagestransferred'];this[_0x563a('0xb')][_0x5abfe4['uniqueid']][_0x563a('0x2c')]=_0x5abfe4[_0x563a('0x2c')];this[_0x563a('0xb')][_0x5abfe4[_0x563a('0x21')]][_0x563a('0x30')]=_0x5abfe4[_0x563a('0x30')];this[_0x563a('0xb')][_0x5abfe4[_0x563a('0x21')]]['transferrate']=_0x5abfe4[_0x563a('0x31')];this['channels'][_0x5abfe4[_0x563a('0x21')]][_0x563a('0x2d')]=_0x5abfe4[_0x563a('0x2d')];this[_0x563a('0xb')][_0x5abfe4['uniqueid']]['calleridnum']=_0x5abfe4['calleridnum'];if(this[_0x563a('0xb')][_0x5abfe4[_0x563a('0x21')]][_0x563a('0x32')]>0x0){tiff2pdf(_0x5abfe4[_0x563a('0x2d')],_0x563a('0x33'),function(_0x2c7fb3){logger[_0x563a('0x24')](_0x5abfe4[_0x563a('0x21')],_0x563a('0x34'),_0x2c7fb3[_0x563a('0x35')]);attachment[_0x563a('0x36')]({'name':path[_0x563a('0x37')](_0x5abfe4[_0x563a('0x2d')])[_0x563a('0x23')],'basename':path[_0x563a('0x37')](_0x5abfe4[_0x563a('0x2d')])[_0x563a('0x23')]+_0x563a('0x38'),'type':_0x563a('0x39')})['then'](function(_0x54109c){faxAccount[_0x563a('0x3a')](_0x930c24,{'from':_0x5abfe4[_0x563a('0x3b')],'mapKey':_0x563a('0x7'),'body':path[_0x563a('0x37')](_0x5abfe4[_0x563a('0x2d')])[_0x563a('0x23')]+_0x563a('0x38'),'AttachmentId':_0x54109c['id']})[_0x563a('0x3c')](function(_0x568af8){logger['error'](_0x5abfe4[_0x563a('0x21')],_0x563a('0x3d'),JSON[_0x563a('0x3e')](_0x568af8));});})[_0x563a('0x3c')](function(_0x3fed69){logger[_0x563a('0x3f')](_0x5abfe4[_0x563a('0x21')],_0x563a('0x40'),JSON['stringify'](_0x3fed69));});});}logger[_0x563a('0x24')](_0x5abfe4[_0x563a('0x21')],'\x20receiveFax\x20');}};Fax[_0x563a('0x1e')]['syncOriginateResponse']=function(_0x3ea787){if(this[_0x563a('0xe')][_0x3ea787[_0x563a('0x21')]]){_['merge'](this[_0x563a('0xb')][_0x3ea787[_0x563a('0x21')]],_[_0x563a('0x41')](_0x3ea787,[_0x563a('0x42'),_0x563a('0x43')]));}};function updateStatus(_0x18b686){if(_0x18b686[_0x563a('0x44')]){faxMessage[_0x563a('0x45')](_0x18b686[_0x563a('0x44')],{'failMessage':_0x563a('0x46')})[_0x563a('0x47')](function(_0x109224){ut[_0x563a('0x48')]('[Fax][Message][Error][Updated]',_0x109224);})['catch'](function(_0x2803d6){ut[_0x563a('0x48')](_0x563a('0x49'),_0x2803d6);});}else{ut['logger']('[Fax][Message][Error][NoUpdate2]');}}Fax[_0x563a('0x1e')][_0x563a('0x4a')]=function(_0x50ebde,_0x4b6ba9,_0x51e142){var _0x1a957e=this;var _0x46dd3a={};if(_0x4b6ba9){_0x46dd3a={'read':_0x4b6ba9};}else{_0x46dd3a={'failMessage':_0x51e142};}if(this[_0x563a('0xe')][_0x50ebde][_0x563a('0x44')]){faxMessage[_0x563a('0x45')](this[_0x563a('0xe')][_0x50ebde]['AttachmentId'],_0x46dd3a)['then'](function(_0xfd8006){ut['logger'](_0x563a('0x4b'),_0xfd8006);})[_0x563a('0x3c')](function(_0x3e993e){ut[_0x563a('0x48')](_0x563a('0x4c'),_0x3e993e);})[_0x563a('0x4d')](function(){delete _0x1a957e[_0x563a('0xb')][_0x50ebde];delete _0x1a957e['actions'][_0x50ebde];});}else{ut[_0x563a('0x48')](_0x563a('0x4e'));delete this['channels'][_0x50ebde];delete this[_0x563a('0xe')][_0x50ebde];}};Fax[_0x563a('0x1e')][_0x563a('0x4f')]=function(_0x2afa8c){var _0x456821=this;if(this[_0x563a('0xb')][_0x2afa8c[_0x563a('0x21')]]){if(this[_0x563a('0xe')][_0x2afa8c[_0x563a('0x21')]]){this[_0x563a('0xb')][_0x2afa8c['uniqueid']]['id']=this[_0x563a('0xe')][_0x2afa8c[_0x563a('0x21')]]['id'];this['channels'][_0x2afa8c['uniqueid']][_0x563a('0x23')]=this[_0x563a('0xe')][_0x2afa8c['uniqueid']][_0x563a('0x23')];}logger['info'](_0x2afa8c[_0x563a('0x21')],this[_0x563a('0xe')][_0x2afa8c[_0x563a('0x21')]]?_0x563a('0x50'):_0x563a('0x51'),JSON['stringify'](this['channels'][_0x2afa8c['uniqueid']]));if(this['actions'][_0x2afa8c[_0x563a('0x21')]]){if(this['channels'][_0x2afa8c[_0x563a('0x21')]]['faxpages']>0x0&&this[_0x563a('0xb')][_0x2afa8c[_0x563a('0x21')]][_0x563a('0x17')]===_0x563a('0x52')){this[_0x563a('0x4a')](_0x2afa8c['uniqueid'],!![]);}else{this[_0x563a('0x4a')](_0x2afa8c['uniqueid'],![],this['channels'][_0x2afa8c[_0x563a('0x21')]][_0x563a('0x53')]?_0x563a('0x54')+this[_0x563a('0xb')][_0x2afa8c[_0x563a('0x21')]]['faxstatusstring']:_0x563a('0x55'));}}}};Fax[_0x563a('0x1e')][_0x563a('0x56')]=function(_0x3bbe7c){var _0x36d40c=this;return new BPromise(function(_0x4c88c4,_0xac578c){_0x36d40c['execOriginate'](_0x3bbe7c,_0x36d40c[_0x563a('0xc')][_0x3bbe7c[_0x563a('0x57')]])['then'](function(_0x34dd59){ut[_0x563a('0x48')](_0x563a('0x58'),_0x34dd59);_0x4c88c4(ut[_0x563a('0x35')](_0x563a('0x59')));})[_0x563a('0x3c')](function(_0x608257){ut[_0x563a('0x48')]('[Fax][execOriginate][failure]',_0x608257);updateStatus(_0x3bbe7c);_0xac578c(ut[_0x563a('0x35')](_0x563a('0x5a')));});});};Fax[_0x563a('0x1e')][_0x563a('0x5b')]=function(_0x1b603d){var _0x2c4a9c=this;return new BPromise(function(_0x4636f9,_0x5e3e88){var _0x1e1919=_0x2c4a9c['checkTrunk'](_0x2c4a9c['faxAccounts'][_0x1b603d['FaxAccountId']][_0x563a('0x5c')],_0x1b603d);if(_0x1e1919['isValid']){_0x4636f9(ut['message'](_0x563a('0x5d')));}else{_0x5e3e88(ut[_0x563a('0x35')](_0x1e1919[_0x563a('0x35')]));}});};function originate(_0x42d396,_0x2e442f,_0x51220c){return new BPromise(function(_0x4814b3,_0x4c9ad7){if(_0x51220c){var _0x39b8f8=util[_0x563a('0x5e')](_0x563a('0x5f'),path[_0x563a('0x37')](_0x42d396[_0x563a('0x60')])[_0x563a('0x23')],_0x42d396['path']);gs[_0x563a('0x61')](_0x39b8f8)[_0x563a('0x47')](function(){_0x42d396['path']=util[_0x563a('0x5e')](_0x563a('0x62'),path[_0x563a('0x37')](_0x42d396['path'])[_0x563a('0x63')],path[_0x563a('0x37')](_0x42d396[_0x563a('0x60')])[_0x563a('0x23')]);_0x2e442f['XMF-PATH']=_0x42d396[_0x563a('0x60')];ut[_0x563a('0x48')](_0x563a('0x64'),'');ami[_0x563a('0x65')](ut[_0x563a('0x66')](_0x42d396,_0x2e442f))['then'](function(_0x47eda2){_0x4814b3(_0x47eda2);})[_0x563a('0x3c')](function(_0x598a91){_0x4c9ad7(_0x598a91);});})[_0x563a('0x3c')](function(_0x1ecc63){_0x4c9ad7(_0x1ecc63);});}else{ami[_0x563a('0x65')](ut[_0x563a('0x66')](_0x42d396,_0x2e442f))[_0x563a('0x47')](function(_0x233596){_0x4814b3(_0x233596);})[_0x563a('0x3c')](function(_0x1a111f){_0x4c9ad7(_0x1a111f);});}});}Fax[_0x563a('0x1e')][_0x563a('0x67')]=function(_0x5a2959,_0x1a4c59){var _0x5eec1d=this;return new BPromise(function(_0x163097,_0x441933){var _0x54c512=uuid['v4']();var _0x17d62c=ut['addVariables'](_0x5a2959,_0x1a4c59);_0x5eec1d[_0x563a('0xe')][_0x54c512]=new Action(_0x54c512,_0x1a4c59,_0x5a2959);var _0x42c448=_0x5eec1d['actions'][_0x54c512];if(path[_0x563a('0x37')](_0x5a2959[_0x563a('0x60')])[_0x563a('0x68')]===_0x563a('0x38')){originate(_0x42c448,_0x17d62c,!![])['then'](function(_0x418646){_0x163097(_0x418646);})[_0x563a('0x3c')](function(_0x17000b){_0x441933(_0x17000b);});}else{originate(_0x42c448,_0x17d62c,![])[_0x563a('0x47')](function(_0x474aca){_0x163097(_0x474aca);})[_0x563a('0x3c')](function(_0x15f9f7){_0x441933(_0x15f9f7);});}});};Fax[_0x563a('0x1e')][_0x563a('0x69')]=function(_0x238ae4){return!_['isNil'](_0x238ae4)&&!_[_0x563a('0x6a')](_0x238ae4[_0x563a('0x23')])&&!_[_0x563a('0x6a')](_0x238ae4['active'])&&_0x238ae4[_0x563a('0x6b')]&&!_[_0x563a('0x6a')](this[_0x563a('0xd')][util[_0x563a('0x5e')](_0x563a('0x6c'),_0x238ae4[_0x563a('0x23')])])&&!_[_0x563a('0x6a')](this[_0x563a('0xd')][util[_0x563a('0x5e')](_0x563a('0x6c'),_0x238ae4[_0x563a('0x23')])][_0x563a('0x2b')])&&(this[_0x563a('0xd')][util['format'](_0x563a('0x6c'),_0x238ae4[_0x563a('0x23')])]['status']===_0x563a('0x6d')||this[_0x563a('0xd')][util[_0x563a('0x5e')](_0x563a('0x6c'),_0x238ae4[_0x563a('0x23')])][_0x563a('0x2b')]===_0x563a('0x6e'));};Fax[_0x563a('0x1e')][_0x563a('0x6f')]=function(_0x5d4e5a,_0x2e38a){if(!this[_0x563a('0x69')](_0x5d4e5a)){ut[_0x563a('0x48')](_0x563a('0x70'),_['isNil'](_0x5d4e5a)?'':_0x5d4e5a['name']+'\x20Trunk\x20is\x20not\x20active');return{'isValid':![],'message':_0x563a('0x71')};}if(_[_0x563a('0x6a')](_0x2e38a[_0x563a('0x7')])){ut[_0x563a('0x48')](_0x563a('0x72'),JSON[_0x563a('0x3e')](_0x2e38a));return{'isValid':![],'message':_0x563a('0x73')};}if(_[_0x563a('0x6a')](_0x2e38a[_0x563a('0x60')])){ut[_0x563a('0x48')]('[Fax][checkTrunk][Empty\x20path]',JSON[_0x563a('0x3e')](_0x2e38a));return{'isValid':![],'message':_0x563a('0x74')};}return{'isValid':!![],'message':_0x563a('0x75')};};module[_0x563a('0x76')]=Fax;
\ No newline at end of file