80c16b72d99b94ae65995d961341a57339e270a4
[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 _0x2106=['read1stAt','interaction','[FAXMESSAGE:ACCEPT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s','AcceptMessage','SELECT\x20*\x20FROM\x20cm_contacts\x20WHERE\x20id\x20=\x20','sequelize','Sequelize','QueryTypes','SELECT','User','agent','fullname','email','channel','event','EventManager','acceptmessage','FaxInteractionId','[FAXMESSAGE:REJECT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s','role','null','RejectMessage','rejectMessage','ContactId','contact','internal','interface','motionChannel','rejectmessage','CmContact','isNil','fax','Attachment','AttachmentId','SendFax','FaxAccountId','/var/opt/motion2/server/files/attachments/%s','basename','download','server','files','attachments','join','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','util','sox','to-csv','ejs','fs-extra','lodash','squel','crypto','desk.js','querystring','ioredis','../../components/auth/service','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','../../config/utils','../../config/environment','../../config/license/util','redis','defaults','localhost','socket.io-emitter','./faxMessage.socket','register','client','http','then','info','FaxMessage,\x20%s,\x20%s','request\x20sent','stringify','error','message','result','sendStatus','status','end','offset','undefined','limit','count','Content-Range','json','reject','save','update','stack','name','send','index','map','FaxMessage','rawAttributes','fieldName','type','query','keys','filters','intersection','attributes','fields','length','hasOwnProperty','nolimit','order','sort','where','pick','filter','merge','options','findAll','rows','catch','show','params','model','includeAll','include','find','body','destroy','describe','fax-interactions','accept','read','readAt','format','YYYY-MM-DD\x20HH:mm:ss','UserId','user','get','FaxInteraction'];(function(_0x341e0f,_0x4a09d0){var _0x59555a=function(_0x4343a8){while(--_0x4343a8){_0x341e0f['push'](_0x341e0f['shift']());}};_0x59555a(++_0x4a09d0);}(_0x2106,0x14b));var _0x6210=function(_0x589753,_0x4ea48a){_0x589753=_0x589753-0x0;var _0x2d5c50=_0x2106[_0x589753];return _0x2d5c50;};'use strict';var emlformat=require(_0x6210('0x0'));var rimraf=require(_0x6210('0x1'));var zipdir=require(_0x6210('0x2'));var jsonpatch=require(_0x6210('0x3'));var rp=require(_0x6210('0x4'));var moment=require(_0x6210('0x5'));var BPromise=require(_0x6210('0x6'));var Mustache=require(_0x6210('0x7'));var util=require(_0x6210('0x8'));var path=require('path');var sox=require(_0x6210('0x9'));var csv=require(_0x6210('0xa'));var ejs=require(_0x6210('0xb'));var fs=require('fs');var fs_extra=require(_0x6210('0xc'));var _=require(_0x6210('0xd'));var squel=require(_0x6210('0xe'));var crypto=require(_0x6210('0xf'));var jsforce=require('jsforce');var deskjs=require(_0x6210('0x10'));var toCsv=require('to-csv');var querystring=require(_0x6210('0x11'));var Papa=require('papaparse');var Redis=require(_0x6210('0x12'));var authService=require(_0x6210('0x13'));var qs=require('../../components/parsers/qs');var as=require(_0x6210('0x14'));var hardwareService=require(_0x6210('0x15'));var logger=require(_0x6210('0x16'))('api');var utils=require(_0x6210('0x17'));var config=require(_0x6210('0x18'));var licenseUtil=require(_0x6210('0x19'));var db=require('../../mysqldb')['db'];config[_0x6210('0x1a')]=_[_0x6210('0x1b')](config['redis'],{'host':_0x6210('0x1c'),'port':0x18eb});var socket=require(_0x6210('0x1d'))(new Redis(config[_0x6210('0x1a')]));require(_0x6210('0x1e'))[_0x6210('0x1f')](socket);var jayson=require('jayson/promise');var client=jayson[_0x6210('0x20')][_0x6210('0x21')]({'port':0x232c});var client9002=jayson[_0x6210('0x20')]['http']({'port':0x232a});function respondWithRpcPromise(_0x130096,_0x4d6d1a,_0x243c05,_0x25103b){return new BPromise(function(_0x4d5f84,_0x21782c){var _0x42c2b5=_0x25103b||client;return _0x42c2b5['request'](_0x130096,_0x243c05)[_0x6210('0x22')](function(_0x57dc3a){logger[_0x6210('0x23')](_0x6210('0x24'),_0x4d6d1a,_0x6210('0x25'));logger['debug']('FaxMessage,\x20%s,\x20%s,\x20%s',_0x4d6d1a,_0x6210('0x25'),JSON[_0x6210('0x26')](_0x57dc3a));if(_0x57dc3a['error']){if(_0x57dc3a[_0x6210('0x27')]['code']===0x1f4){logger[_0x6210('0x27')](_0x6210('0x24'),_0x4d6d1a,_0x57dc3a[_0x6210('0x27')][_0x6210('0x28')]);return _0x21782c(_0x57dc3a[_0x6210('0x27')][_0x6210('0x28')]);}logger[_0x6210('0x27')](_0x6210('0x24'),_0x4d6d1a,_0x57dc3a[_0x6210('0x27')][_0x6210('0x28')]);return _0x4d5f84(_0x57dc3a[_0x6210('0x27')][_0x6210('0x28')]);}else{logger[_0x6210('0x23')](_0x6210('0x24'),_0x4d6d1a,_0x6210('0x25'));_0x4d5f84(_0x57dc3a[_0x6210('0x29')][_0x6210('0x28')]);}})['catch'](function(_0x2c878e){logger[_0x6210('0x27')]('FaxMessage,\x20%s,\x20%s',_0x4d6d1a,_0x2c878e);_0x21782c(_0x2c878e);});});}function respondWithStatusCode(_0x2f3a20,_0x84f1e){_0x84f1e=_0x84f1e||0xcc;return function(_0x2ab025){if(_0x2ab025){return _0x2f3a20[_0x6210('0x2a')](_0x84f1e);}return _0x2f3a20[_0x6210('0x2b')](_0x84f1e)[_0x6210('0x2c')]();};}function respondWithResult(_0x134acb,_0x5d5222){_0x5d5222=_0x5d5222||0xc8;return function(_0x1fdee2){if(_0x1fdee2){return _0x134acb['status'](_0x5d5222)['json'](_0x1fdee2);}};}function respondWithFilteredResult(_0x479733,_0x3625d6){return function(_0x150bc7){if(_0x150bc7){var _0x154a94=typeof _0x3625d6[_0x6210('0x2d')]===_0x6210('0x2e')&&typeof _0x3625d6[_0x6210('0x2f')]===_0x6210('0x2e');var _0x5a8d19=_0x150bc7[_0x6210('0x30')];var _0x45c95e=_0x154a94?0x0:_0x3625d6[_0x6210('0x2d')];var _0x55fe36=_0x154a94?_0x150bc7['count']:_0x3625d6[_0x6210('0x2d')]+_0x3625d6[_0x6210('0x2f')];var _0x207577;if(_0x55fe36>=_0x5a8d19){_0x55fe36=_0x5a8d19;_0x207577=0xc8;}else{_0x207577=0xce;}_0x479733[_0x6210('0x2b')](_0x207577);return _0x479733['set'](_0x6210('0x31'),_0x45c95e+'-'+_0x55fe36+'/'+_0x5a8d19)[_0x6210('0x32')](_0x150bc7);}return null;};}function patchUpdates(_0x46a823){return function(_0x44e8f3){try{jsonpatch['apply'](_0x44e8f3,_0x46a823,!![]);}catch(_0x2e08e4){return BPromise[_0x6210('0x33')](_0x2e08e4);}return _0x44e8f3[_0x6210('0x34')]();};}function saveUpdates(_0x502227,_0x58c3f6){return function(_0x3b3c74){if(_0x3b3c74){return _0x3b3c74[_0x6210('0x35')](_0x502227)['then'](function(_0x247394){return _0x247394;});}return null;};}function removeEntity(_0x499c16,_0x3411ae){return function(_0xfdb18c){if(_0xfdb18c){return _0xfdb18c['destroy']()['then'](function(){_0x499c16[_0x6210('0x2b')](0xcc)[_0x6210('0x2c')]();});}};}function handleEntityNotFound(_0x531891,_0x2d9eef){return function(_0x21d2fe){if(!_0x21d2fe){_0x531891[_0x6210('0x2a')](0x194);}return _0x21d2fe;};}function handleError(_0x57ec30,_0x2d5006){_0x2d5006=_0x2d5006||0x1f4;return function(_0xf80d31){logger[_0x6210('0x27')](_0xf80d31[_0x6210('0x36')]);if(_0xf80d31[_0x6210('0x37')]){delete _0xf80d31[_0x6210('0x37')];}_0x57ec30[_0x6210('0x2b')](_0x2d5006)[_0x6210('0x38')](_0xf80d31);};}exports[_0x6210('0x39')]=function(_0x582766,_0x855ef3){var _0xb98882={},_0x1e1866={},_0xfee54e={'count':0x0,'rows':[]};var _0x511912=_[_0x6210('0x3a')](db[_0x6210('0x3b')][_0x6210('0x3c')],function(_0x200258){return{'name':_0x200258[_0x6210('0x3d')],'type':_0x200258[_0x6210('0x3e')]['key']};});_0x1e1866['model']=_[_0x6210('0x3a')](_0x511912,_0x6210('0x37'));_0x1e1866[_0x6210('0x3f')]=_[_0x6210('0x40')](_0x582766[_0x6210('0x3f')]);_0x1e1866[_0x6210('0x41')]=_[_0x6210('0x42')](_0x1e1866['model'],_0x1e1866[_0x6210('0x3f')]);_0xb98882[_0x6210('0x43')]=_[_0x6210('0x42')](_0x1e1866['model'],qs['fields'](_0x582766[_0x6210('0x3f')][_0x6210('0x44')]));_0xb98882[_0x6210('0x43')]=_0xb98882['attributes'][_0x6210('0x45')]?_0xb98882[_0x6210('0x43')]:_0x1e1866['model'];if(!_0x582766[_0x6210('0x3f')][_0x6210('0x46')](_0x6210('0x47'))){_0xb98882[_0x6210('0x2f')]=qs['limit'](_0x582766[_0x6210('0x3f')]['limit']);_0xb98882['offset']=qs[_0x6210('0x2d')](_0x582766[_0x6210('0x3f')][_0x6210('0x2d')]);}_0xb98882[_0x6210('0x48')]=qs[_0x6210('0x49')](_0x582766[_0x6210('0x3f')][_0x6210('0x49')]);_0xb98882[_0x6210('0x4a')]=qs[_0x6210('0x41')](_[_0x6210('0x4b')](_0x582766['query'],_0x1e1866[_0x6210('0x41')]),_0x511912);if(_0x582766[_0x6210('0x3f')][_0x6210('0x4c')]){_0xb98882['where']=_[_0x6210('0x4d')](_0xb98882[_0x6210('0x4a')],{'$or':_['map'](_0x511912,function(_0x57a5be){if(_0x57a5be['type']!=='VIRTUAL'){var _0x5d4df3={};_0x5d4df3[_0x57a5be[_0x6210('0x37')]]={'$like':'%'+_0x582766[_0x6210('0x3f')]['filter']+'%'};return _0x5d4df3;}})});}_0xb98882=_[_0x6210('0x4d')]({},_0xb98882,_0x582766[_0x6210('0x4e')]);var _0x1e2eee={'where':_0xb98882[_0x6210('0x4a')]};return db[_0x6210('0x3b')][_0x6210('0x30')](_0x1e2eee)[_0x6210('0x22')](function(_0x26f33e){_0xfee54e[_0x6210('0x30')]=_0x26f33e;if(_0x582766['query']['includeAll']){_0xb98882['include']=[{'all':!![]}];}return db[_0x6210('0x3b')][_0x6210('0x4f')](_0xb98882);})[_0x6210('0x22')](function(_0x236dd1){_0xfee54e[_0x6210('0x50')]=_0x236dd1;return _0xfee54e;})[_0x6210('0x22')](respondWithFilteredResult(_0x855ef3,_0xb98882))[_0x6210('0x51')](handleError(_0x855ef3,null));};exports[_0x6210('0x52')]=function(_0x35e014,_0x2b77a1){var _0x35c24e={'raw':!![],'where':{'id':_0x35e014[_0x6210('0x53')]['id']}},_0x208b4e={};_0x208b4e[_0x6210('0x54')]=_[_0x6210('0x40')](db[_0x6210('0x3b')][_0x6210('0x3c')]);_0x208b4e[_0x6210('0x3f')]=_['keys'](_0x35e014['query']);_0x208b4e[_0x6210('0x41')]=_[_0x6210('0x42')](_0x208b4e[_0x6210('0x54')],_0x208b4e['query']);_0x35c24e[_0x6210('0x43')]=_[_0x6210('0x42')](_0x208b4e['model'],qs['fields'](_0x35e014[_0x6210('0x3f')][_0x6210('0x44')]));_0x35c24e['attributes']=_0x35c24e[_0x6210('0x43')][_0x6210('0x45')]?_0x35c24e['attributes']:_0x208b4e[_0x6210('0x54')];if(_0x35e014[_0x6210('0x3f')][_0x6210('0x55')]){_0x35c24e[_0x6210('0x56')]=[{'all':!![]}];}_0x35c24e=_[_0x6210('0x4d')]({},_0x35c24e,_0x35e014[_0x6210('0x4e')]);return db[_0x6210('0x3b')][_0x6210('0x57')](_0x35c24e)[_0x6210('0x22')](handleEntityNotFound(_0x2b77a1,null))[_0x6210('0x22')](respondWithResult(_0x2b77a1,null))['catch'](handleError(_0x2b77a1,null));};exports[_0x6210('0x35')]=function(_0x2586a6,_0x1215b7){if(_0x2586a6[_0x6210('0x58')]['id']){delete _0x2586a6[_0x6210('0x58')]['id'];}return db[_0x6210('0x3b')][_0x6210('0x57')]({'where':{'id':_0x2586a6[_0x6210('0x53')]['id']}})[_0x6210('0x22')](handleEntityNotFound(_0x1215b7,null))['then'](saveUpdates(_0x2586a6['body'],null))[_0x6210('0x22')](respondWithResult(_0x1215b7,null))['catch'](handleError(_0x1215b7,null));};exports[_0x6210('0x59')]=function(_0x2ddfec,_0xb72352){return db[_0x6210('0x3b')][_0x6210('0x57')]({'where':{'id':_0x2ddfec['params']['id']}})['then'](handleEntityNotFound(_0xb72352,null))[_0x6210('0x22')](removeEntity(_0xb72352,null))[_0x6210('0x51')](handleError(_0xb72352,null));};exports['describe']=function(_0x2639cf,_0x537f20){return db[_0x6210('0x3b')][_0x6210('0x5a')]()[_0x6210('0x22')](respondWithResult(_0x537f20,null))[_0x6210('0x51')](handleError(_0x537f20,null));};var interaction_log=require('../../config/logger')(_0x6210('0x5b'));exports[_0x6210('0x5c')]=function(_0x41ebe5,_0x5cd9d1,_0x3d9b7d){var _0x546639={'agent':{},'channel':'fax'};if(_0x41ebe5['body']['id']){delete _0x41ebe5[_0x6210('0x58')]['id'];}_0x41ebe5[_0x6210('0x58')][_0x6210('0x5d')]=!![];_0x41ebe5[_0x6210('0x58')][_0x6210('0x5e')]=moment()[_0x6210('0x5f')](_0x6210('0x60'));_0x41ebe5[_0x6210('0x58')][_0x6210('0x61')]=_0x41ebe5[_0x6210('0x58')][_0x6210('0x61')]||_0x41ebe5[_0x6210('0x62')]['id'];_0x546639['agent']['id']=_0x41ebe5[_0x6210('0x58')]['UserId'];return db[_0x6210('0x3b')][_0x6210('0x57')]({'where':{'id':_0x41ebe5['params']['id'],'UserId':null}})[_0x6210('0x22')](handleEntityNotFound(_0x5cd9d1,null))[_0x6210('0x22')](saveUpdates(_0x41ebe5[_0x6210('0x58')],null))[_0x6210('0x22')](function(_0x3c160f){if(_0x3c160f){_0x546639[_0x6210('0x28')]=_0x3c160f[_0x6210('0x63')]({'plain':!![]});return db[_0x6210('0x64')][_0x6210('0x57')]({'where':{'id':_0x3c160f['FaxInteractionId']}});}return null;})['then'](handleEntityNotFound(_0x5cd9d1,null))[_0x6210('0x22')](function(_0x13b568){if(_0x13b568){return _0x13b568[_0x6210('0x35')]({'UserId':_0x41ebe5['body']['UserId'],'read1stAt':_['isNil'](_0x13b568[_0x6210('0x65')])?moment()[_0x6210('0x5f')](_0x6210('0x60')):undefined});}return null;})[_0x6210('0x22')](function(_0x52900e){if(_0x52900e){_0x546639[_0x6210('0x66')]=_0x52900e[_0x6210('0x63')]({'plain':!![]});interaction_log[_0x6210('0x23')](_0x6210('0x67'),_0x41ebe5[_0x6210('0x62')]['id'],_0x41ebe5[_0x6210('0x62')]['name'],_0x41ebe5[_0x6210('0x62')]['role'],_0x546639[_0x6210('0x66')]['id'],_0x41ebe5[_0x6210('0x58')]?JSON[_0x6210('0x26')](_0x41ebe5['body']):'null');return respondWithRpcPromise(_0x6210('0x68'),'acceptMessage',_0x546639);}return null;})[_0x6210('0x22')](function(_0x3d5ec3){var _0x4c93ba=_0x6210('0x69')+_0x3d5ec3[_0x6210('0x28')]['ContactId'];return db[_0x6210('0x6a')][_0x6210('0x3f')](_0x4c93ba,{'type':db[_0x6210('0x6b')][_0x6210('0x6c')][_0x6210('0x6d')],'raw':!![]})[_0x6210('0x22')](function(_0x43823e){return _0x43823e;});})[_0x6210('0x22')](function(_0x53502a){if(_0x53502a){_0x546639['message']['contact']=_0x53502a[0x0];if(!_0x41ebe5[_0x6210('0x58')]['UserId'])return;return db[_0x6210('0x6e')][_0x6210('0x57')]({'where':{'id':_0x41ebe5[_0x6210('0x58')][_0x6210('0x61')],'role':_0x6210('0x6f')},'attributes':['id','name',_0x6210('0x70'),_0x6210('0x71'),'internal'],'raw':!![]});}return null;})['then'](function(_0x1e5a43){if(!_0x1e5a43)return null;_0x546639[_0x6210('0x28')][_0x6210('0x6f')]=_0x1e5a43;return _0x546639;})[_0x6210('0x22')](function(_0x5acd50){if(_0x5acd50){if(_0x41ebe5[_0x6210('0x58')]['manual']){_0x546639['message']['interface']=util[_0x6210('0x5f')]('SIP/%s',_0x41ebe5[_0x6210('0x62')][_0x6210('0x37')]);_0x546639[_0x6210('0x28')]['channel']=_0x546639[_0x6210('0x72')];_0x546639[_0x6210('0x28')]['motionChannel']=_0x546639['channel'];_0x546639[_0x6210('0x28')][_0x6210('0x73')]=_0x6210('0x5c');return respondWithRpcPromise(_0x6210('0x74'),_0x6210('0x74'),{'event':_0x6210('0x75'),'message':_0x546639[_0x6210('0x28')]},client9002)[_0x6210('0x22')](function(){return _0x546639;});}return _0x546639;}return null;})['then'](respondWithResult(_0x5cd9d1,null))[_0x6210('0x51')](handleError(_0x5cd9d1,null));};var interaction_log=require(_0x6210('0x16'))('fax-interactions');exports[_0x6210('0x33')]=function(_0x517437,_0x327599,_0xe92dd9){var _0xc8cb75={'agent':{},'channel':'fax'};if(_0x517437[_0x6210('0x58')]['id']){delete _0x517437[_0x6210('0x58')]['id'];}_0x517437[_0x6210('0x58')]['UserId']=_0x517437[_0x6210('0x58')][_0x6210('0x61')]||_0x517437[_0x6210('0x62')]['id'];_0xc8cb75[_0x6210('0x6f')]['id']=_0x517437[_0x6210('0x58')][_0x6210('0x61')];return db[_0x6210('0x3b')][_0x6210('0x57')]({'where':{'id':_0x517437[_0x6210('0x53')]['id'],'UserId':null}})['then'](handleEntityNotFound(_0x327599,null))[_0x6210('0x22')](function(_0x247d1e){if(_0x247d1e){_0xc8cb75[_0x6210('0x28')]=_0x247d1e['get']({'plain':!![]});return db[_0x6210('0x64')]['find']({'where':{'id':_0x247d1e[_0x6210('0x76')]}});}return null;})[_0x6210('0x22')](handleEntityNotFound(_0x327599,null))[_0x6210('0x22')](function(_0xeeccf2){if(_0xeeccf2){_0xc8cb75[_0x6210('0x66')]=_0xeeccf2[_0x6210('0x63')]({'plain':!![]});interaction_log[_0x6210('0x23')](_0x6210('0x77'),_0x517437['user']['id'],_0x517437['user'][_0x6210('0x37')],_0x517437[_0x6210('0x62')][_0x6210('0x78')],_0xc8cb75[_0x6210('0x66')]['id'],_0x517437[_0x6210('0x58')]?JSON[_0x6210('0x26')](_0x517437[_0x6210('0x58')]):_0x6210('0x79'));return respondWithRpcPromise(_0x6210('0x7a'),_0x6210('0x7b'),_0xc8cb75);}return null;})[_0x6210('0x22')](function(_0x48553f){var _0x495aa8=_0x6210('0x69')+_0x48553f[_0x6210('0x28')][_0x6210('0x7c')];return db[_0x6210('0x6a')][_0x6210('0x3f')](_0x495aa8,{'type':db[_0x6210('0x6b')][_0x6210('0x6c')]['SELECT'],'raw':!![]})[_0x6210('0x22')](function(_0x300c03){return _0x300c03;});})[_0x6210('0x22')](function(_0x269ae6){if(_0x269ae6){_0xc8cb75[_0x6210('0x28')][_0x6210('0x7d')]=_0x269ae6[0x0];if(!_0x517437[_0x6210('0x58')][_0x6210('0x61')])return;return db[_0x6210('0x6e')][_0x6210('0x57')]({'where':{'id':_0x517437['body'][_0x6210('0x61')],'role':_0x6210('0x6f')},'attributes':['id',_0x6210('0x37'),_0x6210('0x70'),_0x6210('0x71'),_0x6210('0x7e')],'raw':!![]});}return null;})['then'](function(_0x2b9167){if(!_0x2b9167)return null;_0xc8cb75[_0x6210('0x28')][_0x6210('0x6f')]=_0x2b9167;return _0xc8cb75;})[_0x6210('0x22')](function(_0x259e50){if(_0x259e50){_0x259e50[_0x6210('0x28')][_0x6210('0x7f')]=util['format']('SIP/%s',_0x517437[_0x6210('0x62')]['name']);_0x259e50['message'][_0x6210('0x72')]=_0xc8cb75[_0x6210('0x72')];_0x259e50['message'][_0x6210('0x80')]=_0xc8cb75[_0x6210('0x72')];_0x259e50[_0x6210('0x28')][_0x6210('0x73')]='reject';respondWithRpcPromise(_0x6210('0x74'),'EventManager',{'event':_0x6210('0x81'),'message':_0x259e50[_0x6210('0x28')]},client9002);return _0xc8cb75;}return null;})['then'](respondWithResult(_0x327599,null))['catch'](handleError(_0x327599,null));};exports['create']=function(_0x479984,_0x4cdf8c){var _0xa0569c;return db[_0x6210('0x3b')]['create'](_0x479984[_0x6210('0x58')],{})['then'](function(_0x110286){_0xa0569c=_0x110286;return db[_0x6210('0x82')]['findOne']({'where':{'id':_0xa0569c[_0x6210('0x7c')]}});})[_0x6210('0x22')](function(_0x130d74){if(_[_0x6210('0x83')](_0x130d74)){return;}else{_0xa0569c[_0x6210('0x84')]=_0x130d74[_0x6210('0x84')];return db[_0x6210('0x85')]['findOne']({'where':{'id':_0xa0569c[_0x6210('0x86')]}});}})[_0x6210('0x22')](function(_0x2f3825){return respondWithRpcPromise('SendFax',_0x6210('0x87'),{'FaxAccountId':_['isNil'](_0x479984['body'])?undefined:_0x479984[_0x6210('0x58')][_0x6210('0x88')],'path':_[_0x6210('0x83')](_0x2f3825)?undefined:util[_0x6210('0x5f')](_0x6210('0x89'),_0x2f3825[_0x6210('0x8a')]),'fax':_['isNil'](_0xa0569c[_0x6210('0x84')])?undefined:_0xa0569c[_0x6210('0x84')],'AttachmentId':_0xa0569c[_0x6210('0x86')]},client9002);})[_0x6210('0x22')](respondWithResult(_0x4cdf8c,0xc9))[_0x6210('0x51')](handleError(_0x4cdf8c,null));};exports[_0x6210('0x8b')]=function(_0x1d1c09,_0x20c5f3){var _0x222839=path['join'](config['root'],_0x6210('0x8c'),_0x6210('0x8d'),_0x6210('0x8e'));return db[_0x6210('0x3b')]['find']({'where':{'id':_0x1d1c09[_0x6210('0x53')]['id']},'include':[{'model':db[_0x6210('0x85')],'as':'Attachment'}]})[_0x6210('0x22')](handleEntityNotFound(_0x20c5f3,null))['then'](function(_0x584fd2){if(_0x584fd2){return _0x20c5f3[_0x6210('0x8b')](path[_0x6210('0x8f')](_0x222839,_0x584fd2[_0x6210('0x85')][_0x6210('0x8a')]));}})['catch'](handleError(_0x20c5f3,null));};