Built motion from commit 9d0783e6.|2.6.13
[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 _0xda8b=['crypto','jsforce','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','defaults','localhost','redis','register','jayson/promise','client','http','request','info','FaxMessage,\x20%s,\x20%s','request\x20sent','FaxMessage,\x20%s,\x20%s,\x20%s','stringify','error','code','message','catch','sendStatus','status','end','undefined','limit','count','offset','set','json','apply','update','then','name','send','index','map','FaxMessage','fieldName','type','key','query','keys','filters','intersection','attributes','model','fields','length','hasOwnProperty','sort','where','pick','filter','VIRTUAL','options','includeAll','include','findAll','merge','find','body','params','describe','accept','fax','read','readAt','format','YYYY-MM-DD\x20HH:mm:ss','UserId','user','agent','get','isNil','read1stAt','interaction','[FAXMESSAGE:ACCEPT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s','role','null','SELECT\x20*\x20FROM\x20cm_contacts\x20WHERE\x20id\x20=\x20','ContactId','sequelize','Sequelize','QueryTypes','SELECT','contact','User','fullname','internal','channel','motionChannel','event','EventManager','acceptmessage','fax-interactions','FaxInteraction','FaxInteractionId','[FAXMESSAGE:REJECT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s','rejectMessage','interface','SIP/%s','reject','rejectmessage','create','CmContact','findOne','AttachmentId','SendFax','FaxAccountId','basename','download','join','root','server','files','attachments','Attachment','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','mustache','path','sox','to-csv','ejs','lodash','squel'];(function(_0x1f22e0,_0x32e6a1){var _0x31d7ee=function(_0x2c4bb0){while(--_0x2c4bb0){_0x1f22e0['push'](_0x1f22e0['shift']());}};_0x31d7ee(++_0x32e6a1);}(_0xda8b,0x10e));var _0xbda8=function(_0x55f8b4,_0x43f30d){_0x55f8b4=_0x55f8b4-0x0;var _0x2475f9=_0xda8b[_0x55f8b4];return _0x2475f9;};'use strict';var emlformat=require(_0xbda8('0x0'));var rimraf=require(_0xbda8('0x1'));var zipdir=require(_0xbda8('0x2'));var jsonpatch=require(_0xbda8('0x3'));var rp=require(_0xbda8('0x4'));var moment=require('moment');var BPromise=require('bluebird');var Mustache=require(_0xbda8('0x5'));var util=require('util');var path=require(_0xbda8('0x6'));var sox=require(_0xbda8('0x7'));var csv=require(_0xbda8('0x8'));var ejs=require(_0xbda8('0x9'));var fs=require('fs');var fs_extra=require('fs-extra');var _=require(_0xbda8('0xa'));var squel=require(_0xbda8('0xb'));var crypto=require(_0xbda8('0xc'));var jsforce=require(_0xbda8('0xd'));var deskjs=require(_0xbda8('0xe'));var toCsv=require(_0xbda8('0x8'));var querystring=require(_0xbda8('0xf'));var Papa=require(_0xbda8('0x10'));var Redis=require(_0xbda8('0x11'));var authService=require(_0xbda8('0x12'));var qs=require(_0xbda8('0x13'));var as=require(_0xbda8('0x14'));var hardwareService=require(_0xbda8('0x15'));var logger=require(_0xbda8('0x16'))(_0xbda8('0x17'));var utils=require(_0xbda8('0x18'));var config=require(_0xbda8('0x19'));var licenseUtil=require(_0xbda8('0x1a'));var db=require('../../mysqldb')['db'];config['redis']=_[_0xbda8('0x1b')](config['redis'],{'host':_0xbda8('0x1c'),'port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config[_0xbda8('0x1d')]));require('./faxMessage.socket')[_0xbda8('0x1e')](socket);var jayson=require(_0xbda8('0x1f'));var client=jayson[_0xbda8('0x20')][_0xbda8('0x21')]({'port':0x232c});var client9002=jayson[_0xbda8('0x20')][_0xbda8('0x21')]({'port':0x232a});function respondWithRpcPromise(_0x562dc3,_0x15c277,_0x297eb2,_0x4aeed7){return new BPromise(function(_0x1c6456,_0x47c4db){var _0x4357a7=_0x4aeed7||client;return _0x4357a7[_0xbda8('0x22')](_0x562dc3,_0x297eb2)['then'](function(_0x97eb90){logger[_0xbda8('0x23')](_0xbda8('0x24'),_0x15c277,_0xbda8('0x25'));logger['debug'](_0xbda8('0x26'),_0x15c277,_0xbda8('0x25'),JSON[_0xbda8('0x27')](_0x97eb90));if(_0x97eb90['error']){if(_0x97eb90[_0xbda8('0x28')][_0xbda8('0x29')]===0x1f4){logger[_0xbda8('0x28')](_0xbda8('0x24'),_0x15c277,_0x97eb90['error'][_0xbda8('0x2a')]);return _0x47c4db(_0x97eb90['error']['message']);}logger[_0xbda8('0x28')](_0xbda8('0x24'),_0x15c277,_0x97eb90[_0xbda8('0x28')][_0xbda8('0x2a')]);return _0x1c6456(_0x97eb90[_0xbda8('0x28')][_0xbda8('0x2a')]);}else{logger['info'](_0xbda8('0x24'),_0x15c277,_0xbda8('0x25'));_0x1c6456(_0x97eb90['result']['message']);}})[_0xbda8('0x2b')](function(_0x1551c5){logger[_0xbda8('0x28')]('FaxMessage,\x20%s,\x20%s',_0x15c277,_0x1551c5);_0x47c4db(_0x1551c5);});});}function respondWithStatusCode(_0x3c670c,_0x389f6b){_0x389f6b=_0x389f6b||0xcc;return function(_0x59e84a){if(_0x59e84a){return _0x3c670c[_0xbda8('0x2c')](_0x389f6b);}return _0x3c670c[_0xbda8('0x2d')](_0x389f6b)[_0xbda8('0x2e')]();};}function respondWithResult(_0x27dcdf,_0x4cb2cf){_0x4cb2cf=_0x4cb2cf||0xc8;return function(_0x10e641){if(_0x10e641){return _0x27dcdf['status'](_0x4cb2cf)['json'](_0x10e641);}};}function respondWithFilteredResult(_0x526b6d,_0x5ad6bf){return function(_0xcb8e01){if(_0xcb8e01){var _0x429fac=typeof _0x5ad6bf['offset']===_0xbda8('0x2f')&&typeof _0x5ad6bf[_0xbda8('0x30')]===_0xbda8('0x2f');var _0x4a34f2=_0xcb8e01[_0xbda8('0x31')];var _0x323c94=_0x429fac?0x0:_0x5ad6bf[_0xbda8('0x32')];var _0x145537=_0x429fac?_0xcb8e01[_0xbda8('0x31')]:_0x5ad6bf['offset']+_0x5ad6bf[_0xbda8('0x30')];var _0xd48828;if(_0x145537>=_0x4a34f2){_0x145537=_0x4a34f2;_0xd48828=0xc8;}else{_0xd48828=0xce;}_0x526b6d[_0xbda8('0x2d')](_0xd48828);return _0x526b6d[_0xbda8('0x33')]('Content-Range',_0x323c94+'-'+_0x145537+'/'+_0x4a34f2)[_0xbda8('0x34')](_0xcb8e01);}return null;};}function patchUpdates(_0x50c710){return function(_0x2c51e1){try{jsonpatch[_0xbda8('0x35')](_0x2c51e1,_0x50c710,!![]);}catch(_0x478c78){return BPromise['reject'](_0x478c78);}return _0x2c51e1['save']();};}function saveUpdates(_0x29633d,_0x349ad0){return function(_0x53c29b){if(_0x53c29b){return _0x53c29b[_0xbda8('0x36')](_0x29633d)[_0xbda8('0x37')](function(_0x44e5cb){return _0x44e5cb;});}return null;};}function removeEntity(_0x51466b,_0x4a2db1){return function(_0x2576ed){if(_0x2576ed){return _0x2576ed['destroy']()[_0xbda8('0x37')](function(){_0x51466b['status'](0xcc)[_0xbda8('0x2e')]();});}};}function handleEntityNotFound(_0x268592,_0x2d3d83){return function(_0x4f0171){if(!_0x4f0171){_0x268592['sendStatus'](0x194);}return _0x4f0171;};}function handleError(_0x172fb3,_0x22b356){_0x22b356=_0x22b356||0x1f4;return function(_0x5ac0d0){logger['error'](_0x5ac0d0['stack']);if(_0x5ac0d0['name']){delete _0x5ac0d0[_0xbda8('0x38')];}_0x172fb3[_0xbda8('0x2d')](_0x22b356)[_0xbda8('0x39')](_0x5ac0d0);};}exports[_0xbda8('0x3a')]=function(_0x53f59d,_0x440e39){var _0x11892c={},_0x5ab67a={},_0x49ec3e={'count':0x0,'rows':[]};var _0x4da7a6=_[_0xbda8('0x3b')](db[_0xbda8('0x3c')]['rawAttributes'],function(_0x11b89c){return{'name':_0x11b89c[_0xbda8('0x3d')],'type':_0x11b89c[_0xbda8('0x3e')][_0xbda8('0x3f')]};});_0x5ab67a['model']=_[_0xbda8('0x3b')](_0x4da7a6,'name');_0x5ab67a[_0xbda8('0x40')]=_[_0xbda8('0x41')](_0x53f59d['query']);_0x5ab67a[_0xbda8('0x42')]=_[_0xbda8('0x43')](_0x5ab67a['model'],_0x5ab67a[_0xbda8('0x40')]);_0x11892c[_0xbda8('0x44')]=_[_0xbda8('0x43')](_0x5ab67a[_0xbda8('0x45')],qs[_0xbda8('0x46')](_0x53f59d['query'][_0xbda8('0x46')]));_0x11892c[_0xbda8('0x44')]=_0x11892c['attributes'][_0xbda8('0x47')]?_0x11892c['attributes']:_0x5ab67a['model'];if(!_0x53f59d[_0xbda8('0x40')][_0xbda8('0x48')]('nolimit')){_0x11892c[_0xbda8('0x30')]=qs['limit'](_0x53f59d['query'][_0xbda8('0x30')]);_0x11892c[_0xbda8('0x32')]=qs[_0xbda8('0x32')](_0x53f59d[_0xbda8('0x40')][_0xbda8('0x32')]);}_0x11892c['order']=qs[_0xbda8('0x49')](_0x53f59d['query'][_0xbda8('0x49')]);_0x11892c[_0xbda8('0x4a')]=qs['filters'](_[_0xbda8('0x4b')](_0x53f59d['query'],_0x5ab67a[_0xbda8('0x42')]),_0x4da7a6);if(_0x53f59d[_0xbda8('0x40')][_0xbda8('0x4c')]){_0x11892c[_0xbda8('0x4a')]=_['merge'](_0x11892c[_0xbda8('0x4a')],{'$or':_[_0xbda8('0x3b')](_0x4da7a6,function(_0x3f76ef){if(_0x3f76ef['type']!==_0xbda8('0x4d')){var _0x31d762={};_0x31d762[_0x3f76ef['name']]={'$like':'%'+_0x53f59d['query'][_0xbda8('0x4c')]+'%'};return _0x31d762;}})});}_0x11892c=_['merge']({},_0x11892c,_0x53f59d[_0xbda8('0x4e')]);var _0xb1ed70={'where':_0x11892c[_0xbda8('0x4a')]};return db[_0xbda8('0x3c')][_0xbda8('0x31')](_0xb1ed70)['then'](function(_0x4db4f0){_0x49ec3e[_0xbda8('0x31')]=_0x4db4f0;if(_0x53f59d['query'][_0xbda8('0x4f')]){_0x11892c[_0xbda8('0x50')]=[{'all':!![]}];}return db[_0xbda8('0x3c')][_0xbda8('0x51')](_0x11892c);})[_0xbda8('0x37')](function(_0x285a8d){_0x49ec3e['rows']=_0x285a8d;return _0x49ec3e;})['then'](respondWithFilteredResult(_0x440e39,_0x11892c))[_0xbda8('0x2b')](handleError(_0x440e39,null));};exports['show']=function(_0x3247b2,_0x3fb8ce){var _0x8b2b6a={'raw':!![],'where':{'id':_0x3247b2['params']['id']}},_0x5c7f12={};_0x5c7f12[_0xbda8('0x45')]=_[_0xbda8('0x41')](db[_0xbda8('0x3c')]['rawAttributes']);_0x5c7f12[_0xbda8('0x40')]=_[_0xbda8('0x41')](_0x3247b2['query']);_0x5c7f12[_0xbda8('0x42')]=_[_0xbda8('0x43')](_0x5c7f12[_0xbda8('0x45')],_0x5c7f12[_0xbda8('0x40')]);_0x8b2b6a[_0xbda8('0x44')]=_['intersection'](_0x5c7f12[_0xbda8('0x45')],qs[_0xbda8('0x46')](_0x3247b2[_0xbda8('0x40')][_0xbda8('0x46')]));_0x8b2b6a['attributes']=_0x8b2b6a[_0xbda8('0x44')][_0xbda8('0x47')]?_0x8b2b6a[_0xbda8('0x44')]:_0x5c7f12[_0xbda8('0x45')];if(_0x3247b2[_0xbda8('0x40')][_0xbda8('0x4f')]){_0x8b2b6a[_0xbda8('0x50')]=[{'all':!![]}];}_0x8b2b6a=_[_0xbda8('0x52')]({},_0x8b2b6a,_0x3247b2[_0xbda8('0x4e')]);return db[_0xbda8('0x3c')][_0xbda8('0x53')](_0x8b2b6a)['then'](handleEntityNotFound(_0x3fb8ce,null))[_0xbda8('0x37')](respondWithResult(_0x3fb8ce,null))[_0xbda8('0x2b')](handleError(_0x3fb8ce,null));};exports[_0xbda8('0x36')]=function(_0x221c1d,_0x46a706){if(_0x221c1d[_0xbda8('0x54')]['id']){delete _0x221c1d[_0xbda8('0x54')]['id'];}return db[_0xbda8('0x3c')][_0xbda8('0x53')]({'where':{'id':_0x221c1d['params']['id']}})['then'](handleEntityNotFound(_0x46a706,null))[_0xbda8('0x37')](saveUpdates(_0x221c1d['body'],null))[_0xbda8('0x37')](respondWithResult(_0x46a706,null))[_0xbda8('0x2b')](handleError(_0x46a706,null));};exports['destroy']=function(_0x1a4a5f,_0x16fac8){return db[_0xbda8('0x3c')][_0xbda8('0x53')]({'where':{'id':_0x1a4a5f[_0xbda8('0x55')]['id']}})[_0xbda8('0x37')](handleEntityNotFound(_0x16fac8,null))['then'](removeEntity(_0x16fac8,null))[_0xbda8('0x2b')](handleError(_0x16fac8,null));};exports[_0xbda8('0x56')]=function(_0x148ec8,_0x32dc0d){return db[_0xbda8('0x3c')][_0xbda8('0x56')]()['then'](respondWithResult(_0x32dc0d,null))['catch'](handleError(_0x32dc0d,null));};var interaction_log=require(_0xbda8('0x16'))('fax-interactions');exports[_0xbda8('0x57')]=function(_0x4a9c4a,_0x3e7b05,_0x1d3d7f){var _0x15e300={'agent':{},'channel':_0xbda8('0x58')};if(_0x4a9c4a[_0xbda8('0x54')]['id']){delete _0x4a9c4a['body']['id'];}_0x4a9c4a[_0xbda8('0x54')][_0xbda8('0x59')]=!![];_0x4a9c4a[_0xbda8('0x54')][_0xbda8('0x5a')]=moment()[_0xbda8('0x5b')](_0xbda8('0x5c'));_0x4a9c4a[_0xbda8('0x54')][_0xbda8('0x5d')]=_0x4a9c4a[_0xbda8('0x54')][_0xbda8('0x5d')]||_0x4a9c4a[_0xbda8('0x5e')]['id'];_0x15e300[_0xbda8('0x5f')]['id']=_0x4a9c4a[_0xbda8('0x54')][_0xbda8('0x5d')];return db[_0xbda8('0x3c')]['find']({'where':{'id':_0x4a9c4a[_0xbda8('0x55')]['id'],'UserId':null}})['then'](handleEntityNotFound(_0x3e7b05,null))[_0xbda8('0x37')](saveUpdates(_0x4a9c4a[_0xbda8('0x54')],null))[_0xbda8('0x37')](function(_0x36f27f){if(_0x36f27f){_0x15e300['message']=_0x36f27f[_0xbda8('0x60')]({'plain':!![]});return db['FaxInteraction'][_0xbda8('0x53')]({'where':{'id':_0x36f27f['FaxInteractionId']}});}return null;})[_0xbda8('0x37')](handleEntityNotFound(_0x3e7b05,null))[_0xbda8('0x37')](function(_0x3b765b){if(_0x3b765b){return _0x3b765b['update']({'UserId':_0x4a9c4a[_0xbda8('0x54')]['UserId'],'read1stAt':_[_0xbda8('0x61')](_0x3b765b[_0xbda8('0x62')])?moment()[_0xbda8('0x5b')]('YYYY-MM-DD\x20HH:mm:ss'):undefined});}return null;})[_0xbda8('0x37')](function(_0x5c99a7){if(_0x5c99a7){_0x15e300[_0xbda8('0x63')]=_0x5c99a7['get']({'plain':!![]});interaction_log[_0xbda8('0x23')](_0xbda8('0x64'),_0x4a9c4a['user']['id'],_0x4a9c4a['user'][_0xbda8('0x38')],_0x4a9c4a[_0xbda8('0x5e')][_0xbda8('0x65')],_0x15e300['interaction']['id'],_0x4a9c4a['body']?JSON['stringify'](_0x4a9c4a[_0xbda8('0x54')]):_0xbda8('0x66'));return respondWithRpcPromise('AcceptMessage','acceptMessage',_0x15e300);}return null;})[_0xbda8('0x37')](function(_0x22055c){var _0x2e7021=_0xbda8('0x67')+_0x22055c['message'][_0xbda8('0x68')];return db[_0xbda8('0x69')][_0xbda8('0x40')](_0x2e7021,{'type':db[_0xbda8('0x6a')][_0xbda8('0x6b')][_0xbda8('0x6c')],'raw':!![]})['then'](function(_0x216c3d){return _0x216c3d;});})[_0xbda8('0x37')](function(_0xf6ec72){if(_0xf6ec72){_0x15e300[_0xbda8('0x2a')][_0xbda8('0x6d')]=_0xf6ec72[0x0];if(!_0x4a9c4a[_0xbda8('0x54')][_0xbda8('0x5d')])return;return db[_0xbda8('0x6e')][_0xbda8('0x53')]({'where':{'id':_0x4a9c4a[_0xbda8('0x54')][_0xbda8('0x5d')],'role':'agent'},'attributes':['id',_0xbda8('0x38'),_0xbda8('0x6f'),'email',_0xbda8('0x70')],'raw':!![]});}return null;})[_0xbda8('0x37')](function(_0x5f4a2a){if(!_0x5f4a2a)return null;_0x15e300[_0xbda8('0x2a')][_0xbda8('0x5f')]=_0x5f4a2a;return _0x15e300;})[_0xbda8('0x37')](function(_0x2fd44e){if(_0x2fd44e){if(_0x4a9c4a[_0xbda8('0x54')]['manual']){_0x15e300[_0xbda8('0x2a')]['interface']=util['format']('SIP/%s',_0x4a9c4a[_0xbda8('0x5e')][_0xbda8('0x38')]);_0x15e300['message']['channel']=_0x15e300[_0xbda8('0x71')];_0x15e300[_0xbda8('0x2a')][_0xbda8('0x72')]=_0x15e300['channel'];_0x15e300[_0xbda8('0x2a')][_0xbda8('0x73')]=_0xbda8('0x57');return respondWithRpcPromise(_0xbda8('0x74'),'EventManager',{'event':_0xbda8('0x75'),'message':_0x15e300['message']},client9002)[_0xbda8('0x37')](function(){return _0x15e300;});}return _0x15e300;}return null;})['then'](respondWithResult(_0x3e7b05,null))['catch'](handleError(_0x3e7b05,null));};var interaction_log=require(_0xbda8('0x16'))(_0xbda8('0x76'));exports['reject']=function(_0x2216d3,_0x1d7a1c,_0x167bdc){var _0x3d433c={'agent':{},'channel':_0xbda8('0x58')};if(_0x2216d3['body']['id']){delete _0x2216d3['body']['id'];}_0x2216d3[_0xbda8('0x54')][_0xbda8('0x5d')]=_0x2216d3[_0xbda8('0x54')]['UserId']||_0x2216d3[_0xbda8('0x5e')]['id'];_0x3d433c[_0xbda8('0x5f')]['id']=_0x2216d3['body'][_0xbda8('0x5d')];return db[_0xbda8('0x3c')][_0xbda8('0x53')]({'where':{'id':_0x2216d3[_0xbda8('0x55')]['id'],'UserId':null}})[_0xbda8('0x37')](handleEntityNotFound(_0x1d7a1c,null))[_0xbda8('0x37')](function(_0x254903){if(_0x254903){_0x3d433c[_0xbda8('0x2a')]=_0x254903[_0xbda8('0x60')]({'plain':!![]});return db[_0xbda8('0x77')][_0xbda8('0x53')]({'where':{'id':_0x254903[_0xbda8('0x78')]}});}return null;})[_0xbda8('0x37')](handleEntityNotFound(_0x1d7a1c,null))[_0xbda8('0x37')](function(_0x4fe77f){if(_0x4fe77f){_0x3d433c['interaction']=_0x4fe77f[_0xbda8('0x60')]({'plain':!![]});interaction_log[_0xbda8('0x23')](_0xbda8('0x79'),_0x2216d3[_0xbda8('0x5e')]['id'],_0x2216d3[_0xbda8('0x5e')][_0xbda8('0x38')],_0x2216d3['user'][_0xbda8('0x65')],_0x3d433c[_0xbda8('0x63')]['id'],_0x2216d3[_0xbda8('0x54')]?JSON[_0xbda8('0x27')](_0x2216d3[_0xbda8('0x54')]):_0xbda8('0x66'));return respondWithRpcPromise('RejectMessage',_0xbda8('0x7a'),_0x3d433c);}return null;})[_0xbda8('0x37')](function(_0x18e88a){var _0x4653b2=_0xbda8('0x67')+_0x18e88a['message'][_0xbda8('0x68')];return db['sequelize'][_0xbda8('0x40')](_0x4653b2,{'type':db[_0xbda8('0x6a')][_0xbda8('0x6b')]['SELECT'],'raw':!![]})[_0xbda8('0x37')](function(_0x282280){return _0x282280;});})[_0xbda8('0x37')](function(_0x5b1b2b){if(_0x5b1b2b){_0x3d433c[_0xbda8('0x2a')][_0xbda8('0x6d')]=_0x5b1b2b[0x0];if(!_0x2216d3[_0xbda8('0x54')][_0xbda8('0x5d')])return;return db[_0xbda8('0x6e')]['find']({'where':{'id':_0x2216d3[_0xbda8('0x54')][_0xbda8('0x5d')],'role':'agent'},'attributes':['id',_0xbda8('0x38'),_0xbda8('0x6f'),'email','internal'],'raw':!![]});}return null;})[_0xbda8('0x37')](function(_0x46a130){if(!_0x46a130)return null;_0x3d433c['message'][_0xbda8('0x5f')]=_0x46a130;return _0x3d433c;})[_0xbda8('0x37')](function(_0x28851d){if(_0x28851d){_0x28851d[_0xbda8('0x2a')][_0xbda8('0x7b')]=util[_0xbda8('0x5b')](_0xbda8('0x7c'),_0x2216d3[_0xbda8('0x5e')][_0xbda8('0x38')]);_0x28851d[_0xbda8('0x2a')][_0xbda8('0x71')]=_0x3d433c[_0xbda8('0x71')];_0x28851d[_0xbda8('0x2a')][_0xbda8('0x72')]=_0x3d433c[_0xbda8('0x71')];_0x28851d['message']['event']=_0xbda8('0x7d');respondWithRpcPromise(_0xbda8('0x74'),_0xbda8('0x74'),{'event':_0xbda8('0x7e'),'message':_0x28851d[_0xbda8('0x2a')]},client9002);return _0x3d433c;}return null;})[_0xbda8('0x37')](respondWithResult(_0x1d7a1c,null))['catch'](handleError(_0x1d7a1c,null));};exports[_0xbda8('0x7f')]=function(_0x23ba26,_0x519300){var _0xd2c1fe;return db['FaxMessage'][_0xbda8('0x7f')](_0x23ba26[_0xbda8('0x54')],{})[_0xbda8('0x37')](function(_0x32bd68){_0xd2c1fe=_0x32bd68;return db[_0xbda8('0x80')][_0xbda8('0x81')]({'where':{'id':_0xd2c1fe[_0xbda8('0x68')]}});})['then'](function(_0x8781c7){if(_[_0xbda8('0x61')](_0x8781c7)){return;}else{_0xd2c1fe[_0xbda8('0x58')]=_0x8781c7['fax'];return db['Attachment'][_0xbda8('0x81')]({'where':{'id':_0xd2c1fe[_0xbda8('0x82')]}});}})[_0xbda8('0x37')](function(_0x54d7e5){return respondWithRpcPromise(_0xbda8('0x83'),_0xbda8('0x83'),{'FaxAccountId':_[_0xbda8('0x61')](_0x23ba26[_0xbda8('0x54')])?undefined:_0x23ba26[_0xbda8('0x54')][_0xbda8('0x84')],'path':_['isNil'](_0x54d7e5)?undefined:util[_0xbda8('0x5b')]('/var/opt/motion2/server/files/attachments/%s',_0x54d7e5[_0xbda8('0x85')]),'fax':_[_0xbda8('0x61')](_0xd2c1fe[_0xbda8('0x58')])?undefined:_0xd2c1fe[_0xbda8('0x58')],'AttachmentId':_0xd2c1fe['AttachmentId']},client9002);})[_0xbda8('0x37')](respondWithResult(_0x519300,0xc9))[_0xbda8('0x2b')](handleError(_0x519300,null));};exports[_0xbda8('0x86')]=function(_0x3e15c4,_0x2621db){var _0x3f513a=path[_0xbda8('0x87')](config[_0xbda8('0x88')],_0xbda8('0x89'),_0xbda8('0x8a'),_0xbda8('0x8b'));return db[_0xbda8('0x3c')][_0xbda8('0x53')]({'where':{'id':_0x3e15c4['params']['id']},'include':[{'model':db['Attachment'],'as':_0xbda8('0x8c')}]})[_0xbda8('0x37')](handleEntityNotFound(_0x2621db,null))[_0xbda8('0x37')](function(_0x51bad6){if(_0x51bad6){return _0x2621db[_0xbda8('0x86')](path['join'](_0x3f513a,_0x51bad6[_0xbda8('0x8c')]['basename']));}})[_0xbda8('0x2b')](handleError(_0x2621db,null));};