f3cb210b88de069fa8af4e70d25eedea007f2f2e
[motion2.git] / server / api / faxAccount / faxAccount.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 _0xeba1=['crypto','jsforce','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','../../config/environment','../../config/license/util','../../mysqldb','redis','localhost','socket.io-emitter','./faxAccount.socket','register','jayson/promise','client','http','then','info','FaxAccount,\x20%s,\x20%s','debug','FaxAccount,\x20%s,\x20%s,\x20%s','request\x20sent','stringify','error','code','message','result','catch','status','end','json','offset','undefined','limit','count','Content-Range','apply','save','update','destroy','get','FaxAccounts','UserProfileResource','sendStatus','stack','name','send','index','Pause','mandatoryDispositionPause','map','FaxAccount','rawAttributes','fieldName','type','key','model','query','filters','intersection','attributes','fields','length','nolimit','order','sort','where','pick','filter','merge','options','includeAll','include','rows','show','keys','find','create','body','role','UserProfileSection','autoAssociation','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','params','describe','addDisposition','FaxAccountId','Disposition','getDispositions','findOne','removeDispositions','ids','addAnswer','CannedAnswer','getAnswers','removeAnswers','addInteraction','FaxInteraction','omit','getInteractions','hasOwnProperty','User','Owner','fullname','internal','color','tag','findAll','sequelize','transaction','Transaction','ISOLATION_LEVELS','READ_COMMITTED','FaxApplication','bulkCreate','findAndCountAll','priority','finally','getApplications','from-voip-provider','exten','localstationid','app','system','Fax\x20Extension','appdata','push','Answer','Set','gateway','faxdetect','maxrate','minrate','t38timeout','FAXOPT(','Wait','/var/opt/motion2/server/files/attachments/fax-${CALLERID(num)}-${CUT(UNIQUEID,.,1)}-${CUT(UNIQUEID,.,2)}-${STRFTIME(,,%C%y%m%d%H%M%S)}-rx.tif,d','ReceiveFax','addAccountApplications','VoiceExtension','updateAccountApplications','tech','createdAt','updatedAt','ListId','getMessages','$gte','format','YYYY-MM-DD\x20HH:mm:ss','FaxMessage','CmList','List','CmContact','Contacts','attachments','join','root','server/files/attachments','CheckAfterSend','isNil','from','\x22%s\x22\x20<%s>','user','out','filename','Messages','Contact\x20not\x20found','spread','ContactId','dataValues','SendFaxRpc,\x20%s','addAgents','emit','userFaxAccount:save','removeAgents','isArray','userFaxAccount:remove','getAgents','eml-format','rimraf','fast-json-patch','request-promise','moment','bluebird','mustache','util','path','to-csv','ejs','fs-extra','squel'];(function(_0x59b7ce,_0x2e0160){var _0x5c878a=function(_0x348342){while(--_0x348342){_0x59b7ce['push'](_0x59b7ce['shift']());}};_0x5c878a(++_0x2e0160);}(_0xeba1,0xb8));var _0x1eba=function(_0x3babbd,_0x540d72){_0x3babbd=_0x3babbd-0x0;var _0x5f3a22=_0xeba1[_0x3babbd];return _0x5f3a22;};'use strict';var emlformat=require(_0x1eba('0x0'));var rimraf=require(_0x1eba('0x1'));var zipdir=require('zip-dir');var jsonpatch=require(_0x1eba('0x2'));var rp=require(_0x1eba('0x3'));var moment=require(_0x1eba('0x4'));var BPromise=require(_0x1eba('0x5'));var Mustache=require(_0x1eba('0x6'));var util=require(_0x1eba('0x7'));var path=require(_0x1eba('0x8'));var sox=require('sox');var csv=require(_0x1eba('0x9'));var ejs=require(_0x1eba('0xa'));var fs=require('fs');var fs_extra=require(_0x1eba('0xb'));var _=require('lodash');var squel=require(_0x1eba('0xc'));var crypto=require(_0x1eba('0xd'));var jsforce=require(_0x1eba('0xe'));var deskjs=require(_0x1eba('0xf'));var toCsv=require(_0x1eba('0x9'));var querystring=require(_0x1eba('0x10'));var Papa=require(_0x1eba('0x11'));var Redis=require(_0x1eba('0x12'));var authService=require(_0x1eba('0x13'));var qs=require(_0x1eba('0x14'));var as=require(_0x1eba('0x15'));var hardwareService=require(_0x1eba('0x16'));var logger=require(_0x1eba('0x17'))('api');var utils=require('../../config/utils');var config=require(_0x1eba('0x18'));var licenseUtil=require(_0x1eba('0x19'));var db=require(_0x1eba('0x1a'))['db'];config[_0x1eba('0x1b')]=_['defaults'](config['redis'],{'host':_0x1eba('0x1c'),'port':0x18eb});var socket=require(_0x1eba('0x1d'))(new Redis(config['redis']));require(_0x1eba('0x1e'))[_0x1eba('0x1f')](socket);var jayson=require(_0x1eba('0x20'));var client=jayson[_0x1eba('0x21')]['http']({'port':0x232c});var client9002=jayson[_0x1eba('0x21')][_0x1eba('0x22')]({'port':0x232a});function respondWithRpcPromise(_0x2b7322,_0xd01682,_0x48abee,_0x2b564a){return new BPromise(function(_0x2b5559,_0x400de7){var _0x34cc61=_0x2b564a||client;return _0x34cc61['request'](_0x2b7322,_0x48abee)[_0x1eba('0x23')](function(_0x32a6f4){logger[_0x1eba('0x24')](_0x1eba('0x25'),_0xd01682,'request\x20sent');logger[_0x1eba('0x26')](_0x1eba('0x27'),_0xd01682,_0x1eba('0x28'),JSON[_0x1eba('0x29')](_0x32a6f4));if(_0x32a6f4[_0x1eba('0x2a')]){if(_0x32a6f4['error'][_0x1eba('0x2b')]===0x1f4){logger['error'](_0x1eba('0x25'),_0xd01682,_0x32a6f4[_0x1eba('0x2a')][_0x1eba('0x2c')]);return _0x400de7(_0x32a6f4[_0x1eba('0x2a')][_0x1eba('0x2c')]);}logger[_0x1eba('0x2a')](_0x1eba('0x25'),_0xd01682,_0x32a6f4['error'][_0x1eba('0x2c')]);return _0x2b5559(_0x32a6f4[_0x1eba('0x2a')]['message']);}else{logger[_0x1eba('0x24')](_0x1eba('0x25'),_0xd01682,_0x1eba('0x28'));_0x2b5559(_0x32a6f4[_0x1eba('0x2d')][_0x1eba('0x2c')]);}})[_0x1eba('0x2e')](function(_0x11cfa0){logger[_0x1eba('0x2a')]('FaxAccount,\x20%s,\x20%s',_0xd01682,_0x11cfa0);_0x400de7(_0x11cfa0);});});}function respondWithStatusCode(_0x413c19,_0x3ed813){_0x3ed813=_0x3ed813||0xcc;return function(_0x586b21){if(_0x586b21){return _0x413c19['sendStatus'](_0x3ed813);}return _0x413c19[_0x1eba('0x2f')](_0x3ed813)[_0x1eba('0x30')]();};}function respondWithResult(_0x20d1e0,_0x59b67f){_0x59b67f=_0x59b67f||0xc8;return function(_0xc4f6a8){if(_0xc4f6a8){return _0x20d1e0[_0x1eba('0x2f')](_0x59b67f)[_0x1eba('0x31')](_0xc4f6a8);}};}function respondWithFilteredResult(_0x109828,_0x4e5f6b){return function(_0x1049f5){if(_0x1049f5){var _0x4f6b34=typeof _0x4e5f6b[_0x1eba('0x32')]===_0x1eba('0x33')&&typeof _0x4e5f6b[_0x1eba('0x34')]===_0x1eba('0x33');var _0x14a69c=_0x1049f5[_0x1eba('0x35')];var _0x53c4f1=_0x4f6b34?0x0:_0x4e5f6b['offset'];var _0x1789ff=_0x4f6b34?_0x1049f5[_0x1eba('0x35')]:_0x4e5f6b[_0x1eba('0x32')]+_0x4e5f6b['limit'];var _0x1fa462;if(_0x1789ff>=_0x14a69c){_0x1789ff=_0x14a69c;_0x1fa462=0xc8;}else{_0x1fa462=0xce;}_0x109828[_0x1eba('0x2f')](_0x1fa462);return _0x109828['set'](_0x1eba('0x36'),_0x53c4f1+'-'+_0x1789ff+'/'+_0x14a69c)[_0x1eba('0x31')](_0x1049f5);}return null;};}function patchUpdates(_0x4493bb){return function(_0x56b2b3){try{jsonpatch[_0x1eba('0x37')](_0x56b2b3,_0x4493bb,!![]);}catch(_0xa7491){return BPromise['reject'](_0xa7491);}return _0x56b2b3[_0x1eba('0x38')]();};}function saveUpdates(_0x33162a,_0x3aa3fe){return function(_0xcfb82e){if(_0xcfb82e){return _0xcfb82e[_0x1eba('0x39')](_0x33162a)[_0x1eba('0x23')](function(_0x505142){return _0x505142;});}return null;};}function removeEntity(_0x55beda,_0x3e1abe){return function(_0x31f4bd){if(_0x31f4bd){return _0x31f4bd[_0x1eba('0x3a')]()['then'](function(){var _0x5a019e=_0x31f4bd[_0x1eba('0x3b')]({'plain':!![]});var _0x5f22c7=_0x1eba('0x3c');return db[_0x1eba('0x3d')]['destroy']({'where':{'type':_0x5f22c7,'resourceId':_0x5a019e['id']}})[_0x1eba('0x23')](function(){return _0x31f4bd;});})[_0x1eba('0x23')](function(){_0x55beda['status'](0xcc)[_0x1eba('0x30')]();});}};}function handleEntityNotFound(_0x1f0491,_0x428a36){return function(_0x3e588d){if(!_0x3e588d){_0x1f0491[_0x1eba('0x3e')](0x194);}return _0x3e588d;};}function handleError(_0x1f3729,_0x252c47){_0x252c47=_0x252c47||0x1f4;return function(_0x4e00dc){logger[_0x1eba('0x2a')](_0x4e00dc[_0x1eba('0x3f')]);if(_0x4e00dc[_0x1eba('0x40')]){delete _0x4e00dc[_0x1eba('0x40')];}_0x1f3729['status'](_0x252c47)[_0x1eba('0x41')](_0x4e00dc);};}exports[_0x1eba('0x42')]=function(_0xae58b7,_0x51da15){var _0xe8aed6={'include':[{'model':db[_0x1eba('0x43')],'as':_0x1eba('0x44')}]},_0x404205={},_0x231883={'count':0x0,'rows':[]};var _0x111c4c=_[_0x1eba('0x45')](db[_0x1eba('0x46')][_0x1eba('0x47')],function(_0x543e77){return{'name':_0x543e77[_0x1eba('0x48')],'type':_0x543e77[_0x1eba('0x49')][_0x1eba('0x4a')]};});_0x404205[_0x1eba('0x4b')]=_[_0x1eba('0x45')](_0x111c4c,'name');_0x404205[_0x1eba('0x4c')]=_['keys'](_0xae58b7[_0x1eba('0x4c')]);_0x404205[_0x1eba('0x4d')]=_[_0x1eba('0x4e')](_0x404205[_0x1eba('0x4b')],_0x404205[_0x1eba('0x4c')]);_0xe8aed6[_0x1eba('0x4f')]=_[_0x1eba('0x4e')](_0x404205[_0x1eba('0x4b')],qs[_0x1eba('0x50')](_0xae58b7[_0x1eba('0x4c')][_0x1eba('0x50')]));_0xe8aed6[_0x1eba('0x4f')]=_0xe8aed6[_0x1eba('0x4f')][_0x1eba('0x51')]?_0xe8aed6['attributes']:_0x404205[_0x1eba('0x4b')];if(!_0xae58b7[_0x1eba('0x4c')]['hasOwnProperty'](_0x1eba('0x52'))){_0xe8aed6[_0x1eba('0x34')]=qs[_0x1eba('0x34')](_0xae58b7[_0x1eba('0x4c')]['limit']);_0xe8aed6[_0x1eba('0x32')]=qs[_0x1eba('0x32')](_0xae58b7[_0x1eba('0x4c')][_0x1eba('0x32')]);}_0xe8aed6[_0x1eba('0x53')]=qs[_0x1eba('0x54')](_0xae58b7['query'][_0x1eba('0x54')]);_0xe8aed6[_0x1eba('0x55')]=qs[_0x1eba('0x4d')](_[_0x1eba('0x56')](_0xae58b7[_0x1eba('0x4c')],_0x404205[_0x1eba('0x4d')]),_0x111c4c);if(_0xae58b7[_0x1eba('0x4c')][_0x1eba('0x57')]){_0xe8aed6['where']=_[_0x1eba('0x58')](_0xe8aed6['where'],{'$or':_['map'](_0x111c4c,function(_0x22877a){if(_0x22877a[_0x1eba('0x49')]!=='VIRTUAL'){var _0x4e836f={};_0x4e836f[_0x22877a[_0x1eba('0x40')]]={'$like':'%'+_0xae58b7['query'][_0x1eba('0x57')]+'%'};return _0x4e836f;}})});}_0xe8aed6=_[_0x1eba('0x58')]({},_0xe8aed6,_0xae58b7[_0x1eba('0x59')]);var _0x2e768d={'where':_0xe8aed6['where']};return db[_0x1eba('0x46')][_0x1eba('0x35')](_0x2e768d)[_0x1eba('0x23')](function(_0x2b49c9){_0x231883[_0x1eba('0x35')]=_0x2b49c9;if(_0xae58b7[_0x1eba('0x4c')][_0x1eba('0x5a')]){_0xe8aed6[_0x1eba('0x5b')]=[{'all':!![]}];}return db[_0x1eba('0x46')]['findAll'](_0xe8aed6);})[_0x1eba('0x23')](function(_0x3f6cf0){_0x231883[_0x1eba('0x5c')]=_0x3f6cf0;return _0x231883;})[_0x1eba('0x23')](respondWithFilteredResult(_0x51da15,_0xe8aed6))[_0x1eba('0x2e')](handleError(_0x51da15,null));};exports[_0x1eba('0x5d')]=function(_0x2a4485,_0x59ea59){var _0x42934e={'raw':![],'where':{'id':_0x2a4485['params']['id']},'include':[{'model':db[_0x1eba('0x43')],'as':_0x1eba('0x44')}]},_0x47f620={};_0x47f620[_0x1eba('0x4b')]=_[_0x1eba('0x5e')](db['FaxAccount'][_0x1eba('0x47')]);_0x47f620[_0x1eba('0x4c')]=_['keys'](_0x2a4485[_0x1eba('0x4c')]);_0x47f620[_0x1eba('0x4d')]=_[_0x1eba('0x4e')](_0x47f620['model'],_0x47f620[_0x1eba('0x4c')]);_0x42934e[_0x1eba('0x4f')]=_[_0x1eba('0x4e')](_0x47f620['model'],qs[_0x1eba('0x50')](_0x2a4485[_0x1eba('0x4c')]['fields']));_0x42934e[_0x1eba('0x4f')]=_0x42934e['attributes'][_0x1eba('0x51')]?_0x42934e[_0x1eba('0x4f')]:_0x47f620['model'];if(_0x2a4485[_0x1eba('0x4c')][_0x1eba('0x5a')]){_0x42934e[_0x1eba('0x5b')]=[{'all':!![]}];}_0x42934e=_[_0x1eba('0x58')]({},_0x42934e,_0x2a4485[_0x1eba('0x59')]);return db['FaxAccount'][_0x1eba('0x5f')](_0x42934e)[_0x1eba('0x23')](handleEntityNotFound(_0x59ea59,null))[_0x1eba('0x23')](respondWithResult(_0x59ea59,null))['catch'](handleError(_0x59ea59,null));};exports[_0x1eba('0x60')]=function(_0x560215,_0x5e2d52){return db[_0x1eba('0x46')][_0x1eba('0x60')](_0x560215[_0x1eba('0x61')],{})[_0x1eba('0x23')](function(_0x5cd0b9){var _0x395622=_0x560215['user'][_0x1eba('0x3b')]({'plain':!![]});if(!_0x395622)throw new Error('Unable\x20to\x20retrieve\x20the\x20current\x20user');if(_0x395622[_0x1eba('0x62')]==='user'){var _0x2ee008=_0x5cd0b9[_0x1eba('0x3b')]({'plain':!![]});var _0x1d2c34='FaxAccounts';return db[_0x1eba('0x63')][_0x1eba('0x5f')]({'where':{'name':_0x1d2c34,'userProfileId':_0x395622['userProfileId']},'raw':!![]})[_0x1eba('0x23')](function(_0x38831f){if(_0x38831f&&_0x38831f[_0x1eba('0x64')]===0x0){return db[_0x1eba('0x3d')][_0x1eba('0x60')]({'name':_0x2ee008['name'],'resourceId':_0x2ee008['id'],'type':_0x38831f[_0x1eba('0x40')],'sectionId':_0x38831f['id']},{})[_0x1eba('0x23')](function(){return _0x5cd0b9;});}else{return _0x5cd0b9;}})[_0x1eba('0x2e')](function(_0xa8e9eb){logger['error'](_0x1eba('0x65'),_0xa8e9eb);throw _0xa8e9eb;});}return _0x5cd0b9;})['then'](respondWithResult(_0x5e2d52,0xc9))[_0x1eba('0x2e')](handleError(_0x5e2d52,null));};exports[_0x1eba('0x39')]=function(_0x529b4c,_0x2b6f04){if(_0x529b4c[_0x1eba('0x61')]['id']){delete _0x529b4c['body']['id'];}return db[_0x1eba('0x46')][_0x1eba('0x5f')]({'where':{'id':_0x529b4c['params']['id']},'include':[{'model':db[_0x1eba('0x43')],'as':_0x1eba('0x44')}]})[_0x1eba('0x23')](handleEntityNotFound(_0x2b6f04,null))[_0x1eba('0x23')](saveUpdates(_0x529b4c[_0x1eba('0x61')],null))[_0x1eba('0x23')](respondWithResult(_0x2b6f04,null))[_0x1eba('0x2e')](handleError(_0x2b6f04,null));};exports[_0x1eba('0x3a')]=function(_0x1d6ecd,_0x15502c){return db[_0x1eba('0x46')]['find']({'where':{'id':_0x1d6ecd[_0x1eba('0x66')]['id']}})[_0x1eba('0x23')](handleEntityNotFound(_0x15502c,null))[_0x1eba('0x23')](removeEntity(_0x15502c,null))[_0x1eba('0x2e')](handleError(_0x15502c,null));};exports[_0x1eba('0x67')]=function(_0x44bd96,_0x1c7063){return db[_0x1eba('0x46')][_0x1eba('0x67')]()[_0x1eba('0x23')](respondWithResult(_0x1c7063,null))['catch'](handleError(_0x1c7063,null));};exports[_0x1eba('0x68')]=function(_0x24159b,_0x3b9418,_0x3d7a75){if(_0x24159b[_0x1eba('0x61')]['id']){delete _0x24159b['body']['id'];}return db[_0x1eba('0x46')][_0x1eba('0x5f')]({'where':{'id':_0x24159b['params']['id']}})['then'](handleEntityNotFound(_0x3b9418,null))['then'](function(_0x287da6){if(_0x287da6){_0x24159b[_0x1eba('0x61')][_0x1eba('0x69')]=_0x287da6['id'];return db[_0x1eba('0x6a')][_0x1eba('0x60')](_0x24159b[_0x1eba('0x61')]);}})['then'](respondWithResult(_0x3b9418,null))[_0x1eba('0x2e')](handleError(_0x3b9418,null));};exports[_0x1eba('0x6b')]=function(_0x47d062,_0x3c767a,_0x4b0c98){var _0x3f858f={'raw':![],'where':{}};var _0x55e09={};var _0x190ff7={'count':0x0,'rows':[]};return db['FaxAccount'][_0x1eba('0x6c')]({'where':{'id':_0x47d062[_0x1eba('0x66')]['id']}})['then'](handleEntityNotFound(_0x3c767a,null))[_0x1eba('0x23')](function(_0x5bdf1a){if(_0x5bdf1a){_0x55e09['model']=_[_0x1eba('0x5e')](db['Disposition'][_0x1eba('0x47')]);_0x55e09[_0x1eba('0x4c')]=_['keys'](_0x47d062['query']);_0x55e09[_0x1eba('0x4d')]=_[_0x1eba('0x4e')](_0x55e09[_0x1eba('0x4b')],_0x55e09[_0x1eba('0x4c')]);_0x3f858f[_0x1eba('0x4f')]=_[_0x1eba('0x4e')](_0x55e09['model'],qs[_0x1eba('0x50')](_0x47d062[_0x1eba('0x4c')]['fields']));_0x3f858f[_0x1eba('0x4f')]=_0x3f858f['attributes']['length']?_0x3f858f['attributes']:_0x55e09['model'];if(!_0x47d062[_0x1eba('0x4c')]['hasOwnProperty'](_0x1eba('0x52'))){_0x3f858f[_0x1eba('0x34')]=qs['limit'](_0x47d062[_0x1eba('0x4c')][_0x1eba('0x34')]);_0x3f858f[_0x1eba('0x32')]=qs[_0x1eba('0x32')](_0x47d062[_0x1eba('0x4c')][_0x1eba('0x32')]);}_0x3f858f[_0x1eba('0x53')]=qs[_0x1eba('0x54')](_0x47d062['query'][_0x1eba('0x54')]);_0x3f858f[_0x1eba('0x55')]=qs[_0x1eba('0x4d')](_[_0x1eba('0x56')](_0x47d062[_0x1eba('0x4c')],_0x55e09[_0x1eba('0x4d')]));_0x3f858f['where'][_0x1eba('0x69')]=_0x5bdf1a['id'];if(_0x47d062[_0x1eba('0x4c')][_0x1eba('0x57')]){_0x3f858f[_0x1eba('0x55')]=_[_0x1eba('0x58')](_0x3f858f[_0x1eba('0x55')],{'$or':_['map'](_0x3f858f['attributes'],function(_0x47cda3){var _0x1f0a3b={};_0x1f0a3b[_0x47cda3]={'$like':'%'+_0x47d062[_0x1eba('0x4c')][_0x1eba('0x57')]+'%'};return _0x1f0a3b;})});}_0x3f858f=_[_0x1eba('0x58')]({},_0x3f858f,_0x47d062[_0x1eba('0x59')]);return db[_0x1eba('0x6a')][_0x1eba('0x35')]({'where':_0x3f858f[_0x1eba('0x55')]})[_0x1eba('0x23')](function(_0x2c2070){_0x190ff7['count']=_0x2c2070;if(_0x47d062[_0x1eba('0x4c')][_0x1eba('0x5a')]){_0x3f858f[_0x1eba('0x5b')]=[{'all':!![]}];}return db['Disposition']['findAll'](_0x3f858f);})[_0x1eba('0x23')](function(_0xa56bf9){_0x190ff7[_0x1eba('0x5c')]=_0xa56bf9;return _0x190ff7;});}})[_0x1eba('0x23')](respondWithFilteredResult(_0x3c767a,_0x3f858f))[_0x1eba('0x2e')](handleError(_0x3c767a,null));};exports[_0x1eba('0x6d')]=function(_0x25b131,_0x2ef10a,_0x3407a5){return db[_0x1eba('0x46')]['find']({'where':{'id':_0x25b131['params']['id']}})[_0x1eba('0x23')](handleEntityNotFound(_0x2ef10a,null))['then'](function(_0x39012b){if(_0x39012b){return _0x39012b[_0x1eba('0x6d')](_0x25b131[_0x1eba('0x4c')][_0x1eba('0x6e')]);}})[_0x1eba('0x23')](respondWithStatusCode(_0x2ef10a,null))[_0x1eba('0x2e')](handleError(_0x2ef10a,null));};exports[_0x1eba('0x6f')]=function(_0x144597,_0x1a789a,_0x59fa51){if(_0x144597[_0x1eba('0x61')]['id']){delete _0x144597[_0x1eba('0x61')]['id'];}return db[_0x1eba('0x46')][_0x1eba('0x5f')]({'where':{'id':_0x144597[_0x1eba('0x66')]['id']}})['then'](handleEntityNotFound(_0x1a789a,null))[_0x1eba('0x23')](function(_0x35f01c){if(_0x35f01c){_0x144597['body'][_0x1eba('0x69')]=_0x35f01c['id'];return db[_0x1eba('0x70')][_0x1eba('0x60')](_0x144597[_0x1eba('0x61')]);}})[_0x1eba('0x23')](respondWithResult(_0x1a789a,null))[_0x1eba('0x2e')](handleError(_0x1a789a,null));};exports[_0x1eba('0x71')]=function(_0x42863b,_0x408bf2,_0x58f1b9){var _0x26ba82={'raw':![],'where':{}};var _0x304149={};var _0x3d1f87={'count':0x0,'rows':[]};return db[_0x1eba('0x46')][_0x1eba('0x6c')]({'where':{'id':_0x42863b[_0x1eba('0x66')]['id']}})[_0x1eba('0x23')](handleEntityNotFound(_0x408bf2,null))[_0x1eba('0x23')](function(_0x4a821f){if(_0x4a821f){_0x304149['model']=_[_0x1eba('0x5e')](db[_0x1eba('0x70')][_0x1eba('0x47')]);_0x304149['query']=_['keys'](_0x42863b[_0x1eba('0x4c')]);_0x304149[_0x1eba('0x4d')]=_[_0x1eba('0x4e')](_0x304149[_0x1eba('0x4b')],_0x304149['query']);_0x26ba82[_0x1eba('0x4f')]=_[_0x1eba('0x4e')](_0x304149[_0x1eba('0x4b')],qs[_0x1eba('0x50')](_0x42863b[_0x1eba('0x4c')][_0x1eba('0x50')]));_0x26ba82['attributes']=_0x26ba82[_0x1eba('0x4f')][_0x1eba('0x51')]?_0x26ba82[_0x1eba('0x4f')]:_0x304149['model'];if(!_0x42863b[_0x1eba('0x4c')]['hasOwnProperty']('nolimit')){_0x26ba82[_0x1eba('0x34')]=qs['limit'](_0x42863b[_0x1eba('0x4c')][_0x1eba('0x34')]);_0x26ba82[_0x1eba('0x32')]=qs[_0x1eba('0x32')](_0x42863b[_0x1eba('0x4c')][_0x1eba('0x32')]);}_0x26ba82[_0x1eba('0x53')]=qs[_0x1eba('0x54')](_0x42863b[_0x1eba('0x4c')][_0x1eba('0x54')]);_0x26ba82[_0x1eba('0x55')]=qs['filters'](_['pick'](_0x42863b['query'],_0x304149['filters']));_0x26ba82[_0x1eba('0x55')][_0x1eba('0x69')]=_0x4a821f['id'];if(_0x42863b[_0x1eba('0x4c')]['filter']){_0x26ba82[_0x1eba('0x55')]=_[_0x1eba('0x58')](_0x26ba82[_0x1eba('0x55')],{'$or':_[_0x1eba('0x45')](_0x26ba82[_0x1eba('0x4f')],function(_0x25e67e){var _0x3561e3={};_0x3561e3[_0x25e67e]={'$like':'%'+_0x42863b[_0x1eba('0x4c')][_0x1eba('0x57')]+'%'};return _0x3561e3;})});}_0x26ba82=_[_0x1eba('0x58')]({},_0x26ba82,_0x42863b[_0x1eba('0x59')]);return db[_0x1eba('0x70')][_0x1eba('0x35')]({'where':_0x26ba82[_0x1eba('0x55')]})[_0x1eba('0x23')](function(_0x2dd565){_0x3d1f87[_0x1eba('0x35')]=_0x2dd565;if(_0x42863b[_0x1eba('0x4c')][_0x1eba('0x5a')]){_0x26ba82[_0x1eba('0x5b')]=[{'all':!![]}];}return db[_0x1eba('0x70')]['findAll'](_0x26ba82);})[_0x1eba('0x23')](function(_0x2f2bd0){_0x3d1f87[_0x1eba('0x5c')]=_0x2f2bd0;return _0x3d1f87;});}})[_0x1eba('0x23')](respondWithFilteredResult(_0x408bf2,_0x26ba82))[_0x1eba('0x2e')](handleError(_0x408bf2,null));};exports[_0x1eba('0x72')]=function(_0x1168d9,_0x47db91,_0x30afc4){return db[_0x1eba('0x46')][_0x1eba('0x5f')]({'where':{'id':_0x1168d9['params']['id']}})[_0x1eba('0x23')](handleEntityNotFound(_0x47db91,null))['then'](function(_0x4f7812){if(_0x4f7812){return _0x4f7812['removeAnswers'](_0x1168d9[_0x1eba('0x4c')][_0x1eba('0x6e')]);}})['then'](respondWithStatusCode(_0x47db91,null))['catch'](handleError(_0x47db91,null));};exports[_0x1eba('0x73')]=function(_0x5ba892,_0x3a659b,_0xa48fed){return db[_0x1eba('0x74')][_0x1eba('0x5f')]({'where':{'id':_0x5ba892[_0x1eba('0x66')]['id']}})[_0x1eba('0x23')](handleEntityNotFound(_0x3a659b,null))['then'](function(_0xc48067){if(_0xc48067){return _0xc48067[_0x1eba('0x73')](_0x5ba892[_0x1eba('0x61')][_0x1eba('0x6e')],_[_0x1eba('0x75')](_0x5ba892[_0x1eba('0x61')],[_0x1eba('0x6e'),'id'])||{});}})[_0x1eba('0x23')](respondWithResult(_0x3a659b,null))[_0x1eba('0x2e')](handleError(_0x3a659b,null));};exports[_0x1eba('0x76')]=function(_0x3d2816,_0x226a88,_0x196e63){var _0x2fb90c={'raw':![],'where':{}};var _0x473ced={};var _0x15e86a={'count':0x0,'rows':[]};return db[_0x1eba('0x46')][_0x1eba('0x6c')]({'where':{'id':_0x3d2816[_0x1eba('0x66')]['id']}})[_0x1eba('0x23')](handleEntityNotFound(_0x226a88,null))[_0x1eba('0x23')](function(_0x559996){if(_0x559996){_0x473ced['model']=_[_0x1eba('0x5e')](db['FaxInteraction'][_0x1eba('0x47')]);_0x473ced[_0x1eba('0x4c')]=_[_0x1eba('0x5e')](_0x3d2816[_0x1eba('0x4c')]);_0x473ced[_0x1eba('0x4d')]=_[_0x1eba('0x4e')](_0x473ced[_0x1eba('0x4b')],_0x473ced[_0x1eba('0x4c')]);_0x2fb90c[_0x1eba('0x4f')]=_['intersection'](_0x473ced[_0x1eba('0x4b')],qs[_0x1eba('0x50')](_0x3d2816[_0x1eba('0x4c')]['fields']));_0x2fb90c[_0x1eba('0x4f')]=_0x2fb90c['attributes'][_0x1eba('0x51')]?_0x2fb90c['attributes']:_0x473ced[_0x1eba('0x4b')];if(!_0x3d2816[_0x1eba('0x4c')][_0x1eba('0x77')]('nolimit')){_0x2fb90c['limit']=qs[_0x1eba('0x34')](_0x3d2816[_0x1eba('0x4c')][_0x1eba('0x34')]);_0x2fb90c['offset']=qs['offset'](_0x3d2816[_0x1eba('0x4c')][_0x1eba('0x32')]);}_0x2fb90c['order']=qs[_0x1eba('0x54')](_0x3d2816[_0x1eba('0x4c')][_0x1eba('0x54')]);_0x2fb90c[_0x1eba('0x55')]=qs[_0x1eba('0x4d')](_['pick'](_0x3d2816['query'],_0x473ced[_0x1eba('0x4d')]));_0x2fb90c[_0x1eba('0x55')][_0x1eba('0x69')]=_0x559996['id'];if(_0x3d2816[_0x1eba('0x4c')][_0x1eba('0x57')]){_0x2fb90c[_0x1eba('0x55')]=_['merge'](_0x2fb90c[_0x1eba('0x55')],{'$or':_[_0x1eba('0x45')](_0x2fb90c[_0x1eba('0x4f')],function(_0xbc4596){var _0x559357={};_0x559357[_0xbc4596]={'$like':'%'+_0x3d2816[_0x1eba('0x4c')][_0x1eba('0x57')]+'%'};return _0x559357;})});}_0x2fb90c=_['merge']({},_0x2fb90c,_0x3d2816[_0x1eba('0x59')]);return db[_0x1eba('0x74')]['count']({'where':_0x2fb90c[_0x1eba('0x55')]})[_0x1eba('0x23')](function(_0x40c14d){_0x15e86a['count']=_0x40c14d;if(_0x3d2816[_0x1eba('0x4c')][_0x1eba('0x5a')]){_0x2fb90c['include']=[{'model':db['CmContact'],'as':'Contact','required':![]},{'model':db[_0x1eba('0x78')],'as':_0x1eba('0x79'),'attributes':[_0x1eba('0x40'),_0x1eba('0x7a'),_0x1eba('0x7b')],'required':![]},{'model':db['Tag'],'as':'Tags','attributes':['id','name',_0x1eba('0x7c')],'where':_0x3d2816[_0x1eba('0x4c')][_0x1eba('0x7d')]?{'id':_0x3d2816[_0x1eba('0x4c')][_0x1eba('0x7d')]}:undefined,'required':_0x3d2816[_0x1eba('0x4c')]['tag']?!![]:![]}];}return db[_0x1eba('0x74')][_0x1eba('0x7e')](_0x2fb90c);})[_0x1eba('0x23')](function(_0x5eeb1c){_0x15e86a['rows']=_0x5eeb1c;return _0x15e86a;});}})[_0x1eba('0x23')](respondWithFilteredResult(_0x226a88,_0x2fb90c))[_0x1eba('0x2e')](handleError(_0x226a88,null));};exports['addApplications']=function(_0x33d893,_0x4e663d){var _0xb85f3=_0x33d893[_0x1eba('0x66')]['id'];var _0x2afba3=_0x33d893['body'];var _0x377658=0xc8;var _0x48b4d9=null;return db[_0x1eba('0x7f')][_0x1eba('0x80')]({'isolationLevel':db['sequelize'][_0x1eba('0x81')][_0x1eba('0x82')][_0x1eba('0x83')]},function(_0x4357b8){return db[_0x1eba('0x46')][_0x1eba('0x6c')]({'where':{'id':_0xb85f3},'transaction':_0x4357b8})[_0x1eba('0x23')](function(_0x47eb59){if(_0x47eb59){return db[_0x1eba('0x84')][_0x1eba('0x3a')]({'where':{'FaxAccountId':_0xb85f3},'transaction':_0x4357b8})[_0x1eba('0x23')](function(){var _0x2e9ddb=_['map'](_0x2afba3,function(_0x528078){_0x528078['FaxAccountId']=_0xb85f3;return _0x528078;});return db['FaxApplication'][_0x1eba('0x85')](_0x2e9ddb,{'transaction':_0x4357b8});});}else{_0x377658=0x194;_0x48b4d9=[];}});})[_0x1eba('0x23')](function(){if(_0x377658!==0x194){return db[_0x1eba('0x84')][_0x1eba('0x86')]({'where':{'FaxAccountId':_0xb85f3},'order':_0x1eba('0x87')})[_0x1eba('0x23')](function(_0x49b8b4){_0x48b4d9=_0x49b8b4;});}})['catch'](function(_0x34f9da){_0x377658=0x1f4;logger[_0x1eba('0x2a')](_0x34f9da['stack']);if(_0x34f9da[_0x1eba('0x40')]){delete _0x34f9da[_0x1eba('0x40')];}_0x48b4d9=_0x34f9da;})[_0x1eba('0x88')](function(){if(_0x48b4d9===null){_0x4e663d[_0x1eba('0x3e')](_0x377658);}else{if(_0x377658===0x1f4){_0x4e663d['status'](_0x377658)['send'](_0x48b4d9);}else{_0x4e663d[_0x1eba('0x2f')](_0x377658)[_0x1eba('0x31')](_0x48b4d9);}}});};exports[_0x1eba('0x89')]=function(_0x5cb413,_0x1eed4d,_0x3e1253){var _0x5d4a1e={};var _0x35f5fb={};var _0x36fbd7;var _0x5b563f;return db[_0x1eba('0x46')]['findOne']({'where':{'id':_0x5cb413['params']['id']}})[_0x1eba('0x23')](handleEntityNotFound(_0x1eed4d,null))[_0x1eba('0x23')](function(_0x102d3e){if(_0x102d3e){_0x36fbd7=_0x102d3e;_0x35f5fb[_0x1eba('0x4b')]=_[_0x1eba('0x5e')](db[_0x1eba('0x84')][_0x1eba('0x47')]);_0x35f5fb[_0x1eba('0x4c')]=_[_0x1eba('0x5e')](_0x5cb413[_0x1eba('0x4c')]);_0x35f5fb[_0x1eba('0x4d')]=_['intersection'](_0x35f5fb['model'],_0x35f5fb[_0x1eba('0x4c')]);_0x5d4a1e['attributes']=_['intersection'](_0x35f5fb['model'],qs[_0x1eba('0x50')](_0x5cb413[_0x1eba('0x4c')][_0x1eba('0x50')]));_0x5d4a1e['attributes']=_0x5d4a1e[_0x1eba('0x4f')]['length']?_0x5d4a1e[_0x1eba('0x4f')]:_0x35f5fb[_0x1eba('0x4b')];_0x5d4a1e['order']=qs[_0x1eba('0x54')](_0x5cb413[_0x1eba('0x4c')]['sort']);_0x5d4a1e[_0x1eba('0x55')]=qs[_0x1eba('0x4d')](_[_0x1eba('0x56')](_0x5cb413[_0x1eba('0x4c')],_0x35f5fb['filters']));if(_0x5cb413[_0x1eba('0x4c')][_0x1eba('0x57')]){_0x5d4a1e[_0x1eba('0x55')]=_['merge'](_0x5d4a1e['where'],{'$or':_[_0x1eba('0x45')](_0x5d4a1e['attributes'],function(_0x20b21d){var _0x416ed1={};_0x416ed1[_0x20b21d]={'$like':'%'+_0x5cb413[_0x1eba('0x4c')][_0x1eba('0x57')]+'%'};return _0x416ed1;})});}_0x5d4a1e=_['merge']({},_0x5d4a1e,_0x5cb413[_0x1eba('0x59')]);return _0x36fbd7[_0x1eba('0x89')](_0x5d4a1e);}})[_0x1eba('0x23')](function(_0x37d6f3){if(_0x37d6f3){_0x5b563f=_0x37d6f3[_0x1eba('0x51')];if(!_0x5cb413[_0x1eba('0x4c')][_0x1eba('0x77')](_0x1eba('0x52'))){_0x5d4a1e[_0x1eba('0x34')]=qs[_0x1eba('0x34')](_0x5cb413[_0x1eba('0x4c')]['limit']);_0x5d4a1e[_0x1eba('0x32')]=qs[_0x1eba('0x32')](_0x5cb413[_0x1eba('0x4c')][_0x1eba('0x32')]);}return _0x36fbd7[_0x1eba('0x89')](_0x5d4a1e);}})[_0x1eba('0x23')](function(_0x18514f){if(_0x18514f){return _0x18514f?{'count':_0x5b563f,'rows':_0x18514f}:null;}})[_0x1eba('0x23')](respondWithResult(_0x1eed4d,null))[_0x1eba('0x2e')](handleError(_0x1eed4d,null));};function Extension(_0x2180a1,_0xb12fd9,_0x3f8300,_0x1562e7){this['context']=_0x1eba('0x8a');this[_0x1eba('0x8b')]=_0x2180a1[_0x1eba('0x8c')];this[_0x1eba('0x8d')]=_0x1562e7;this['type']=_0x1eba('0x8e');this['description']=_0x1eba('0x8f');this['FaxAccountId']=_0x2180a1['id'];this['priority']=_0xb12fd9;this[_0x1eba('0x90')]=_0x3f8300;}function createExtensionsReciveFax(_0x51c711){var _0x346d7f=0x1;var _0x37d24a=[];_0x37d24a[_0x1eba('0x91')](new Extension(_0x51c711,_0x346d7f,'',_0x1eba('0x92')));_0x346d7f+=0x1;_0x37d24a['push'](new Extension(_0x51c711,_0x346d7f,'CDR(type)=inbound-fax',_0x1eba('0x93')));_0x346d7f+=0x1;for(var _0x3df33b in _0x51c711){if(_0x51c711[_0x1eba('0x77')](_0x3df33b)&&(_0x3df33b==='ecm'||_0x3df33b===_0x1eba('0x8c')||_0x3df33b===_0x1eba('0x94')||_0x3df33b===_0x1eba('0x95')||_0x3df33b==='headerinfo'||_0x3df33b===_0x1eba('0x96')||_0x3df33b===_0x1eba('0x97')||_0x3df33b==='modem'||_0x3df33b===_0x1eba('0x98'))){_0x37d24a[_0x1eba('0x91')](new Extension(_0x51c711,_0x346d7f,_0x1eba('0x99')+_0x3df33b+')='+_0x51c711[_0x3df33b],_0x1eba('0x93')));_0x346d7f+=0x1;}}_0x37d24a[_0x1eba('0x91')](new Extension(_0x51c711,_0x346d7f,'6',_0x1eba('0x9a')));_0x346d7f+=0x1;_0x37d24a[_0x1eba('0x91')](new Extension(_0x51c711,_0x346d7f,_0x1eba('0x9b'),_0x1eba('0x9c')));_0x346d7f=0x0;return _0x37d24a;}exports[_0x1eba('0x9d')]=function(_0x5dae26,_0x4ebf69,_0x3fef4b){var _0x4d2494;return db[_0x1eba('0x7f')][_0x1eba('0x80')](function(_0x59e393){return db['FaxAccount'][_0x1eba('0x60')](_0x5dae26[_0x1eba('0x61')],{'transaction':_0x59e393})['then'](function(_0x172c3c){_0x4d2494=_0x172c3c[_0x1eba('0x3b')]({'plain':!![]});return db[_0x1eba('0x9e')]['bulkCreate'](createExtensionsReciveFax(_0x4d2494),{'transaction':_0x59e393});});})['then'](function(){return _0x4d2494;})[_0x1eba('0x23')](respondWithResult(_0x4ebf69,null))[_0x1eba('0x2e')](handleError(_0x4ebf69,null));};exports[_0x1eba('0x9f')]=function(_0x33dce9,_0xf79f26,_0x29541d){var _0x5c0f61;return db[_0x1eba('0x7f')][_0x1eba('0x80')](function(_0x157dff){return db['FaxAccount'][_0x1eba('0x39')](_0x33dce9[_0x1eba('0x61')],{'where':{'id':_0x33dce9[_0x1eba('0x61')]['id']},'transaction':_0x157dff})[_0x1eba('0x23')](function(_0x251a38){return db[_0x1eba('0x9e')][_0x1eba('0x3a')]({'where':{'FaxAccountId':_0x33dce9[_0x1eba('0x61')]['id']},'transaction':_0x157dff})['then'](function(_0x1ffca3){return db['VoiceExtension'][_0x1eba('0x85')](createExtensionsReciveFax(_['omit'](_0x33dce9[_0x1eba('0x61')],[_0x1eba('0xa0'),'key',_0x1eba('0xa1'),_0x1eba('0xa2'),'TrunkId',_0x1eba('0xa3')])),{'transaction':_0x157dff});});});})[_0x1eba('0x23')](function(){return db['FaxAccount']['findById'](_0x33dce9[_0x1eba('0x61')]['id']);})[_0x1eba('0x23')](respondWithResult(_0xf79f26,null))[_0x1eba('0x2e')](handleError(_0xf79f26,null));};exports[_0x1eba('0xa4')]=function(_0x2e3848,_0x367ce9,_0xf80ce5){var _0x357281={'raw':!![],'where':{}};var _0x1232e4={};var _0x2e1db9={'count':0x0,'rows':[]};return db[_0x1eba('0x46')]['findOne']({'where':{'id':_0x2e3848[_0x1eba('0x66')]['id']}})['then'](handleEntityNotFound(_0x367ce9,null))[_0x1eba('0x23')](function(_0x40f9f8){if(_0x40f9f8){_0x1232e4['model']=_[_0x1eba('0x5e')](db['FaxMessage'][_0x1eba('0x47')]);_0x1232e4[_0x1eba('0x4c')]=_[_0x1eba('0x5e')](_0x2e3848[_0x1eba('0x4c')]);_0x1232e4['filters']=_[_0x1eba('0x4e')](_0x1232e4[_0x1eba('0x4b')],_0x1232e4[_0x1eba('0x4c')]);_0x357281['attributes']=_[_0x1eba('0x4e')](_0x1232e4['model'],qs[_0x1eba('0x50')](_0x2e3848[_0x1eba('0x4c')][_0x1eba('0x50')]));_0x357281[_0x1eba('0x4f')]=_0x357281['attributes'][_0x1eba('0x51')]?_0x357281[_0x1eba('0x4f')]:_0x1232e4[_0x1eba('0x4b')];if(!_0x2e3848[_0x1eba('0x4c')][_0x1eba('0x77')](_0x1eba('0x52'))){_0x357281[_0x1eba('0x34')]=qs['limit'](_0x2e3848[_0x1eba('0x4c')][_0x1eba('0x34')]);_0x357281[_0x1eba('0x32')]=qs['offset'](_0x2e3848[_0x1eba('0x4c')][_0x1eba('0x32')]);}_0x357281['order']=qs[_0x1eba('0x54')](_0x2e3848[_0x1eba('0x4c')][_0x1eba('0x54')]);_0x357281['where']=qs[_0x1eba('0x4d')](_[_0x1eba('0x56')](_0x2e3848[_0x1eba('0x4c')],_0x1232e4[_0x1eba('0x4d')]));_0x357281[_0x1eba('0x55')][_0x1eba('0x69')]=_0x40f9f8['id'];if(_0x2e3848[_0x1eba('0x4c')][_0x1eba('0x57')]){_0x357281['where']=_[_0x1eba('0x58')](_0x357281[_0x1eba('0x55')],{'$or':_[_0x1eba('0x45')](_0x357281[_0x1eba('0x4f')],function(_0x29d87f){var _0x3bc7f1={};_0x3bc7f1[_0x29d87f]={'$like':'%'+_0x2e3848[_0x1eba('0x4c')]['filter']+'%'};return _0x3bc7f1;})});}if(_0x2e3848[_0x1eba('0x4c')][_0x1eba('0xa5')]){var _0xb255ef=_0x2e3848[_0x1eba('0x4c')][_0x1eba('0xa5')]['split'](',');var _0x6dedb4={};_0x6dedb4[_0xb255ef[0x0]]={'$gte':moment(_0xb255ef[0x1])[_0x1eba('0xa6')](_0x1eba('0xa7'))};_0x357281[_0x1eba('0x55')]=_[_0x1eba('0x58')](_0x357281[_0x1eba('0x55')],_0x6dedb4);}_0x357281=_[_0x1eba('0x58')]({},_0x357281,_0x2e3848[_0x1eba('0x59')]);return db[_0x1eba('0xa8')]['count']({'where':_0x357281[_0x1eba('0x55')]})[_0x1eba('0x23')](function(_0x43e4f5){_0x2e1db9[_0x1eba('0x35')]=_0x43e4f5;if(_0x2e3848['query']['includeAll']){_0x357281['include']=[{'all':!![]}];}return db['FaxMessage'][_0x1eba('0x7e')](_0x357281);})[_0x1eba('0x23')](function(_0x42456a){_0x2e1db9[_0x1eba('0x5c')]=_0x42456a;return _0x2e1db9;});}})[_0x1eba('0x23')](respondWithFilteredResult(_0x367ce9,_0x357281))[_0x1eba('0x2e')](handleError(_0x367ce9,null));};exports[_0x1eba('0x41')]=function(_0x31f2df,_0x77485e,_0x1c110d){var _0x4966c7,_0x12f95b={},_0x31c11e;if(_0x31f2df['body']['to']){_0x31c11e=_0x31f2df[_0x1eba('0x61')]['to'][0x0];}return db[_0x1eba('0x46')][_0x1eba('0x5f')]({'where':{'id':_0x31f2df['params']['id']},'include':[{'model':db[_0x1eba('0xa9')],'as':_0x1eba('0xaa'),'include':[{'model':db[_0x1eba('0xab')],'as':_0x1eba('0xac'),'where':{'fax':_0x31c11e},'limit':0x1,'order':[[_0x1eba('0xa2'),'DESC']]}]}]})['then'](handleEntityNotFound(_0x77485e,null))['then'](function(_0x3a4828){_0x4966c7=_0x3a4828;if(_0x31f2df[_0x1eba('0x61')][_0x1eba('0xad')]&&_0x31f2df[_0x1eba('0x61')]['attachments'][_0x1eba('0x51')]){for(var _0x1ac1d0=0x0;_0x1ac1d0<_0x31f2df['body'][_0x1eba('0xad')]['length'];_0x1ac1d0+=0x1){_0x31f2df[_0x1eba('0x61')][_0x1eba('0xad')][_0x1ac1d0]={'filename':_0x31f2df['body'][_0x1eba('0xad')][_0x1ac1d0]['name'],'id':_0x31f2df[_0x1eba('0x61')][_0x1eba('0xad')][_0x1ac1d0]['id'],'path':path[_0x1eba('0xae')](config[_0x1eba('0xaf')],_0x1eba('0xb0'),_0x31f2df[_0x1eba('0x61')][_0x1eba('0xad')][_0x1ac1d0]['basename'])};}}return respondWithRpcPromise(_0x1eba('0xb1'),_0x1eba('0xb1'),{'FaxAccountId':_[_0x1eba('0xb2')](_0x31f2df['params']['id'])?undefined:_0x31f2df[_0x1eba('0x66')]['id'],'path':_[_0x1eba('0xb2')](_0x31f2df['body']['attachments'][0x0][_0x1eba('0x8')])?undefined:_0x31f2df[_0x1eba('0x61')][_0x1eba('0xad')][0x0]['path'],'fax':_[_0x1eba('0xb2')](_0x31f2df[_0x1eba('0x61')]['to'][0x0])?undefined:_0x31f2df[_0x1eba('0x61')]['to'][0x0]},client9002);})[_0x1eba('0x23')](function(){if(_0x4966c7){if(_[_0x1eba('0xb2')](_0x31f2df[_0x1eba('0x61')][_0x1eba('0xb3')])){_0x31f2df[_0x1eba('0x61')][_0x1eba('0xb3')]=util[_0x1eba('0xa6')](_0x1eba('0xb4'),_0x4966c7[_0x1eba('0x40')],_0x4966c7['fax']);}if(_0x4966c7[_0x1eba('0xaa')]){if(_0x4966c7['List'][_0x1eba('0xac')]['length']){return _0x4966c7[_0x1eba('0xaa')][_0x1eba('0xac')][0x0];}else{return db[_0x1eba('0xab')]['create'](_['defaults'](_0x31f2df[_0x1eba('0x61')],{'firstName':_0x31f2df[_0x1eba('0x61')]['to'][0x0],'phone':_0x31f2df['body']['to'][0x0],'fax':_0x31f2df[_0x1eba('0x61')]['to'][0x0],'ListId':_0x4966c7[_0x1eba('0xa3')]}));}}else{throw new Error('List\x20not\x20found');}}else{throw new Error('Send\x20Fax\x20failed');}})[_0x1eba('0x23')](function(_0x245599){if(_0x245599){return db[_0x1eba('0x74')][_0x1eba('0x5f')]({'where':{'ContactId':_0x245599['id'],'closed':![],'FaxAccountId':_0x4966c7['id']}})[_0x1eba('0x23')](function(_0x2f301e){if(_0x2f301e){return[_0x2f301e,![]];}return db['FaxInteraction']['create']({'UserId':_0x31f2df[_0x1eba('0xb5')]['id'],'ContactId':_0x245599['id'],'FaxAccountId':_0x4966c7['id'],'fax':_0x31f2df[_0x1eba('0x61')]['to'][0x0],'firstMsgDirection':_0x1eba('0xb6'),'Messages':[_[_0x1eba('0x58')](_0x31f2df['body'],{'read':![],'body':_0x31f2df['body'][_0x1eba('0xad')][0x0][_0x1eba('0xb7')],'FaxAccountId':_0x4966c7['id'],'UserId':_0x31f2df[_0x1eba('0xb5')]['id'],'ContactId':_0x245599['id'],'AttachmentId':_0x31f2df[_0x1eba('0x61')]['attachments'][0x0]['id']})]},{'include':[{'model':db[_0x1eba('0xa8')],'as':_0x1eba('0xb8')}]})[_0x1eba('0x23')](function(_0x25caad){return[_0x25caad,!![]];});});}else{throw new Error(_0x1eba('0xb9'));}})[_0x1eba('0xba')](function(_0x2b3090,_0x9744d7){if(_0x9744d7){return _0x2b3090;}return db['FaxMessage'][_0x1eba('0x60')]({'direction':_0x1eba('0xb6'),'read':![],'body':_0x31f2df[_0x1eba('0x61')][_0x1eba('0xad')][0x0]['filename'],'FaxAccountId':_0x4966c7['id'],'FaxInteractionId':_0x2b3090['id'],'UserId':_0x31f2df['user']['id'],'ContactId':_0x2b3090[_0x1eba('0xbb')],'AttachmentId':_0x31f2df[_0x1eba('0x61')][_0x1eba('0xad')][0x0]['id']})[_0x1eba('0x23')](function(_0xa9e3b6){_0x2b3090[_0x1eba('0xbc')][_0x1eba('0xb8')]=[];_0x2b3090[_0x1eba('0xbc')]['Messages'][_0x1eba('0x91')](_0xa9e3b6['dataValues']);return _0x2b3090;});})['then'](function(_0x151808){respondWithRpcPromise('SendFax','SendFax',{'FaxAccountId':_[_0x1eba('0xb2')](_0x31f2df[_0x1eba('0x66')]['id'])?undefined:_0x31f2df[_0x1eba('0x66')]['id'],'path':_['isNil'](_0x31f2df['body']['attachments'][0x0][_0x1eba('0x8')])?undefined:_0x31f2df['body']['attachments'][0x0][_0x1eba('0x8')],'fax':_['isNil'](_0x31f2df[_0x1eba('0x61')]['to'][0x0])?undefined:_0x31f2df[_0x1eba('0x61')]['to'][0x0],'AttachmentId':_0x31f2df[_0x1eba('0x61')][_0x1eba('0xad')][0x0]['id']},client9002)['then'](function(_0x3a952c){logger['info'](_0x1eba('0xbd'),_0x3a952c);})[_0x1eba('0x2e')](function(_0x28b9ac){logger[_0x1eba('0x24')]('SendFaxRpc,\x20%s',_0x28b9ac);});return _0x151808;})[_0x1eba('0x23')](respondWithResult(_0x77485e,null))['catch'](handleError(_0x77485e,null));};exports['addAgents']=function(_0x4ae6a8,_0x501942,_0x190270){return db[_0x1eba('0x46')][_0x1eba('0x5f')]({'where':{'id':_0x4ae6a8[_0x1eba('0x66')]['id']}})[_0x1eba('0x23')](handleEntityNotFound(_0x501942,null))['then'](function(_0xf9fa47){if(_0xf9fa47){return _0xf9fa47[_0x1eba('0xbe')](_0x4ae6a8[_0x1eba('0x61')][_0x1eba('0x6e')],_['omit'](_0x4ae6a8[_0x1eba('0x61')],[_0x1eba('0x6e'),'id'])||{})[_0x1eba('0xba')](function(_0x27ca16){for(var _0x16dfbf=0x0;_0x16dfbf<_0x4ae6a8[_0x1eba('0x61')][_0x1eba('0x6e')][_0x1eba('0x51')];_0x16dfbf+=0x1){socket[_0x1eba('0xbf')](_0x1eba('0xc0'),{'UserId':Number(_0x4ae6a8['body']['ids'][_0x16dfbf]),'FaxAccountId':Number(_0x4ae6a8[_0x1eba('0x66')]['id'])});}return _0x27ca16;});}})['then'](respondWithResult(_0x501942,null))['catch'](handleError(_0x501942,null));};exports[_0x1eba('0xc1')]=function(_0x454f32,_0x448325,_0x3dfef6){return db[_0x1eba('0x46')][_0x1eba('0x5f')]({'where':{'id':_0x454f32['params']['id']}})[_0x1eba('0x23')](handleEntityNotFound(_0x448325,null))['then'](function(_0x4d8cb7){if(_0x4d8cb7){return _0x4d8cb7[_0x1eba('0xc1')](_0x454f32[_0x1eba('0x4c')]['ids'])['then'](function(){if(_[_0x1eba('0xc2')](_0x454f32[_0x1eba('0x4c')][_0x1eba('0x6e')])){for(var _0x15e8d3=0x0;_0x15e8d3<_0x454f32[_0x1eba('0x4c')][_0x1eba('0x6e')][_0x1eba('0x51')];_0x15e8d3+=0x1){socket[_0x1eba('0xbf')](_0x1eba('0xc3'),{'UserId':Number(_0x454f32[_0x1eba('0x4c')][_0x1eba('0x6e')][_0x15e8d3]),'FaxAccountId':Number(_0x454f32[_0x1eba('0x66')]['id'])});}}else{socket[_0x1eba('0xbf')](_0x1eba('0xc3'),{'UserId':Number(_0x454f32[_0x1eba('0x4c')][_0x1eba('0x6e')]),'FaxAccountId':Number(_0x454f32['params']['id'])});}});}})[_0x1eba('0x23')](respondWithStatusCode(_0x448325,null))['catch'](handleError(_0x448325,null));};exports[_0x1eba('0xc4')]=function(_0x46fdb8,_0x33056c,_0x73e625){var _0x14ac9c={};var _0x300a84={};var _0x45ebb5;var _0x52ebe2;return db[_0x1eba('0x46')][_0x1eba('0x6c')]({'where':{'id':_0x46fdb8[_0x1eba('0x66')]['id']}})['then'](handleEntityNotFound(_0x33056c,null))[_0x1eba('0x23')](function(_0x23aedf){if(_0x23aedf){_0x45ebb5=_0x23aedf;_0x300a84[_0x1eba('0x4b')]=_[_0x1eba('0x5e')](db[_0x1eba('0x78')]['rawAttributes']);_0x300a84[_0x1eba('0x4c')]=_['keys'](_0x46fdb8['query']);_0x300a84[_0x1eba('0x4d')]=_[_0x1eba('0x4e')](_0x300a84[_0x1eba('0x4b')],_0x300a84[_0x1eba('0x4c')]);_0x14ac9c['attributes']=_[_0x1eba('0x4e')](_0x300a84[_0x1eba('0x4b')],qs[_0x1eba('0x50')](_0x46fdb8[_0x1eba('0x4c')][_0x1eba('0x50')]));_0x14ac9c[_0x1eba('0x4f')]=_0x14ac9c[_0x1eba('0x4f')][_0x1eba('0x51')]?_0x14ac9c[_0x1eba('0x4f')]:_0x300a84[_0x1eba('0x4b')];_0x14ac9c[_0x1eba('0x53')]=qs[_0x1eba('0x54')](_0x46fdb8[_0x1eba('0x4c')][_0x1eba('0x54')]);_0x14ac9c[_0x1eba('0x55')]=qs['filters'](_['pick'](_0x46fdb8[_0x1eba('0x4c')],_0x300a84['filters']));if(_0x46fdb8[_0x1eba('0x4c')][_0x1eba('0x57')]){_0x14ac9c[_0x1eba('0x55')]=_[_0x1eba('0x58')](_0x14ac9c['where'],{'$or':_[_0x1eba('0x45')](_0x14ac9c['attributes'],function(_0x1f1230){var _0x32b918={};_0x32b918[_0x1f1230]={'$like':'%'+_0x46fdb8[_0x1eba('0x4c')][_0x1eba('0x57')]+'%'};return _0x32b918;})});}_0x14ac9c=_[_0x1eba('0x58')]({},_0x14ac9c,_0x46fdb8[_0x1eba('0x59')]);return _0x45ebb5[_0x1eba('0xc4')](_0x14ac9c);}})['then'](function(_0x547b32){if(_0x547b32){_0x52ebe2=_0x547b32['length'];if(!_0x46fdb8[_0x1eba('0x4c')][_0x1eba('0x77')](_0x1eba('0x52'))){_0x14ac9c[_0x1eba('0x34')]=qs[_0x1eba('0x34')](_0x46fdb8[_0x1eba('0x4c')]['limit']);_0x14ac9c[_0x1eba('0x32')]=qs[_0x1eba('0x32')](_0x46fdb8[_0x1eba('0x4c')][_0x1eba('0x32')]);}return _0x45ebb5[_0x1eba('0xc4')](_0x14ac9c);}})[_0x1eba('0x23')](function(_0x42481a){if(_0x42481a){return _0x42481a?{'count':_0x52ebe2,'rows':_0x42481a}:null;}})['then'](respondWithResult(_0x33056c,null))[_0x1eba('0x2e')](handleError(_0x33056c,null));};