Built motion from commit 753c950e.|2.5.42
[motion2.git] / server / api / faxInteraction / faxInteraction.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 _0x4fd1=['forEach','CONCAT(\x27,\x27,\x20`TagIds`,\x20\x27,\x27)\x20LIKE\x20?','union','User','CONCAT_WS(\x27\x20\x27,\x20o.name,\x20o.fullname)\x20LIKE\x20?','body','buildExpression','keys','compact','isEmpty','i.FaxAccountId\x20IN\x20?','concat','createdAt','parse','$gte','$lte','i.createdAt\x20BETWEEN\x20?\x20AND\x20?','null','where','\x20IS\x20NULL','\x20=\x20?','read','`unreadMessages`\x20=\x200','`unreadMessages`\x20>\x200','isArray','tag','filter','i.id\x20LIKE\x20?','CONCAT(c.firstName,\x20\x27\x20\x27,\x20c.lastName)\x20LIKE\x20?','i.id','Sequelize','QueryTypes','clone','SUM(me.read\x20=\x200\x20AND\x20me.direction\x20=\x20\x27in\x27)','unreadMessages','contactName','DESC','t.id\x20IN\x20?','resolve','FaxAccountId','i.FaxAccountId\x20IS\x20NOT\x20NULL','user','role','agent','getFaxAccounts','i.FaxAccountId\x20IS\x20NULL','toString','count','sequelize','keyBy','merge','fields','a.key','Account.key','a.mandatoryDisposition','Account.mandatoryDisposition','CASE\x20WHEN\x20(c.firstName\x20IS\x20NOT\x20NULL\x20AND\x20c.firstName\x20<>\x20\x27\x27)\x20OR\x20(c.lastName\x20IS\x20NOT\x20NULL\x20AND\x20c.lastName\x20<>\x20\x27\x27)\x20THEN\x20CONCAT(IFNULL(c.firstName,\x20\x27\x27),\x20\x27\x20\x27,\x20IFNULL(c.lastName,\x20\x27\x27))\x20ELSE\x20\x27Unknown\x27\x20END','i.*','c.firstName','Contact.firstName','c.lastName','Contact.lastName','c.email','Contact.email','c.phone','c.mobile','Contact.mobile','c.fax','Contact.fax','o.fullname','Owner.fullname','o.internal','Owner.internal','GROUP_CONCAT(DISTINCT\x20t.id)','FaxInteractionId','rows','params','includeAll','include','options','create','update','describe','addMessage','FaxMessage','ids','omit','getMessages','findOne','pick','format','YYYY-MM-DD\x20HH:mm:ss','findAll','spread','faxInteractionTags:save','download','unix','join','root','server','tmp','files','attachments','transcript-%d-%s.zip','Attachment','Messages','get','mkdirSync','basename','createReadStream','createWriteStream','err','unlinkSync','eml-format','rimraf','request-promise','moment','bluebird','mustache','util','path','ejs','lodash','jsforce','to-csv','querystring','papaparse','../../components/auth/service','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','../../config/utils','../../config/license/util','../../mysqldb','redis','defaults','localhost','socket.io-emitter','./faxInteraction.socket','register','sendStatus','status','offset','undefined','limit','set','Content-Range','json','apply','reject','destroy','then','end','error','name','send','map','fullname','TagIds','Tags','push','catch','waiting','talking','answered','unmanaged','UserId','closed','total','index','FaxInteraction','rawAttributes','fieldName','type','key','query','filters','model','attributes','intersection','length','hasOwnProperty','nolimit','order','sort','field','color','u.id','u.fullname','ui.FaxInteractionId','from','left_join','users','select','fax_interactions','cm_contacts','c.id\x20=\x20i.ContactId\x20AND\x20c.deletedAt\x20IS\x20NULL','o.id\x20=\x20i.UserId','a.id\x20=\x20i.FaxAccountId','fax_messages','me.FaxInteractionId\x20=\x20i.id','fax_interaction_has_tags','expr','parseSearch','search','conditions','find','having','`\x20=\x200','operator','$substring','value','split','MATCH\x20(c.firstName,\x20c.lastName,\x20c.phone,\x20c.mobile,\x20c.fax,\x20c.email)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)','getFullTextValue','text','start','Tag'];(function(_0x59ee6f,_0x450239){var _0x4c0979=function(_0x565e92){while(--_0x565e92){_0x59ee6f['push'](_0x59ee6f['shift']());}};_0x4c0979(++_0x450239);}(_0x4fd1,0x14b));var _0x14fd=function(_0x51e5a4,_0x43bff8){_0x51e5a4=_0x51e5a4-0x0;var _0x534a35=_0x4fd1[_0x51e5a4];return _0x534a35;};'use strict';var emlformat=require(_0x14fd('0x0'));var rimraf=require(_0x14fd('0x1'));var zipdir=require('zip-dir');var jsonpatch=require('fast-json-patch');var rp=require(_0x14fd('0x2'));var moment=require(_0x14fd('0x3'));var BPromise=require(_0x14fd('0x4'));var Mustache=require(_0x14fd('0x5'));var util=require(_0x14fd('0x6'));var path=require(_0x14fd('0x7'));var sox=require('sox');var csv=require('to-csv');var ejs=require(_0x14fd('0x8'));var fs=require('fs');var fs_extra=require('fs-extra');var _=require(_0x14fd('0x9'));var squel=require('squel');var crypto=require('crypto');var jsforce=require(_0x14fd('0xa'));var deskjs=require('desk.js');var toCsv=require(_0x14fd('0xb'));var querystring=require(_0x14fd('0xc'));var Papa=require(_0x14fd('0xd'));var Redis=require('ioredis');var authService=require(_0x14fd('0xe'));var qs=require('../../components/parsers/qs');var as=require(_0x14fd('0xf'));var hardwareService=require(_0x14fd('0x10'));var logger=require(_0x14fd('0x11'))('api');var utils=require(_0x14fd('0x12'));var config=require('../../config/environment');var licenseUtil=require(_0x14fd('0x13'));var db=require(_0x14fd('0x14'))['db'];config[_0x14fd('0x15')]=_[_0x14fd('0x16')](config['redis'],{'host':_0x14fd('0x17'),'port':0x18eb});var socket=require(_0x14fd('0x18'))(new Redis(config[_0x14fd('0x15')]));require(_0x14fd('0x19'))[_0x14fd('0x1a')](socket);function respondWithStatusCode(_0x426fba,_0x5bbab1){_0x5bbab1=_0x5bbab1||0xcc;return function(_0x4b348a){if(_0x4b348a){return _0x426fba[_0x14fd('0x1b')](_0x5bbab1);}return _0x426fba[_0x14fd('0x1c')](_0x5bbab1)['end']();};}function respondWithResult(_0x56be26,_0x3fe5e0){_0x3fe5e0=_0x3fe5e0||0xc8;return function(_0x4e02da){if(_0x4e02da){return _0x56be26[_0x14fd('0x1c')](_0x3fe5e0)['json'](_0x4e02da);}};}function respondWithFilteredResult(_0x18dc80,_0xb2ae25){return function(_0x14a11e){if(_0x14a11e){var _0x43f39a=typeof _0xb2ae25[_0x14fd('0x1d')]===_0x14fd('0x1e')&&typeof _0xb2ae25['limit']==='undefined';var _0x2d7047=_0x14a11e['count'];var _0x5f25b3=_0x43f39a?0x0:_0xb2ae25[_0x14fd('0x1d')];var _0x33fa0d=_0x43f39a?_0x14a11e['count']:_0xb2ae25[_0x14fd('0x1d')]+_0xb2ae25[_0x14fd('0x1f')];var _0x44ee16;if(_0x33fa0d>=_0x2d7047){_0x33fa0d=_0x2d7047;_0x44ee16=0xc8;}else{_0x44ee16=0xce;}_0x18dc80['status'](_0x44ee16);return _0x18dc80[_0x14fd('0x20')](_0x14fd('0x21'),_0x5f25b3+'-'+_0x33fa0d+'/'+_0x2d7047)[_0x14fd('0x22')](_0x14a11e);}return null;};}function patchUpdates(_0x38e4c7){return function(_0x5e5091){try{jsonpatch[_0x14fd('0x23')](_0x5e5091,_0x38e4c7,!![]);}catch(_0x426b7b){return BPromise[_0x14fd('0x24')](_0x426b7b);}return _0x5e5091['save']();};}function saveUpdates(_0x207875,_0x78e9e2){return function(_0x526ac6){if(_0x526ac6){return _0x526ac6['update'](_0x207875)['then'](function(_0x381fb7){return _0x381fb7;});}return null;};}function removeEntity(_0x55d025,_0x207ab3){return function(_0xae64ac){if(_0xae64ac){return _0xae64ac[_0x14fd('0x25')]()[_0x14fd('0x26')](function(){_0x55d025['status'](0xcc)[_0x14fd('0x27')]();});}};}function handleEntityNotFound(_0x5e908d,_0x5f1002){return function(_0x3a090b){if(!_0x3a090b){_0x5e908d[_0x14fd('0x1b')](0x194);}return _0x3a090b;};}function handleError(_0x2400e8,_0x348a3f){_0x348a3f=_0x348a3f||0x1f4;return function(_0x5d445e){logger[_0x14fd('0x28')](_0x5d445e['stack']);if(_0x5d445e[_0x14fd('0x29')]){delete _0x5d445e[_0x14fd('0x29')];}_0x2400e8['status'](_0x348a3f)[_0x14fd('0x2a')](_0x5d445e);};}function getInteractionUsers(_0x296395,_0x7e9079){return new BPromise(function(_0x1289d8,_0x4735ca){try{if(_0x7e9079[_0x296395['id']]){_0x296395['Users']=_[_0x14fd('0x2b')](_0x7e9079[_0x296395['id']],function(_0x24aef0){return{'id':_0x24aef0['id'],'fullname':_0x24aef0[_0x14fd('0x2c')]};});}}catch(_0x1aca8d){_0x4735ca(_0x1aca8d);}_0x1289d8(_0x296395);});}function getInteractionTags(_0x5472dd,_0x1e792c){return new BPromise(function(_0x346467,_0x1a6042){try{if(_0x5472dd[_0x14fd('0x2d')]){_0x5472dd['Tags']=[];_0x5472dd[_0x14fd('0x2d')]['split'](',')['forEach'](function(_0x2ab366){_0x5472dd[_0x14fd('0x2e')][_0x14fd('0x2f')](_0x1e792c[_0x2ab366]);});}delete _0x5472dd['TagIds'];}catch(_0x5d48cc){_0x1a6042(_0x5d48cc);}_0x346467(_0x5472dd);});}function updateFaxInteraction(_0xaacc11,_0x4f3ecc,_0x1d7b82){return new BPromise(function(_0x5442e1,_0x45712){return getInteractionUsers(_0xaacc11,_0x1d7b82)[_0x14fd('0x26')](function(_0x48f244){return getInteractionTags(_0x48f244,_0x4f3ecc);})['then'](function(_0x2a65bc){return getStateInteraction(_0x2a65bc);})[_0x14fd('0x26')](function(_0x1d415c){_0x5442e1(_0x1d415c);})[_0x14fd('0x30')](function(_0x1459a7){_0x45712(_0x1459a7);});});}function getStateInteraction(_0x5b55b9){return new BPromise(function(_0x4a6f36){_0x5b55b9[_0x14fd('0x31')]=0x0;_0x5b55b9[_0x14fd('0x32')]=0x0;_0x5b55b9[_0x14fd('0x33')]=0x0;_0x5b55b9[_0x14fd('0x34')]=0x0;_0x5b55b9['total']=0x0;if(!_0x5b55b9['closed']&&!_0x5b55b9[_0x14fd('0x35')]){_0x5b55b9['waiting']+=0x1;}if(!_0x5b55b9[_0x14fd('0x36')]&&_0x5b55b9[_0x14fd('0x35')]){_0x5b55b9[_0x14fd('0x32')]+=0x1;if(_0x5b55b9[_0x14fd('0x31')]){_0x5b55b9[_0x14fd('0x31')]-=0x1;}}if(_0x5b55b9['closed']&&_0x5b55b9[_0x14fd('0x35')]){_0x5b55b9[_0x14fd('0x33')]+=0x1;if(_0x5b55b9[_0x14fd('0x32')]){_0x5b55b9[_0x14fd('0x32')]-=0x1;}}if(_0x5b55b9['closed']&&!_0x5b55b9[_0x14fd('0x35')]){_0x5b55b9['unmanaged']+=0x1;if(_0x5b55b9['waiting']){_0x5b55b9[_0x14fd('0x31')]-=0x1;}}_0x5b55b9[_0x14fd('0x37')]+=0x1;_0x4a6f36(_0x5b55b9);});}exports[_0x14fd('0x38')]=function(_0x585177,_0x42f1d1){var _0x18ba03={},_0x7e008b={},_0x263006={'count':0x0,'rows':[]};var _0x10847e=_[_0x14fd('0x2b')](db[_0x14fd('0x39')][_0x14fd('0x3a')],function(_0x21c8d0){return{'name':_0x21c8d0[_0x14fd('0x3b')],'type':_0x21c8d0[_0x14fd('0x3c')][_0x14fd('0x3d')]};});_0x7e008b['model']=_['map'](_0x10847e,_0x14fd('0x29'));_0x7e008b['query']=_['keys'](_0x585177[_0x14fd('0x3e')]);_0x7e008b[_0x14fd('0x3f')]=_['intersection'](_0x7e008b[_0x14fd('0x40')],_0x7e008b[_0x14fd('0x3e')]);_0x18ba03[_0x14fd('0x41')]=_[_0x14fd('0x42')](_0x7e008b[_0x14fd('0x40')],qs['fields'](_0x585177[_0x14fd('0x3e')]['fields']));_0x18ba03[_0x14fd('0x41')]=_0x18ba03[_0x14fd('0x41')][_0x14fd('0x43')]?_0x18ba03[_0x14fd('0x41')]:_0x7e008b['model'];if(!_0x585177['query'][_0x14fd('0x44')](_0x14fd('0x45'))){_0x18ba03[_0x14fd('0x1f')]=qs['limit'](_0x585177[_0x14fd('0x3e')]['limit']);_0x18ba03[_0x14fd('0x1d')]=qs['offset'](_0x585177[_0x14fd('0x3e')][_0x14fd('0x1d')]);}_0x18ba03[_0x14fd('0x46')]=qs[_0x14fd('0x47')](_0x585177[_0x14fd('0x3e')][_0x14fd('0x47')]);_0x18ba03['where']=qs[_0x14fd('0x3f')](_['pick'](_0x585177[_0x14fd('0x3e')],_0x7e008b[_0x14fd('0x3f')]),_0x10847e);var _0x811c8f=[];var _0x11e265=squel['select']()[_0x14fd('0x48')]('id')[_0x14fd('0x48')](_0x14fd('0x29'))[_0x14fd('0x48')](_0x14fd('0x49'))['from']('tools_tags');var _0x5c1db3=squel['select']()[_0x14fd('0x48')](_0x14fd('0x4a'))[_0x14fd('0x48')](_0x14fd('0x4b'))[_0x14fd('0x48')](_0x14fd('0x4c'))[_0x14fd('0x4d')]('user_has_fax_interactions','ui')[_0x14fd('0x4e')](_0x14fd('0x4f'),'u','u.id\x20=\x20ui.UserId');var _0x149e2c=squel[_0x14fd('0x50')]()['from'](_0x14fd('0x51'),'i')[_0x14fd('0x4e')](_0x14fd('0x52'),'c',_0x14fd('0x53'))[_0x14fd('0x4e')](_0x14fd('0x4f'),'o',_0x14fd('0x54'))['left_join']('fax_accounts','a',_0x14fd('0x55'))[_0x14fd('0x4e')](_0x14fd('0x56'),'me',_0x14fd('0x57'))[_0x14fd('0x4e')](_0x14fd('0x58'),'it','it.FaxInteractionId\x20=\x20i.id')[_0x14fd('0x4e')]('tools_tags','t','t.id\x20=\x20it.TagId');var _0x48769a=squel[_0x14fd('0x59')]();var _0x30486c=[];var _0x3ff0d=squel['expr']();var _0x2f5b75;if(_0x585177[_0x14fd('0x3e')]['search']){_0x2f5b75=as[_0x14fd('0x5a')](_0x585177[_0x14fd('0x3e')][_0x14fd('0x5b')]);var _0x397242=_0x2f5b75['sqlOperator'];for(var _0x20aa3c=0x0;_0x20aa3c<_0x2f5b75[_0x14fd('0x5c')][_0x14fd('0x43')];_0x20aa3c++){var _0x52ba76=_0x2f5b75[_0x14fd('0x5c')][_0x20aa3c];var _0x141ec9='i';var _0x1e09e6=_[_0x14fd('0x5d')](_0x10847e,[_0x14fd('0x29'),_0x52ba76[_0x14fd('0x48')]]);if(!_0x1e09e6){switch(_0x52ba76[_0x14fd('0x48')]){case'unreadMessages':if(_0x52ba76['value']==0x1){_0x149e2c[_0x14fd('0x5e')]('`'+_0x52ba76['field']+_0x14fd('0x5f'));}else{_0x149e2c['having']('`'+_0x52ba76[_0x14fd('0x48')]+'`\x20>\x200');}break;case'Contact':if(_0x52ba76[_0x14fd('0x60')]===_0x14fd('0x61')){if(_0x52ba76[_0x14fd('0x62')][_0x14fd('0x63')]('\x20')['length']>0x1){_0x48769a[_0x397242](_0x14fd('0x64'),qs[_0x14fd('0x65')](_0x52ba76[_0x14fd('0x62')]),null);}else{var _0x2f21f0='%'+_0x52ba76['value']+'%';_0x48769a[_0x397242]('c.firstName\x20LIKE\x20?\x20OR\x20c.lastName\x20LIKE\x20?\x20OR\x20c.email\x20LIKE\x20?',_0x2f21f0,_0x2f21f0,_0x2f21f0);}}else{_0x1e09e6=_['find'](_0x10847e,[_0x14fd('0x29'),'ContactId']);_0x52ba76[_0x14fd('0x48')]='ContactId';_0x501495=as['buildExpression'](_0x141ec9,_0x1e09e6[_0x14fd('0x3c')],_0x52ba76);_0x48769a[_0x397242](_0x501495[_0x14fd('0x66')],_0x501495[_0x14fd('0x62')][_0x14fd('0x67')],_0x501495[_0x14fd('0x62')][_0x14fd('0x27')]);}break;case _0x14fd('0x68'):var _0x3aa223=_0x52ba76[_0x14fd('0x62')][_0x14fd('0x63')](',')[_0x14fd('0x2b')](function(_0x50e4ba){return Number(_0x50e4ba);});_0x3aa223[_0x14fd('0x69')](function(_0x54a728){_0x3ff0d['or'](_0x14fd('0x6a'),'%,'+_0x54a728+',%');});_0x30486c=_[_0x14fd('0x6b')](_0x30486c,_0x3aa223);break;case _0x14fd('0x6c'):if(_0x52ba76['operator']===_0x14fd('0x61')){_0x48769a[_0x397242](_0x14fd('0x6d'),'%'+_0x52ba76[_0x14fd('0x62')]+'%',null);}else{_0x1e09e6=_[_0x14fd('0x5d')](_0x10847e,['name',_0x14fd('0x35')]);_0x52ba76[_0x14fd('0x48')]=_0x14fd('0x35');_0x501495=as['buildExpression'](_0x141ec9,_0x1e09e6['type'],_0x52ba76);_0x48769a[_0x397242](_0x501495[_0x14fd('0x66')],_0x501495[_0x14fd('0x62')]['start'],_0x501495[_0x14fd('0x62')][_0x14fd('0x27')]);}break;case _0x14fd('0x6e'):_0x501495=as['buildExpression']('me',null,_0x52ba76);_0x48769a[_0x397242](_0x501495[_0x14fd('0x66')],_0x501495[_0x14fd('0x62')][_0x14fd('0x67')],_0x501495[_0x14fd('0x62')][_0x14fd('0x27')]);break;}}else{var _0x501495=as[_0x14fd('0x6f')](_0x141ec9,_0x1e09e6['type'],_0x52ba76);_0x48769a[_0x397242](_0x501495[_0x14fd('0x66')],_0x501495['value'][_0x14fd('0x67')],_0x501495[_0x14fd('0x62')]['end']);}}}else{var _0x26239a=_(_0x585177[_0x14fd('0x3e')])[_0x14fd('0x70')]()[_0x14fd('0x2b')](function(_0x17ca0f){return _['some'](_0x10847e,[_0x14fd('0x29'),_0x17ca0f])?_0x17ca0f:undefined;})[_0x14fd('0x71')]()['value']();if(!_[_0x14fd('0x72')](_0x26239a)){_0x26239a['forEach'](function(_0x4a0211){if(_0x4a0211==='FaxAccountId'){_0x149e2c['where'](_0x14fd('0x73'),[][_0x14fd('0x74')](_0x585177[_0x14fd('0x3e')][_0x4a0211]));}else if(_0x4a0211===_0x14fd('0x75')){var _0x39f821=JSON[_0x14fd('0x76')](_0x585177[_0x14fd('0x3e')][_0x4a0211])[_0x14fd('0x77')];var _0xceafa6=JSON[_0x14fd('0x76')](_0x585177['query'][_0x4a0211])[_0x14fd('0x78')];_0x149e2c['where'](_0x14fd('0x79'),_0x39f821,_0xceafa6);}else{if(_0x585177[_0x14fd('0x3e')][_0x4a0211]===_0x14fd('0x7a')){_0x149e2c[_0x14fd('0x7b')]('i.'+_0x4a0211+_0x14fd('0x7c'));}else{_0x149e2c['where']('i.'+_0x4a0211+_0x14fd('0x7d'),_0x585177[_0x14fd('0x3e')][_0x4a0211]);}}});}if(_0x585177[_0x14fd('0x3e')][_0x14fd('0x7e')]){if(_0x585177[_0x14fd('0x3e')][_0x14fd('0x7e')]==0x1){_0x149e2c[_0x14fd('0x5e')](_0x14fd('0x7f'));}else{_0x149e2c[_0x14fd('0x5e')](_0x14fd('0x80'));}}if(_0x585177['query']['tag']){_0x30486c=_[_0x14fd('0x81')](_0x585177[_0x14fd('0x3e')][_0x14fd('0x82')])?_0x585177[_0x14fd('0x3e')][_0x14fd('0x82')]:new Array(_0x585177[_0x14fd('0x3e')][_0x14fd('0x82')]);_0x30486c[_0x14fd('0x69')](function(_0x5ca309){_0x3ff0d['or'](_0x14fd('0x6a'),'%,'+_0x5ca309+',%');});}if(_0x585177[_0x14fd('0x3e')][_0x14fd('0x83')]){var _0x22cf68=_0x585177[_0x14fd('0x3e')][_0x14fd('0x83')]['replace']('\x5c','\x5c\x5c')['replace'](/'/g,'\x27\x27');if(qs['isNumeric'](_0x22cf68)){_0x48769a['or'](_0x14fd('0x84'),_0x22cf68+'%')['or']('i.fax\x20LIKE\x20?',_0x22cf68+'%');}_0x48769a['or'](_0x14fd('0x85'),_0x22cf68+'%');}}_0x149e2c[_0x14fd('0x7b')](_0x48769a);_0x149e2c['group'](_0x14fd('0x86'));var _0x14ea05={'type':db[_0x14fd('0x87')][_0x14fd('0x88')]['SELECT'],'raw':!![]};var _0x1f27f4=_0x149e2c[_0x14fd('0x89')]();_0x1f27f4[_0x14fd('0x48')](_0x14fd('0x86'));_0x1f27f4[_0x14fd('0x48')](_0x14fd('0x8a'),_0x14fd('0x8b'));if(_0x18ba03[_0x14fd('0x46')]){_0x18ba03[_0x14fd('0x46')][_0x14fd('0x69')](function(_0x2855aa){var _0x2bc09d=_0x2855aa[0x0]===_0x14fd('0x8c')?_0x2855aa[0x0]:'i.'+_0x2855aa[0x0];_0x149e2c[_0x14fd('0x46')](_0x2bc09d,_0x2855aa[0x1]===_0x14fd('0x8d')?![]:!![]);});}if(!_['isEmpty'](_0x30486c)){_0x149e2c[_0x14fd('0x5e')](_0x3ff0d);_0x1f27f4[_0x14fd('0x7b')](_0x14fd('0x8e'),_0x30486c);}BPromise[_0x14fd('0x8f')]()[_0x14fd('0x26')](function(){if(!_0x2f5b75){if(_0x585177['query'][_0x14fd('0x90')])return;_0x1f27f4[_0x14fd('0x7b')]('i.FaxAccountId\x20IS\x20NOT\x20NULL');_0x149e2c['where'](_0x14fd('0x91'));return;}if(_0x585177[_0x14fd('0x92')][_0x14fd('0x93')]!==_0x14fd('0x94'))return;return _0x585177[_0x14fd('0x92')][_0x14fd('0x95')]({'attributes':['id'],'raw':!![]})[_0x14fd('0x26')](function(_0x5e3d8f){if(_[_0x14fd('0x72')](_0x5e3d8f)){_0x1f27f4[_0x14fd('0x7b')](_0x14fd('0x96'));_0x149e2c[_0x14fd('0x7b')](_0x14fd('0x96'));}else{_0x1f27f4['where'](_0x14fd('0x73'),_['map'](_0x5e3d8f,'id'));_0x149e2c[_0x14fd('0x7b')](_0x14fd('0x73'),_[_0x14fd('0x2b')](_0x5e3d8f,'id'));}});})['then'](function(){if(_0x585177[_0x14fd('0x92')][_0x14fd('0x93')]===_0x14fd('0x94')&&!_0x2f5b75&&!_0x585177[_0x14fd('0x3e')][_0x14fd('0x90')])return[];return db['sequelize'][_0x14fd('0x3e')](_0x1f27f4[_0x14fd('0x97')](),_0x14ea05);})[_0x14fd('0x26')](function(_0x5f443c){_0x263006['count']=_0x5f443c[_0x14fd('0x43')];if(_0x263006[_0x14fd('0x98')]===0x0)return[];return db[_0x14fd('0x99')]['query'](_0x11e265[_0x14fd('0x97')](),_0x14ea05)['then'](function(_0x4b35bb){_0x811c8f=_[_0x14fd('0x9a')](_0x4b35bb,'id');_0x14ea05=_[_0x14fd('0x9b')](_0x14ea05,{'model':db[_0x14fd('0x39')],'mapToModel':!![],'raw':!![],'nest':!![]});if(_0x585177[_0x14fd('0x3e')][_0x14fd('0x9c')]){_0x18ba03[_0x14fd('0x41')]['forEach'](function(_0x371679){_0x149e2c[_0x14fd('0x48')]('i.'+_0x371679);});}else{_0x149e2c[_0x14fd('0x48')](_0x14fd('0x8a'),_0x14fd('0x8b'));_0x149e2c[_0x14fd('0x48')](_0x14fd('0x9d'),_0x14fd('0x9e'));_0x149e2c[_0x14fd('0x48')](_0x14fd('0x9f'),_0x14fd('0xa0'));_0x149e2c[_0x14fd('0x48')](_0x14fd('0xa1'),_0x14fd('0x8c'));_0x149e2c[_0x14fd('0x48')](_0x14fd('0xa2'));_0x149e2c['field'](_0x14fd('0xa3'),_0x14fd('0xa4'));_0x149e2c['field'](_0x14fd('0xa5'),_0x14fd('0xa6'));_0x149e2c[_0x14fd('0x48')](_0x14fd('0xa7'),_0x14fd('0xa8'));_0x149e2c[_0x14fd('0x48')](_0x14fd('0xa9'),'Contact.phone');_0x149e2c[_0x14fd('0x48')](_0x14fd('0xaa'),_0x14fd('0xab'));_0x149e2c[_0x14fd('0x48')](_0x14fd('0xac'),_0x14fd('0xad'));_0x149e2c[_0x14fd('0x48')](_0x14fd('0xae'),_0x14fd('0xaf'));_0x149e2c['field'](_0x14fd('0xb0'),_0x14fd('0xb1'));_0x149e2c[_0x14fd('0x48')](_0x14fd('0xb2'),_0x14fd('0x2d'));}if(_0x18ba03['limit'])_0x149e2c[_0x14fd('0x1f')](_0x18ba03[_0x14fd('0x1f')]);if(_0x18ba03[_0x14fd('0x1d')])_0x149e2c[_0x14fd('0x1d')](_0x18ba03[_0x14fd('0x1d')]);return db[_0x14fd('0x99')][_0x14fd('0x3e')](_0x149e2c[_0x14fd('0x97')](),_0x14ea05);})[_0x14fd('0x26')](function(_0x4813d6){if(_0x4813d6[_0x14fd('0x43')]>0x0)_0x5c1db3[_0x14fd('0x7b')]('ui.FaxInteractionId\x20IN\x20?',_[_0x14fd('0x2b')](_0x4813d6,'id'));return db[_0x14fd('0x99')][_0x14fd('0x3e')](_0x5c1db3[_0x14fd('0x97')](),_0x14ea05)[_0x14fd('0x26')](function(_0xf5fd52){var _0x25c82c=_['groupBy'](_0xf5fd52,_0x14fd('0xb3'));var _0x2f01ae=[];_0x4813d6[_0x14fd('0x69')](function(_0x49789a){_0x2f01ae[_0x14fd('0x2f')](updateFaxInteraction(_0x49789a,_0x811c8f,_0x25c82c));});return BPromise['all'](_0x2f01ae);});});})[_0x14fd('0x26')](function(_0x2bc74d){_0x263006[_0x14fd('0xb4')]=_0x2bc74d;return _0x263006;})[_0x14fd('0x26')](respondWithFilteredResult(_0x42f1d1,_0x18ba03))[_0x14fd('0x30')](handleError(_0x42f1d1,null));};exports['show']=function(_0x4b7d6b,_0x2ba465){var _0x40c688={'raw':![],'where':{'id':_0x4b7d6b[_0x14fd('0xb5')]['id']}},_0x3c30a0={};_0x3c30a0[_0x14fd('0x40')]=_[_0x14fd('0x70')](db[_0x14fd('0x39')][_0x14fd('0x3a')]);_0x3c30a0[_0x14fd('0x3e')]=_[_0x14fd('0x70')](_0x4b7d6b[_0x14fd('0x3e')]);_0x3c30a0[_0x14fd('0x3f')]=_[_0x14fd('0x42')](_0x3c30a0['model'],_0x3c30a0[_0x14fd('0x3e')]);_0x40c688[_0x14fd('0x41')]=_['intersection'](_0x3c30a0[_0x14fd('0x40')],qs[_0x14fd('0x9c')](_0x4b7d6b[_0x14fd('0x3e')][_0x14fd('0x9c')]));_0x40c688[_0x14fd('0x41')]=_0x40c688[_0x14fd('0x41')][_0x14fd('0x43')]?_0x40c688[_0x14fd('0x41')]:_0x3c30a0['model'];if(_0x4b7d6b[_0x14fd('0x3e')][_0x14fd('0xb6')]){_0x40c688[_0x14fd('0xb7')]=[{'all':!![]}];}_0x40c688=_[_0x14fd('0x9b')]({},_0x40c688,_0x4b7d6b[_0x14fd('0xb8')]);return db['FaxInteraction']['find'](_0x40c688)[_0x14fd('0x26')](handleEntityNotFound(_0x2ba465,null))[_0x14fd('0x26')](respondWithResult(_0x2ba465,null))[_0x14fd('0x30')](handleError(_0x2ba465,null));};exports[_0x14fd('0xb9')]=function(_0x3784d3,_0x5c82f8){return db[_0x14fd('0x39')][_0x14fd('0xb9')](_0x3784d3[_0x14fd('0x6e')],{})['then'](respondWithResult(_0x5c82f8,0xc9))[_0x14fd('0x30')](handleError(_0x5c82f8,null));};exports[_0x14fd('0xba')]=function(_0x267ce6,_0x193ed2){if(_0x267ce6[_0x14fd('0x6e')]['id']){delete _0x267ce6[_0x14fd('0x6e')]['id'];}return db[_0x14fd('0x39')]['find']({'where':{'id':_0x267ce6[_0x14fd('0xb5')]['id']}})[_0x14fd('0x26')](handleEntityNotFound(_0x193ed2,null))[_0x14fd('0x26')](saveUpdates(_0x267ce6[_0x14fd('0x6e')],null))[_0x14fd('0x26')](respondWithResult(_0x193ed2,null))[_0x14fd('0x30')](handleError(_0x193ed2,null));};exports['destroy']=function(_0x3ba7e0,_0x3a95f9){return db[_0x14fd('0x39')][_0x14fd('0x5d')]({'where':{'id':_0x3ba7e0[_0x14fd('0xb5')]['id']}})[_0x14fd('0x26')](handleEntityNotFound(_0x3a95f9,null))[_0x14fd('0x26')](removeEntity(_0x3a95f9,null))['catch'](handleError(_0x3a95f9,null));};exports['describe']=function(_0xf22023,_0x1834da){return db[_0x14fd('0x39')][_0x14fd('0xbb')]()[_0x14fd('0x26')](respondWithResult(_0x1834da,null))[_0x14fd('0x30')](handleError(_0x1834da,null));};exports[_0x14fd('0xbc')]=function(_0x5755f8,_0x5c5a9a,_0x8f93ba){return db[_0x14fd('0xbd')]['find']({'where':{'id':_0x5755f8[_0x14fd('0xb5')]['id']}})[_0x14fd('0x26')](handleEntityNotFound(_0x5c5a9a,null))[_0x14fd('0x26')](function(_0x3df01f){if(_0x3df01f){return _0x3df01f[_0x14fd('0xbc')](_0x5755f8[_0x14fd('0x6e')][_0x14fd('0xbe')],_[_0x14fd('0xbf')](_0x5755f8[_0x14fd('0x6e')],[_0x14fd('0xbe'),'id'])||{});}})[_0x14fd('0x26')](respondWithResult(_0x5c5a9a,null))[_0x14fd('0x30')](handleError(_0x5c5a9a,null));};exports[_0x14fd('0xc0')]=function(_0x7da02e,_0x2fbac8,_0x724ccb){var _0x16bb91={'raw':![],'where':{}};var _0x327835={};var _0x207246={'count':0x0,'rows':[]};return db['FaxInteraction'][_0x14fd('0xc1')]({'where':{'id':_0x7da02e[_0x14fd('0xb5')]['id']}})['then'](handleEntityNotFound(_0x2fbac8,null))[_0x14fd('0x26')](function(_0x2a9144){if(_0x2a9144){_0x327835['model']=_[_0x14fd('0x70')](db[_0x14fd('0xbd')][_0x14fd('0x3a')]);_0x327835[_0x14fd('0x3e')]=_[_0x14fd('0x70')](_0x7da02e[_0x14fd('0x3e')]);_0x327835[_0x14fd('0x3f')]=_[_0x14fd('0x42')](_0x327835[_0x14fd('0x40')],_0x327835[_0x14fd('0x3e')]);_0x16bb91['attributes']=_[_0x14fd('0x42')](_0x327835['model'],qs[_0x14fd('0x9c')](_0x7da02e['query'][_0x14fd('0x9c')]));_0x16bb91[_0x14fd('0x41')]=_0x16bb91[_0x14fd('0x41')][_0x14fd('0x43')]?_0x16bb91[_0x14fd('0x41')]:_0x327835[_0x14fd('0x40')];if(!_0x7da02e[_0x14fd('0x3e')][_0x14fd('0x44')](_0x14fd('0x45'))){_0x16bb91['limit']=qs[_0x14fd('0x1f')](_0x7da02e[_0x14fd('0x3e')][_0x14fd('0x1f')]);_0x16bb91[_0x14fd('0x1d')]=qs[_0x14fd('0x1d')](_0x7da02e['query'][_0x14fd('0x1d')]);}_0x16bb91[_0x14fd('0x46')]=qs[_0x14fd('0x47')](_0x7da02e[_0x14fd('0x3e')][_0x14fd('0x47')]);_0x16bb91['where']=qs['filters'](_[_0x14fd('0xc2')](_0x7da02e[_0x14fd('0x3e')],_0x327835[_0x14fd('0x3f')]));_0x16bb91[_0x14fd('0x7b')]['FaxInteractionId']=_0x2a9144['id'];if(_0x7da02e[_0x14fd('0x3e')][_0x14fd('0x83')]){_0x16bb91[_0x14fd('0x7b')]=_[_0x14fd('0x9b')](_0x16bb91[_0x14fd('0x7b')],{'$or':_[_0x14fd('0x2b')](_0x16bb91[_0x14fd('0x41')],function(_0x578171){var _0x10bfe3={};_0x10bfe3[_0x578171]={'$like':'%'+_0x7da02e[_0x14fd('0x3e')][_0x14fd('0x83')]+'%'};return _0x10bfe3;})});}if(_0x7da02e['query'][_0x14fd('0x77')]){var _0x14c70a=_0x7da02e[_0x14fd('0x3e')][_0x14fd('0x77')]['split'](',');var _0x4f5e32={};_0x4f5e32[_0x14c70a[0x0]]={'$gte':moment(_0x14c70a[0x1])[_0x14fd('0xc3')](_0x14fd('0xc4'))};_0x16bb91[_0x14fd('0x7b')]=_[_0x14fd('0x9b')](_0x16bb91[_0x14fd('0x7b')],_0x4f5e32);}_0x16bb91=_[_0x14fd('0x9b')]({},_0x16bb91,_0x7da02e['options']);return db['FaxMessage'][_0x14fd('0x98')]({'where':_0x16bb91[_0x14fd('0x7b')]})[_0x14fd('0x26')](function(_0x11ce14){_0x207246['count']=_0x11ce14;if(_0x7da02e[_0x14fd('0x3e')][_0x14fd('0xb6')]){_0x16bb91['include']=[{'all':!![]}];}return db[_0x14fd('0xbd')][_0x14fd('0xc5')](_0x16bb91);})[_0x14fd('0x26')](function(_0xf937d5){_0x207246[_0x14fd('0xb4')]=_0xf937d5;return _0x207246;});}})[_0x14fd('0x26')](respondWithFilteredResult(_0x2fbac8,_0x16bb91))[_0x14fd('0x30')](handleError(_0x2fbac8,null));};exports['addTags']=function(_0x3e133b,_0xdce79b,_0x163e48){return db[_0x14fd('0x39')][_0x14fd('0x5d')]({'where':{'id':_0x3e133b[_0x14fd('0xb5')]['id']}})[_0x14fd('0x26')](handleEntityNotFound(_0xdce79b,null))['then'](function(_0x6afba8){if(_0x6afba8){return _0x6afba8['setTags'](_0x3e133b[_0x14fd('0x6e')][_0x14fd('0xbe')],_[_0x14fd('0xbf')](_0x3e133b[_0x14fd('0x6e')],[_0x14fd('0xbe'),'id'])||{})[_0x14fd('0xc6')](function(){return db[_0x14fd('0x68')][_0x14fd('0xc5')]({'attributes':['id',_0x14fd('0x29'),_0x14fd('0x49')],'where':{'id':_0x3e133b[_0x14fd('0x6e')][_0x14fd('0xbe')]}});})[_0x14fd('0x26')](function(_0x4fb2bc){socket['emit'](_0x14fd('0xc7'),{'id':Number(_0x3e133b[_0x14fd('0xb5')]['id']),'tags':_0x4fb2bc||[]});return{'id':Number(_0x3e133b[_0x14fd('0xb5')]['id']),'tags':_0x4fb2bc||[]};});}})[_0x14fd('0x26')](respondWithResult(_0xdce79b,null))[_0x14fd('0x30')](handleError(_0xdce79b,null));};exports['removeTags']=function(_0x45b8a2,_0x2c841a,_0x2edb9b){return db[_0x14fd('0x39')][_0x14fd('0x5d')]({'where':{'id':_0x45b8a2['params']['id']}})[_0x14fd('0x26')](handleEntityNotFound(_0x2c841a,null))[_0x14fd('0x26')](function(_0x269ef4){if(_0x269ef4){return _0x269ef4['removeTags'](_0x45b8a2[_0x14fd('0x3e')][_0x14fd('0xbe')]);}})[_0x14fd('0x26')](respondWithStatusCode(_0x2c841a,null))['catch'](handleError(_0x2c841a,null));};exports[_0x14fd('0xc8')]=function(_0x56030d,_0x6e43d5){var _0x239234=moment()[_0x14fd('0xc9')]()[_0x14fd('0x97')]();var _0x545547=path[_0x14fd('0xca')](config[_0x14fd('0xcb')],_0x14fd('0xcc'),'files',_0x14fd('0xcd'));var _0xb1f55=path[_0x14fd('0xca')](config[_0x14fd('0xcb')],_0x14fd('0xcc'),_0x14fd('0xce'),_0x14fd('0xcf'));var _0x4cf2b1=path[_0x14fd('0xca')](_0x545547,_0x239234);var _0xcc2b71=util['format'](_0x14fd('0xd0'),_0x56030d[_0x14fd('0xb5')]['id'],_0x239234);var _0x9a783c=path[_0x14fd('0xca')](_0x545547,_0xcc2b71);var _0x3f213b=[];_0x3f213b[_0x14fd('0x2f')]({'model':db['Attachment'],'as':_0x14fd('0xd1'),'raw':!![]});var _0x242b39=[{'model':db[_0x14fd('0xbd')],'as':_0x14fd('0xd2'),'attributes':['id',_0x14fd('0x6e'),_0x14fd('0x75')],'include':_0x3f213b}];return db['FaxInteraction'][_0x14fd('0x5d')]({'where':{'id':_0x56030d[_0x14fd('0xb5')]['id']},'include':_0x242b39})['then'](handleEntityNotFound(_0x6e43d5,null))[_0x14fd('0x26')](function(_0x85cd09){if(_0x85cd09&&_0x85cd09[_0x14fd('0xd2')]){var _0x23daa1=_0x85cd09[_0x14fd('0xd3')]({'plain':!![]});fs[_0x14fd('0xd4')](_0x4cf2b1);for(var _0x2e8a7c=0x0;_0x2e8a7c<_0x23daa1[_0x14fd('0xd2')][_0x14fd('0x43')];_0x2e8a7c++){var _0x4f650b=_0x23daa1['Messages'][_0x2e8a7c][_0x14fd('0xd1')];if(_0x4f650b){var _0x54e3e5=path[_0x14fd('0xca')](_0xb1f55,_0x4f650b[_0x14fd('0xd5')]);if(fs['existsSync'](_0x54e3e5)){fs[_0x14fd('0xd6')](_0x54e3e5)['pipe'](fs[_0x14fd('0xd7')](path[_0x14fd('0xca')](_0x4cf2b1,_0x4f650b[_0x14fd('0xd5')])));}}}return BPromise[_0x14fd('0x8f')]()[_0x14fd('0x26')](function(){return new BPromise(function(_0x6c1d46,_0x4c9aba){zipdir(_0x4cf2b1,{'saveTo':_0x9a783c},function(_0x37ef61,_0x304d91){if(_0x37ef61)return _0x4c9aba(_0x37ef61);return _0x6c1d46(_0x304d91);});})['then'](function(){return new BPromise(function(_0xd99f42,_0x3c0066){rimraf(_0x4cf2b1,function(_0x41ae27){if(_0x41ae27)_0x3c0066(_0x41ae27);return _0xd99f42();});});})['then'](function(){return _0x6e43d5['download'](_0x9a783c,_0xcc2b71,function(_0x48b485){if(_0x48b485){console['log'](_0x14fd('0xd8'),_0x48b485);}else{fs[_0x14fd('0xd9')](_0x9a783c);}});});});}else{return _0x6e43d5[_0x14fd('0x1b')](0xc8);}})[_0x14fd('0x30')](handleError(_0x6e43d5,null));};