0f22fede7a94f79a735dca55f164cc64495ab08c
[motion2.git] / server / api / faxMessage / faxMessage.controller.js
1 // *************************************************************************
2 // *                                                                       *
3 // * xCALLY Motion -  The Omnichannel Contact Center                       *
4 // * Copyright (c) Xenialab s.r.l. All Rights Reserved                     *
5 // *                                                                       *
6 // *************************************************************************
7 // *                                                                       *
8 // * Email: info@xcally.com                                                *
9 // * Website: https://www.xcally.com                                       *
10 // *                                                                       *
11 // *************************************************************************
12 // *                                                                       *
13 // * The SOFTWARE PRODUCT is protected by copyright laws and international *
14 // * copyright treaties, as well as other intellectual property laws and   *
15 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                         *
16 // *                                                                       *
17 // *************************************************************************
18 var _0x58fe=['end','status','json','offset','undefined','limit','count','set','Content-Range','apply','reject','save','update','destroy','sendStatus','stack','name','send','map','rawAttributes','type','key','model','query','keys','intersection','attributes','fields','length','hasOwnProperty','nolimit','sort','where','filters','pick','filter','VIRTUAL','options','findAll','rows','params','includeAll','include','merge','FaxMessage','find','body','describe','../../config/logger','fax-interactions','accept','fax','readAt','format','YYYY-MM-DD\x20HH:mm:ss','UserId','user','agent','FaxInteraction','FaxInteractionId','isNil','read1stAt','interaction','get','[FAXMESSAGE:ACCEPT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s','stringify','null','SELECT\x20*\x20FROM\x20cm_contacts\x20WHERE\x20id\x20=\x20','sequelize','Sequelize','contact','fullname','email','manual','interface','SIP/%s','channel','motionChannel','event','EventManager','acceptmessage','[FAXMESSAGE:REJECT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s','role','RejectMessage','rejectMessage','ContactId','QueryTypes','User','internal','rejectmessage','create','CmContact','findOne','AttachmentId','SendFax','FaxAccountId','root','server','files','attachments','Attachment','download','join','basename','eml-format','zip-dir','request-promise','moment','mustache','util','path','to-csv','ejs','lodash','crypto','jsforce','desk.js','querystring','papaparse','../../components/parsers/advancedSearch','../../config/license/hardware','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','redis','defaults','localhost','socket.io-emitter','client','http','then','FaxMessage,\x20%s,\x20%s','request\x20sent','debug','FaxMessage,\x20%s,\x20%s,\x20%s','error','code','message','info','result','catch'];(function(_0x1f6f84,_0x2bab55){var _0x177f40=function(_0x384ab4){while(--_0x384ab4){_0x1f6f84['push'](_0x1f6f84['shift']());}};_0x177f40(++_0x2bab55);}(_0x58fe,0x68));var _0xe58f=function(_0x3d2d6f,_0x368872){_0x3d2d6f=_0x3d2d6f-0x0;var _0x5c0022=_0x58fe[_0x3d2d6f];return _0x5c0022;};'use strict';var emlformat=require(_0xe58f('0x0'));var rimraf=require('rimraf');var zipdir=require(_0xe58f('0x1'));var jsonpatch=require('fast-json-patch');var rp=require(_0xe58f('0x2'));var moment=require(_0xe58f('0x3'));var BPromise=require('bluebird');var Mustache=require(_0xe58f('0x4'));var util=require(_0xe58f('0x5'));var path=require(_0xe58f('0x6'));var sox=require('sox');var csv=require(_0xe58f('0x7'));var ejs=require(_0xe58f('0x8'));var fs=require('fs');var fs_extra=require('fs-extra');var _=require(_0xe58f('0x9'));var squel=require('squel');var crypto=require(_0xe58f('0xa'));var jsforce=require(_0xe58f('0xb'));var deskjs=require(_0xe58f('0xc'));var toCsv=require(_0xe58f('0x7'));var querystring=require(_0xe58f('0xd'));var Papa=require(_0xe58f('0xe'));var Redis=require('ioredis');var authService=require('../../components/auth/service');var qs=require('../../components/parsers/qs');var as=require(_0xe58f('0xf'));var hardwareService=require(_0xe58f('0x10'));var logger=require('../../config/logger')(_0xe58f('0x11'));var utils=require(_0xe58f('0x12'));var config=require(_0xe58f('0x13'));var licenseUtil=require(_0xe58f('0x14'));var db=require(_0xe58f('0x15'))['db'];config[_0xe58f('0x16')]=_[_0xe58f('0x17')](config[_0xe58f('0x16')],{'host':_0xe58f('0x18'),'port':0x18eb});var socket=require(_0xe58f('0x19'))(new Redis(config[_0xe58f('0x16')]));require('./faxMessage.socket')['register'](socket);var jayson=require('jayson/promise');var client=jayson[_0xe58f('0x1a')]['http']({'port':0x232c});var client9002=jayson[_0xe58f('0x1a')][_0xe58f('0x1b')]({'port':0x232a});function respondWithRpcPromise(_0x27afd9,_0x559755,_0xa359b1,_0x1886a0){return new BPromise(function(_0x304260,_0x5f53c8){var _0x3550d1=_0x1886a0||client;return _0x3550d1['request'](_0x27afd9,_0xa359b1)[_0xe58f('0x1c')](function(_0x1c9881){logger['info'](_0xe58f('0x1d'),_0x559755,_0xe58f('0x1e'));logger[_0xe58f('0x1f')](_0xe58f('0x20'),_0x559755,_0xe58f('0x1e'),JSON['stringify'](_0x1c9881));if(_0x1c9881['error']){if(_0x1c9881[_0xe58f('0x21')][_0xe58f('0x22')]===0x1f4){logger[_0xe58f('0x21')]('FaxMessage,\x20%s,\x20%s',_0x559755,_0x1c9881['error']['message']);return _0x5f53c8(_0x1c9881['error'][_0xe58f('0x23')]);}logger['error'](_0xe58f('0x1d'),_0x559755,_0x1c9881[_0xe58f('0x21')][_0xe58f('0x23')]);return _0x304260(_0x1c9881[_0xe58f('0x21')][_0xe58f('0x23')]);}else{logger[_0xe58f('0x24')](_0xe58f('0x1d'),_0x559755,_0xe58f('0x1e'));_0x304260(_0x1c9881[_0xe58f('0x25')]['message']);}})[_0xe58f('0x26')](function(_0x3462e2){logger[_0xe58f('0x21')](_0xe58f('0x1d'),_0x559755,_0x3462e2);_0x5f53c8(_0x3462e2);});});}function respondWithStatusCode(_0x28188c,_0x5245cb){_0x5245cb=_0x5245cb||0xcc;return function(_0x2fc4a1){if(_0x2fc4a1){return _0x28188c['sendStatus'](_0x5245cb);}return _0x28188c['status'](_0x5245cb)[_0xe58f('0x27')]();};}function respondWithResult(_0x467ea4,_0x7e3fc6){_0x7e3fc6=_0x7e3fc6||0xc8;return function(_0x15780f){if(_0x15780f){return _0x467ea4[_0xe58f('0x28')](_0x7e3fc6)[_0xe58f('0x29')](_0x15780f);}};}function respondWithFilteredResult(_0x329463,_0x5a9910){return function(_0x592181){if(_0x592181){var _0x1ae8ee=typeof _0x5a9910[_0xe58f('0x2a')]===_0xe58f('0x2b')&&typeof _0x5a9910[_0xe58f('0x2c')]===_0xe58f('0x2b');var _0x2eef9c=_0x592181['count'];var _0x2c3ed3=_0x1ae8ee?0x0:_0x5a9910[_0xe58f('0x2a')];var _0x266cec=_0x1ae8ee?_0x592181[_0xe58f('0x2d')]:_0x5a9910['offset']+_0x5a9910['limit'];var _0x5ed957;if(_0x266cec>=_0x2eef9c){_0x266cec=_0x2eef9c;_0x5ed957=0xc8;}else{_0x5ed957=0xce;}_0x329463[_0xe58f('0x28')](_0x5ed957);return _0x329463[_0xe58f('0x2e')](_0xe58f('0x2f'),_0x2c3ed3+'-'+_0x266cec+'/'+_0x2eef9c)[_0xe58f('0x29')](_0x592181);}return null;};}function patchUpdates(_0x3b3727){return function(_0x313270){try{jsonpatch[_0xe58f('0x30')](_0x313270,_0x3b3727,!![]);}catch(_0xc46f9f){return BPromise[_0xe58f('0x31')](_0xc46f9f);}return _0x313270[_0xe58f('0x32')]();};}function saveUpdates(_0x1a61b7,_0x2fa6e8){return function(_0x27f589){if(_0x27f589){return _0x27f589[_0xe58f('0x33')](_0x1a61b7)['then'](function(_0x46139c){return _0x46139c;});}return null;};}function removeEntity(_0x7a08fe,_0x1f6a0d){return function(_0x236e7a){if(_0x236e7a){return _0x236e7a[_0xe58f('0x34')]()['then'](function(){_0x7a08fe[_0xe58f('0x28')](0xcc)[_0xe58f('0x27')]();});}};}function handleEntityNotFound(_0x1753c5,_0x527136){return function(_0x287385){if(!_0x287385){_0x1753c5[_0xe58f('0x35')](0x194);}return _0x287385;};}function handleError(_0x317294,_0x58cc52){_0x58cc52=_0x58cc52||0x1f4;return function(_0x35d71e){logger[_0xe58f('0x21')](_0x35d71e[_0xe58f('0x36')]);if(_0x35d71e['name']){delete _0x35d71e[_0xe58f('0x37')];}_0x317294[_0xe58f('0x28')](_0x58cc52)[_0xe58f('0x38')](_0x35d71e);};}exports['index']=function(_0x5c3e12,_0x400a56){var _0x4aa358={},_0x169896={},_0x33f0bc={'count':0x0,'rows':[]};var _0x442218=_[_0xe58f('0x39')](db['FaxMessage'][_0xe58f('0x3a')],function(_0x1a700f){return{'name':_0x1a700f['fieldName'],'type':_0x1a700f[_0xe58f('0x3b')][_0xe58f('0x3c')]};});_0x169896[_0xe58f('0x3d')]=_[_0xe58f('0x39')](_0x442218,_0xe58f('0x37'));_0x169896[_0xe58f('0x3e')]=_[_0xe58f('0x3f')](_0x5c3e12['query']);_0x169896['filters']=_[_0xe58f('0x40')](_0x169896['model'],_0x169896[_0xe58f('0x3e')]);_0x4aa358[_0xe58f('0x41')]=_[_0xe58f('0x40')](_0x169896[_0xe58f('0x3d')],qs[_0xe58f('0x42')](_0x5c3e12[_0xe58f('0x3e')]['fields']));_0x4aa358[_0xe58f('0x41')]=_0x4aa358[_0xe58f('0x41')][_0xe58f('0x43')]?_0x4aa358['attributes']:_0x169896[_0xe58f('0x3d')];if(!_0x5c3e12['query'][_0xe58f('0x44')](_0xe58f('0x45'))){_0x4aa358['limit']=qs[_0xe58f('0x2c')](_0x5c3e12[_0xe58f('0x3e')][_0xe58f('0x2c')]);_0x4aa358['offset']=qs['offset'](_0x5c3e12[_0xe58f('0x3e')][_0xe58f('0x2a')]);}_0x4aa358['order']=qs[_0xe58f('0x46')](_0x5c3e12[_0xe58f('0x3e')][_0xe58f('0x46')]);_0x4aa358[_0xe58f('0x47')]=qs[_0xe58f('0x48')](_[_0xe58f('0x49')](_0x5c3e12[_0xe58f('0x3e')],_0x169896[_0xe58f('0x48')]),_0x442218);if(_0x5c3e12['query'][_0xe58f('0x4a')]){_0x4aa358['where']=_['merge'](_0x4aa358['where'],{'$or':_[_0xe58f('0x39')](_0x442218,function(_0x3a8e3c){if(_0x3a8e3c[_0xe58f('0x3b')]!==_0xe58f('0x4b')){var _0x2421c0={};_0x2421c0[_0x3a8e3c[_0xe58f('0x37')]]={'$like':'%'+_0x5c3e12[_0xe58f('0x3e')][_0xe58f('0x4a')]+'%'};return _0x2421c0;}})});}_0x4aa358=_['merge']({},_0x4aa358,_0x5c3e12[_0xe58f('0x4c')]);var _0x4bfede={'where':_0x4aa358['where']};return db['FaxMessage'][_0xe58f('0x2d')](_0x4bfede)['then'](function(_0x23175e){_0x33f0bc[_0xe58f('0x2d')]=_0x23175e;if(_0x5c3e12[_0xe58f('0x3e')]['includeAll']){_0x4aa358['include']=[{'all':!![]}];}return db['FaxMessage'][_0xe58f('0x4d')](_0x4aa358);})[_0xe58f('0x1c')](function(_0x1fda94){_0x33f0bc[_0xe58f('0x4e')]=_0x1fda94;return _0x33f0bc;})[_0xe58f('0x1c')](respondWithFilteredResult(_0x400a56,_0x4aa358))['catch'](handleError(_0x400a56,null));};exports['show']=function(_0xaa2fd5,_0xdf3f77){var _0x3fbe5d={'raw':!![],'where':{'id':_0xaa2fd5[_0xe58f('0x4f')]['id']}},_0x2e3a93={};_0x2e3a93[_0xe58f('0x3d')]=_['keys'](db['FaxMessage'][_0xe58f('0x3a')]);_0x2e3a93['query']=_[_0xe58f('0x3f')](_0xaa2fd5[_0xe58f('0x3e')]);_0x2e3a93[_0xe58f('0x48')]=_[_0xe58f('0x40')](_0x2e3a93[_0xe58f('0x3d')],_0x2e3a93[_0xe58f('0x3e')]);_0x3fbe5d[_0xe58f('0x41')]=_[_0xe58f('0x40')](_0x2e3a93[_0xe58f('0x3d')],qs['fields'](_0xaa2fd5[_0xe58f('0x3e')][_0xe58f('0x42')]));_0x3fbe5d[_0xe58f('0x41')]=_0x3fbe5d[_0xe58f('0x41')][_0xe58f('0x43')]?_0x3fbe5d[_0xe58f('0x41')]:_0x2e3a93[_0xe58f('0x3d')];if(_0xaa2fd5[_0xe58f('0x3e')][_0xe58f('0x50')]){_0x3fbe5d[_0xe58f('0x51')]=[{'all':!![]}];}_0x3fbe5d=_[_0xe58f('0x52')]({},_0x3fbe5d,_0xaa2fd5[_0xe58f('0x4c')]);return db[_0xe58f('0x53')][_0xe58f('0x54')](_0x3fbe5d)[_0xe58f('0x1c')](handleEntityNotFound(_0xdf3f77,null))['then'](respondWithResult(_0xdf3f77,null))['catch'](handleError(_0xdf3f77,null));};exports[_0xe58f('0x33')]=function(_0x35b6ce,_0x44b5f4){if(_0x35b6ce[_0xe58f('0x55')]['id']){delete _0x35b6ce['body']['id'];}return db['FaxMessage']['find']({'where':{'id':_0x35b6ce[_0xe58f('0x4f')]['id']}})[_0xe58f('0x1c')](handleEntityNotFound(_0x44b5f4,null))[_0xe58f('0x1c')](saveUpdates(_0x35b6ce[_0xe58f('0x55')],null))['then'](respondWithResult(_0x44b5f4,null))[_0xe58f('0x26')](handleError(_0x44b5f4,null));};exports[_0xe58f('0x34')]=function(_0x804519,_0x4809a2){return db[_0xe58f('0x53')]['find']({'where':{'id':_0x804519[_0xe58f('0x4f')]['id']}})[_0xe58f('0x1c')](handleEntityNotFound(_0x4809a2,null))['then'](removeEntity(_0x4809a2,null))[_0xe58f('0x26')](handleError(_0x4809a2,null));};exports[_0xe58f('0x56')]=function(_0x13a5a5,_0xa6f233){return db[_0xe58f('0x53')]['describe']()['then'](respondWithResult(_0xa6f233,null))['catch'](handleError(_0xa6f233,null));};var interaction_log=require(_0xe58f('0x57'))(_0xe58f('0x58'));exports[_0xe58f('0x59')]=function(_0x5bfe94,_0x2f3bf4,_0x171f90){var _0x2fbecf={'agent':{},'channel':_0xe58f('0x5a')};if(_0x5bfe94['body']['id']){delete _0x5bfe94[_0xe58f('0x55')]['id'];}_0x5bfe94[_0xe58f('0x55')]['read']=!![];_0x5bfe94[_0xe58f('0x55')][_0xe58f('0x5b')]=moment()[_0xe58f('0x5c')](_0xe58f('0x5d'));_0x5bfe94[_0xe58f('0x55')][_0xe58f('0x5e')]=_0x5bfe94[_0xe58f('0x55')][_0xe58f('0x5e')]||_0x5bfe94[_0xe58f('0x5f')]['id'];_0x2fbecf[_0xe58f('0x60')]['id']=_0x5bfe94[_0xe58f('0x55')][_0xe58f('0x5e')];return db[_0xe58f('0x53')][_0xe58f('0x54')]({'where':{'id':_0x5bfe94[_0xe58f('0x4f')]['id'],'UserId':null}})[_0xe58f('0x1c')](handleEntityNotFound(_0x2f3bf4,null))[_0xe58f('0x1c')](saveUpdates(_0x5bfe94[_0xe58f('0x55')],null))[_0xe58f('0x1c')](function(_0x199a7a){if(_0x199a7a){_0x2fbecf[_0xe58f('0x23')]=_0x199a7a['get']({'plain':!![]});return db[_0xe58f('0x61')][_0xe58f('0x54')]({'where':{'id':_0x199a7a[_0xe58f('0x62')]}});}return null;})[_0xe58f('0x1c')](handleEntityNotFound(_0x2f3bf4,null))[_0xe58f('0x1c')](function(_0x48237a){if(_0x48237a){return _0x48237a[_0xe58f('0x33')]({'UserId':_0x5bfe94['body']['UserId'],'read1stAt':_[_0xe58f('0x63')](_0x48237a[_0xe58f('0x64')])?moment()['format']('YYYY-MM-DD\x20HH:mm:ss'):undefined});}return null;})[_0xe58f('0x1c')](function(_0x141842){if(_0x141842){_0x2fbecf[_0xe58f('0x65')]=_0x141842[_0xe58f('0x66')]({'plain':!![]});interaction_log[_0xe58f('0x24')](_0xe58f('0x67'),_0x5bfe94[_0xe58f('0x5f')]['id'],_0x5bfe94[_0xe58f('0x5f')][_0xe58f('0x37')],_0x5bfe94[_0xe58f('0x5f')]['role'],_0x2fbecf['interaction']['id'],_0x5bfe94['body']?JSON[_0xe58f('0x68')](_0x5bfe94['body']):_0xe58f('0x69'));return respondWithRpcPromise('AcceptMessage','acceptMessage',_0x2fbecf);}return null;})[_0xe58f('0x1c')](function(_0x5a8e05){var _0x4c2271=_0xe58f('0x6a')+_0x5a8e05['message']['ContactId'];return db[_0xe58f('0x6b')][_0xe58f('0x3e')](_0x4c2271,{'type':db[_0xe58f('0x6c')]['QueryTypes']['SELECT'],'raw':!![]})['then'](function(_0x4e77ac){return _0x4e77ac;});})[_0xe58f('0x1c')](function(_0x12ec2a){if(_0x12ec2a){_0x2fbecf['message'][_0xe58f('0x6d')]=_0x12ec2a[0x0];if(!_0x5bfe94[_0xe58f('0x55')][_0xe58f('0x5e')])return;return db['User'][_0xe58f('0x54')]({'where':{'id':_0x5bfe94[_0xe58f('0x55')]['UserId'],'role':'agent'},'attributes':['id',_0xe58f('0x37'),_0xe58f('0x6e'),_0xe58f('0x6f'),'internal'],'raw':!![]});}return null;})[_0xe58f('0x1c')](function(_0x2c82d6){if(!_0x2c82d6)return null;_0x2fbecf[_0xe58f('0x23')][_0xe58f('0x60')]=_0x2c82d6;return _0x2fbecf;})[_0xe58f('0x1c')](function(_0x3d56c8){if(_0x3d56c8){if(_0x5bfe94[_0xe58f('0x55')][_0xe58f('0x70')]){_0x2fbecf[_0xe58f('0x23')][_0xe58f('0x71')]=util['format'](_0xe58f('0x72'),_0x5bfe94[_0xe58f('0x5f')][_0xe58f('0x37')]);_0x2fbecf[_0xe58f('0x23')][_0xe58f('0x73')]=_0x2fbecf[_0xe58f('0x73')];_0x2fbecf[_0xe58f('0x23')][_0xe58f('0x74')]=_0x2fbecf['channel'];_0x2fbecf[_0xe58f('0x23')][_0xe58f('0x75')]=_0xe58f('0x59');return respondWithRpcPromise(_0xe58f('0x76'),_0xe58f('0x76'),{'event':_0xe58f('0x77'),'message':_0x2fbecf[_0xe58f('0x23')]},client9002)[_0xe58f('0x1c')](function(){return _0x2fbecf;});}return _0x2fbecf;}return null;})[_0xe58f('0x1c')](respondWithResult(_0x2f3bf4,null))[_0xe58f('0x26')](handleError(_0x2f3bf4,null));};var interaction_log=require(_0xe58f('0x57'))(_0xe58f('0x58'));exports['reject']=function(_0x2124ba,_0x1f3a99,_0x1b699f){var _0x2b594e={'agent':{},'channel':'fax'};if(_0x2124ba[_0xe58f('0x55')]['id']){delete _0x2124ba[_0xe58f('0x55')]['id'];}_0x2124ba[_0xe58f('0x55')][_0xe58f('0x5e')]=_0x2124ba['body']['UserId']||_0x2124ba[_0xe58f('0x5f')]['id'];_0x2b594e['agent']['id']=_0x2124ba['body'][_0xe58f('0x5e')];return db[_0xe58f('0x53')][_0xe58f('0x54')]({'where':{'id':_0x2124ba[_0xe58f('0x4f')]['id'],'UserId':null}})[_0xe58f('0x1c')](handleEntityNotFound(_0x1f3a99,null))[_0xe58f('0x1c')](function(_0x3b80a0){if(_0x3b80a0){_0x2b594e[_0xe58f('0x23')]=_0x3b80a0['get']({'plain':!![]});return db[_0xe58f('0x61')][_0xe58f('0x54')]({'where':{'id':_0x3b80a0[_0xe58f('0x62')]}});}return null;})['then'](handleEntityNotFound(_0x1f3a99,null))[_0xe58f('0x1c')](function(_0xb93637){if(_0xb93637){_0x2b594e[_0xe58f('0x65')]=_0xb93637[_0xe58f('0x66')]({'plain':!![]});interaction_log[_0xe58f('0x24')](_0xe58f('0x78'),_0x2124ba[_0xe58f('0x5f')]['id'],_0x2124ba[_0xe58f('0x5f')]['name'],_0x2124ba[_0xe58f('0x5f')][_0xe58f('0x79')],_0x2b594e[_0xe58f('0x65')]['id'],_0x2124ba[_0xe58f('0x55')]?JSON[_0xe58f('0x68')](_0x2124ba[_0xe58f('0x55')]):_0xe58f('0x69'));return respondWithRpcPromise(_0xe58f('0x7a'),_0xe58f('0x7b'),_0x2b594e);}return null;})[_0xe58f('0x1c')](function(_0x352160){var _0x6cb749='SELECT\x20*\x20FROM\x20cm_contacts\x20WHERE\x20id\x20=\x20'+_0x352160['message'][_0xe58f('0x7c')];return db[_0xe58f('0x6b')]['query'](_0x6cb749,{'type':db['Sequelize'][_0xe58f('0x7d')]['SELECT'],'raw':!![]})[_0xe58f('0x1c')](function(_0x41a96c){return _0x41a96c;});})['then'](function(_0x2411b5){if(_0x2411b5){_0x2b594e[_0xe58f('0x23')][_0xe58f('0x6d')]=_0x2411b5[0x0];if(!_0x2124ba[_0xe58f('0x55')][_0xe58f('0x5e')])return;return db[_0xe58f('0x7e')][_0xe58f('0x54')]({'where':{'id':_0x2124ba[_0xe58f('0x55')][_0xe58f('0x5e')],'role':'agent'},'attributes':['id','name',_0xe58f('0x6e'),_0xe58f('0x6f'),_0xe58f('0x7f')],'raw':!![]});}return null;})[_0xe58f('0x1c')](function(_0x2a8992){if(!_0x2a8992)return null;_0x2b594e[_0xe58f('0x23')]['agent']=_0x2a8992;return _0x2b594e;})['then'](function(_0x1106c2){if(_0x1106c2){_0x1106c2[_0xe58f('0x23')][_0xe58f('0x71')]=util[_0xe58f('0x5c')](_0xe58f('0x72'),_0x2124ba['user'][_0xe58f('0x37')]);_0x1106c2[_0xe58f('0x23')][_0xe58f('0x73')]=_0x2b594e[_0xe58f('0x73')];_0x1106c2[_0xe58f('0x23')][_0xe58f('0x74')]=_0x2b594e[_0xe58f('0x73')];_0x1106c2['message'][_0xe58f('0x75')]='reject';respondWithRpcPromise(_0xe58f('0x76'),_0xe58f('0x76'),{'event':_0xe58f('0x80'),'message':_0x1106c2[_0xe58f('0x23')]},client9002);return _0x2b594e;}return null;})['then'](respondWithResult(_0x1f3a99,null))[_0xe58f('0x26')](handleError(_0x1f3a99,null));};exports[_0xe58f('0x81')]=function(_0x421b9f,_0x4d06b5){var _0x4705c0;return db['FaxMessage'][_0xe58f('0x81')](_0x421b9f['body'],{})[_0xe58f('0x1c')](function(_0x36636a){_0x4705c0=_0x36636a;return db[_0xe58f('0x82')][_0xe58f('0x83')]({'where':{'id':_0x4705c0[_0xe58f('0x7c')]}});})[_0xe58f('0x1c')](function(_0x45b9c1){if(_[_0xe58f('0x63')](_0x45b9c1)){return;}else{_0x4705c0['fax']=_0x45b9c1['fax'];return db['Attachment'][_0xe58f('0x83')]({'where':{'id':_0x4705c0[_0xe58f('0x84')]}});}})[_0xe58f('0x1c')](function(_0x419a6f){return respondWithRpcPromise(_0xe58f('0x85'),'SendFax',{'FaxAccountId':_['isNil'](_0x421b9f['body'])?undefined:_0x421b9f[_0xe58f('0x55')][_0xe58f('0x86')],'path':_['isNil'](_0x419a6f)?undefined:util[_0xe58f('0x5c')]('/var/opt/motion2/server/files/attachments/%s',_0x419a6f['basename']),'fax':_[_0xe58f('0x63')](_0x4705c0['fax'])?undefined:_0x4705c0[_0xe58f('0x5a')],'AttachmentId':_0x4705c0[_0xe58f('0x84')]},client9002);})[_0xe58f('0x1c')](respondWithResult(_0x4d06b5,0xc9))['catch'](handleError(_0x4d06b5,null));};exports['download']=function(_0x70ad3f,_0x3a829d){var _0x2b8009=path['join'](config[_0xe58f('0x87')],_0xe58f('0x88'),_0xe58f('0x89'),_0xe58f('0x8a'));return db[_0xe58f('0x53')]['find']({'where':{'id':_0x70ad3f['params']['id']},'include':[{'model':db[_0xe58f('0x8b')],'as':_0xe58f('0x8b')}]})[_0xe58f('0x1c')](handleEntityNotFound(_0x3a829d,null))['then'](function(_0x213056){if(_0x213056){return _0x3a829d[_0xe58f('0x8c')](path[_0xe58f('0x8d')](_0x2b8009,_0x213056[_0xe58f('0x8b')][_0xe58f('0x8e')]));}})[_0xe58f('0x26')](handleError(_0x3a829d,null));};