3c698b6502f001744d042321fa64642733f261f8
[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 _0x8d7b=['Tag','User','$substring','CONCAT_WS(\x27\x20\x27,\x20o.name,\x20o.fullname)\x20LIKE\x20?','UserId','end','keys','some','compact','isEmpty','FaxAccountId','i.FaxAccountId\x20IN\x20?','concat','createdAt','parse','$gte','where','i.createdAt\x20BETWEEN\x20?\x20AND\x20?','null','\x20=\x20?','read','`unreadMessages`\x20=\x200','`unreadMessages`\x20>\x200','tag','CONCAT(\x27,\x27,\x20`TagIds`,\x20\x27,\x27)\x20LIKE\x20?','filter','replace','isNumeric','i.id\x20LIKE\x20?','i.fax\x20LIKE\x20?','CONCAT(c.firstName,\x20\x27\x20\x27,\x20c.lastName)\x20LIKE\x20?','i.id','QueryTypes','SELECT','clone','SUM(me.read\x20=\x200\x20AND\x20me.direction\x20=\x20\x27in\x27)','DESC','t.id\x20IN\x20?','resolve','i.FaxAccountId\x20IS\x20NOT\x20NULL','user','role','agent','getFaxAccounts','i.FaxAccountId\x20IS\x20NULL','sequelize','toString','keyBy','merge','a.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','contactName','i.*','c.firstName','Contact.firstName','c.lastName','Contact.lastName','c.phone','Contact.phone','c.mobile','c.fax','Contact.fax','o.fullname','o.internal','Owner.internal','GROUP_CONCAT(DISTINCT\x20t.id)','groupBy','FaxInteractionId','all','rows','show','params','includeAll','include','options','create','catch','body','describe','addMessage','ids','omit','findOne','pick','YYYY-MM-DD\x20HH:mm:ss','FaxMessage','addTags','setTags','spread','findAll','color','emit','faxInteractionTags:save','removeTags','download','unix','join','root','files','server','attachments','Attachment','Messages','mkdirSync','basename','existsSync','createReadStream','log','err','unlinkSync','html-pdf','eml-format','rimraf','zip-dir','request-promise','bluebird','util','path','sox','to-csv','ejs','squel','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','../../mysqldb','redis','defaults','localhost','socket.io-emitter','./faxInteraction.socket','register','status','json','count','offset','limit','set','apply','save','update','then','destroy','sendStatus','stack','name','send','Users','fullname','TagIds','split','forEach','Tags','push','map','FaxInteraction','rawAttributes','fieldName','type','key','model','query','filters','intersection','attributes','fields','length','hasOwnProperty','nolimit','order','sort','select','field','from','tools_tags','u.id','u.fullname','user_has_fax_interactions','left_join','users','u.id\x20=\x20ui.UserId','fax_interactions','c.id\x20=\x20i.ContactId\x20AND\x20c.deletedAt\x20IS\x20NULL','o.id\x20=\x20i.UserId','fax_accounts','a.id\x20=\x20i.FaxAccountId','me.FaxInteractionId\x20=\x20i.id','fax_interaction_has_tags','it.FaxInteractionId\x20=\x20i.id','t.id\x20=\x20it.TagId','expr','search','conditions','unreadMessages','value','having','`\x20=\x200','`\x20>\x200','Contact','operator','MATCH\x20(c.firstName,\x20c.lastName,\x20c.phone,\x20c.mobile,\x20c.fax,\x20c.email)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)','getFullTextValue','c.firstName\x20LIKE\x20?\x20OR\x20c.lastName\x20LIKE\x20?\x20OR\x20c.email\x20LIKE\x20?','find','ContactId','buildExpression','text','start'];(function(_0x5d6c3e,_0x409a3e){var _0x44ecb7=function(_0x936b6a){while(--_0x936b6a){_0x5d6c3e['push'](_0x5d6c3e['shift']());}};_0x44ecb7(++_0x409a3e);}(_0x8d7b,0x70));var _0xb8d7=function(_0xcee2ab,_0x2a8e35){_0xcee2ab=_0xcee2ab-0x0;var _0x721c12=_0x8d7b[_0xcee2ab];return _0x721c12;};'use strict';var pdf=require(_0xb8d7('0x0'));var emlformat=require(_0xb8d7('0x1'));var rimraf=require(_0xb8d7('0x2'));var zipdir=require(_0xb8d7('0x3'));var jsonpatch=require('fast-json-patch');var rp=require(_0xb8d7('0x4'));var moment=require('moment');var BPromise=require(_0xb8d7('0x5'));var Mustache=require('mustache');var util=require(_0xb8d7('0x6'));var path=require(_0xb8d7('0x7'));var sox=require(_0xb8d7('0x8'));var csv=require(_0xb8d7('0x9'));var ejs=require(_0xb8d7('0xa'));var fs=require('fs');var _=require('lodash');var squel=require(_0xb8d7('0xb'));var crypto=require(_0xb8d7('0xc'));var jsforce=require(_0xb8d7('0xd'));var deskjs=require(_0xb8d7('0xe'));var toCsv=require(_0xb8d7('0x9'));var querystring=require(_0xb8d7('0xf'));var Papa=require(_0xb8d7('0x10'));var Redis=require(_0xb8d7('0x11'));var authService=require(_0xb8d7('0x12'));var qs=require(_0xb8d7('0x13'));var as=require(_0xb8d7('0x14'));var hardwareService=require(_0xb8d7('0x15'));var logger=require(_0xb8d7('0x16'))(_0xb8d7('0x17'));var utils=require(_0xb8d7('0x18'));var config=require(_0xb8d7('0x19'));var licenseUtil=require(_0xb8d7('0x1a'));var db=require(_0xb8d7('0x1b'))['db'];config[_0xb8d7('0x1c')]=_[_0xb8d7('0x1d')](config['redis'],{'host':_0xb8d7('0x1e'),'port':0x18eb});var socket=require(_0xb8d7('0x1f'))(new Redis(config[_0xb8d7('0x1c')]));require(_0xb8d7('0x20'))[_0xb8d7('0x21')](socket);function respondWithStatusCode(_0x421aa7,_0x54f619){_0x54f619=_0x54f619||0xcc;return function(_0x13de07){if(_0x13de07){return _0x421aa7['sendStatus'](_0x54f619);}return _0x421aa7[_0xb8d7('0x22')](_0x54f619)['end']();};}function respondWithResult(_0x52748c,_0x48a3fe){_0x48a3fe=_0x48a3fe||0xc8;return function(_0x59be14){if(_0x59be14){return _0x52748c[_0xb8d7('0x22')](_0x48a3fe)[_0xb8d7('0x23')](_0x59be14);}};}function respondWithFilteredResult(_0x226d55,_0x52d5be){return function(_0x463b05){if(_0x463b05){var _0x2f81e2=_0x463b05[_0xb8d7('0x24')],_0x4510f4=_0x52d5be[_0xb8d7('0x25')],_0x1341f4=_0x52d5be[_0xb8d7('0x25')]+_0x52d5be[_0xb8d7('0x26')],_0x299bc9;if(_0x1341f4>=_0x2f81e2){_0x1341f4=_0x2f81e2;_0x299bc9=0xc8;}else{_0x299bc9=0xce;}_0x226d55[_0xb8d7('0x22')](_0x299bc9);return _0x226d55[_0xb8d7('0x27')]('Content-Range',_0x4510f4+'-'+_0x1341f4+'/'+_0x2f81e2)[_0xb8d7('0x23')](_0x463b05);}return null;};}function patchUpdates(_0x94a07e){return function(_0x48b6d6){try{jsonpatch[_0xb8d7('0x28')](_0x48b6d6,_0x94a07e,!![]);}catch(_0x4d9b7b){return BPromise['reject'](_0x4d9b7b);}return _0x48b6d6[_0xb8d7('0x29')]();};}function saveUpdates(_0xed698d,_0x1a16c0){return function(_0x48d7a7){if(_0x48d7a7){return _0x48d7a7[_0xb8d7('0x2a')](_0xed698d)[_0xb8d7('0x2b')](function(_0x5d21c0){return _0x5d21c0;});}return null;};}function removeEntity(_0x2e05d8,_0x532ff3){return function(_0x506207){if(_0x506207){return _0x506207[_0xb8d7('0x2c')]()['then'](function(){_0x2e05d8[_0xb8d7('0x22')](0xcc)['end']();});}};}function handleEntityNotFound(_0x5e855e,_0x4d9eba){return function(_0x329d11){if(!_0x329d11){_0x5e855e[_0xb8d7('0x2d')](0x194);}return _0x329d11;};}function handleError(_0x2c39c9,_0x3f0309){_0x3f0309=_0x3f0309||0x1f4;return function(_0x21dcb6){logger['error'](_0x21dcb6[_0xb8d7('0x2e')]);if(_0x21dcb6[_0xb8d7('0x2f')]){delete _0x21dcb6[_0xb8d7('0x2f')];}_0x2c39c9[_0xb8d7('0x22')](_0x3f0309)[_0xb8d7('0x30')](_0x21dcb6);};}function getInteractionUsers(_0xc656f3,_0x45adeb){return new BPromise(function(_0x38dfe8,_0x11f970){try{if(_0x45adeb[_0xc656f3['id']]){_0xc656f3[_0xb8d7('0x31')]=_['map'](_0x45adeb[_0xc656f3['id']],function(_0x5beaea){return{'id':_0x5beaea['id'],'fullname':_0x5beaea[_0xb8d7('0x32')]};});}}catch(_0x2f836b){_0x11f970(_0x2f836b);}_0x38dfe8(_0xc656f3);});}function getInteractionTags(_0x9f4cb9,_0x44d453){return new BPromise(function(_0x1dab10,_0x2e3f03){try{if(_0x9f4cb9[_0xb8d7('0x33')]){_0x9f4cb9['Tags']=[];_0x9f4cb9[_0xb8d7('0x33')][_0xb8d7('0x34')](',')[_0xb8d7('0x35')](function(_0x606c61){_0x9f4cb9[_0xb8d7('0x36')][_0xb8d7('0x37')](_0x44d453[_0x606c61]);});}delete _0x9f4cb9['TagIds'];}catch(_0x314329){_0x2e3f03(_0x314329);}_0x1dab10(_0x9f4cb9);});}function updateFaxInteraction(_0x435c6a,_0x4b2b78,_0x1e9179){return new BPromise(function(_0x22736b,_0x1248e0){return getInteractionUsers(_0x435c6a,_0x1e9179)[_0xb8d7('0x2b')](function(_0x23e747){return getInteractionTags(_0x23e747,_0x4b2b78);})[_0xb8d7('0x2b')](function(_0x3fcd31){_0x22736b(_0x3fcd31);})['catch'](function(_0x4682e7){_0x1248e0(_0x4682e7);});});}exports['index']=function(_0x34b7c1,_0x1a4627){var _0x4cd2fc={},_0x3a8d23={},_0x2a1e61={'count':0x0,'rows':[]};var _0x539cc1=_[_0xb8d7('0x38')](db[_0xb8d7('0x39')][_0xb8d7('0x3a')],function(_0x3b969f){return{'name':_0x3b969f[_0xb8d7('0x3b')],'type':_0x3b969f[_0xb8d7('0x3c')][_0xb8d7('0x3d')]};});_0x3a8d23[_0xb8d7('0x3e')]=_[_0xb8d7('0x38')](_0x539cc1,_0xb8d7('0x2f'));_0x3a8d23[_0xb8d7('0x3f')]=_['keys'](_0x34b7c1['query']);_0x3a8d23[_0xb8d7('0x40')]=_[_0xb8d7('0x41')](_0x3a8d23['model'],_0x3a8d23[_0xb8d7('0x3f')]);_0x4cd2fc[_0xb8d7('0x42')]=_['intersection'](_0x3a8d23[_0xb8d7('0x3e')],qs[_0xb8d7('0x43')](_0x34b7c1[_0xb8d7('0x3f')][_0xb8d7('0x43')]));_0x4cd2fc[_0xb8d7('0x42')]=_0x4cd2fc['attributes'][_0xb8d7('0x44')]?_0x4cd2fc[_0xb8d7('0x42')]:_0x3a8d23['model'];if(!_0x34b7c1['query'][_0xb8d7('0x45')](_0xb8d7('0x46'))){_0x4cd2fc[_0xb8d7('0x26')]=qs['limit'](_0x34b7c1[_0xb8d7('0x3f')][_0xb8d7('0x26')]);_0x4cd2fc[_0xb8d7('0x25')]=qs[_0xb8d7('0x25')](_0x34b7c1[_0xb8d7('0x3f')]['offset']);}_0x4cd2fc[_0xb8d7('0x47')]=qs[_0xb8d7('0x48')](_0x34b7c1[_0xb8d7('0x3f')][_0xb8d7('0x48')]);_0x4cd2fc['where']=qs[_0xb8d7('0x40')](_['pick'](_0x34b7c1[_0xb8d7('0x3f')],_0x3a8d23[_0xb8d7('0x40')]),_0x539cc1);var _0x54e63b=[];var _0x4030a1=squel[_0xb8d7('0x49')]()[_0xb8d7('0x4a')]('id')[_0xb8d7('0x4a')](_0xb8d7('0x2f'))['field']('color')[_0xb8d7('0x4b')](_0xb8d7('0x4c'));var _0xc1b687=squel[_0xb8d7('0x49')]()['field'](_0xb8d7('0x4d'))[_0xb8d7('0x4a')](_0xb8d7('0x4e'))[_0xb8d7('0x4a')]('ui.FaxInteractionId')['from'](_0xb8d7('0x4f'),'ui')[_0xb8d7('0x50')](_0xb8d7('0x51'),'u',_0xb8d7('0x52'));var _0x1fdfbd=squel[_0xb8d7('0x49')]()[_0xb8d7('0x4b')](_0xb8d7('0x53'),'i')[_0xb8d7('0x50')]('cm_contacts','c',_0xb8d7('0x54'))[_0xb8d7('0x50')](_0xb8d7('0x51'),'o',_0xb8d7('0x55'))[_0xb8d7('0x50')](_0xb8d7('0x56'),'a',_0xb8d7('0x57'))['left_join']('fax_messages','me',_0xb8d7('0x58'))[_0xb8d7('0x50')](_0xb8d7('0x59'),'it',_0xb8d7('0x5a'))['left_join']('tools_tags','t',_0xb8d7('0x5b'));var _0xdb4a3=squel[_0xb8d7('0x5c')]();var _0x8a7f46=[];var _0x27cf31=squel['expr']();var _0x529401;if(_0x34b7c1['query']['search']){_0x529401=as['parseSearch'](_0x34b7c1[_0xb8d7('0x3f')][_0xb8d7('0x5d')]);var _0xf8a1ae=_0x529401['sqlOperator'];for(var _0x1e65c6=0x0;_0x1e65c6<_0x529401[_0xb8d7('0x5e')][_0xb8d7('0x44')];_0x1e65c6++){var _0x18821c=_0x529401['conditions'][_0x1e65c6];var _0x299492='i';var _0x5016a3=_['find'](_0x539cc1,[_0xb8d7('0x2f'),_0x18821c[_0xb8d7('0x4a')]]);if(!_0x5016a3){switch(_0x18821c[_0xb8d7('0x4a')]){case _0xb8d7('0x5f'):if(_0x18821c[_0xb8d7('0x60')]==0x1){_0x1fdfbd[_0xb8d7('0x61')]('`'+_0x18821c[_0xb8d7('0x4a')]+_0xb8d7('0x62'));}else{_0x1fdfbd[_0xb8d7('0x61')]('`'+_0x18821c[_0xb8d7('0x4a')]+_0xb8d7('0x63'));}break;case _0xb8d7('0x64'):if(_0x18821c[_0xb8d7('0x65')]==='$substring'){if(_0x18821c[_0xb8d7('0x60')][_0xb8d7('0x34')]('\x20')['length']>0x1){_0xdb4a3[_0xf8a1ae](_0xb8d7('0x66'),qs[_0xb8d7('0x67')](_0x18821c[_0xb8d7('0x60')]),null);}else{var _0x48b486='%'+_0x18821c[_0xb8d7('0x60')]+'%';_0xdb4a3[_0xf8a1ae](_0xb8d7('0x68'),_0x48b486,_0x48b486,_0x48b486);}}else{_0x5016a3=_[_0xb8d7('0x69')](_0x539cc1,[_0xb8d7('0x2f'),_0xb8d7('0x6a')]);_0x18821c[_0xb8d7('0x4a')]=_0xb8d7('0x6a');_0x54a927=as[_0xb8d7('0x6b')](_0x299492,_0x5016a3[_0xb8d7('0x3c')],_0x18821c);_0xdb4a3[_0xf8a1ae](_0x54a927[_0xb8d7('0x6c')],_0x54a927[_0xb8d7('0x60')][_0xb8d7('0x6d')],_0x54a927['value']['end']);}break;case _0xb8d7('0x6e'):var _0x4daa13=_0x18821c['value'][_0xb8d7('0x34')](',')[_0xb8d7('0x38')](function(_0x1e2e36){return Number(_0x1e2e36);});_0x4daa13[_0xb8d7('0x35')](function(_0x220fc3){_0x27cf31['or']('CONCAT(\x27,\x27,\x20`TagIds`,\x20\x27,\x27)\x20LIKE\x20?','%,'+_0x220fc3+',%');});_0x8a7f46=_['union'](_0x8a7f46,_0x4daa13);break;case _0xb8d7('0x6f'):if(_0x18821c[_0xb8d7('0x65')]===_0xb8d7('0x70')){_0xdb4a3[_0xf8a1ae](_0xb8d7('0x71'),'%'+_0x18821c[_0xb8d7('0x60')]+'%',null);}else{_0x5016a3=_[_0xb8d7('0x69')](_0x539cc1,[_0xb8d7('0x2f'),_0xb8d7('0x72')]);_0x18821c[_0xb8d7('0x4a')]=_0xb8d7('0x72');_0x54a927=as[_0xb8d7('0x6b')](_0x299492,_0x5016a3[_0xb8d7('0x3c')],_0x18821c);_0xdb4a3[_0xf8a1ae](_0x54a927['text'],_0x54a927[_0xb8d7('0x60')][_0xb8d7('0x6d')],_0x54a927[_0xb8d7('0x60')]['end']);}break;case'body':_0x54a927=as[_0xb8d7('0x6b')]('me',null,_0x18821c);_0xdb4a3[_0xf8a1ae](_0x54a927[_0xb8d7('0x6c')],_0x54a927[_0xb8d7('0x60')][_0xb8d7('0x6d')],_0x54a927[_0xb8d7('0x60')][_0xb8d7('0x73')]);break;}}else{var _0x54a927=as['buildExpression'](_0x299492,_0x5016a3['type'],_0x18821c);_0xdb4a3[_0xf8a1ae](_0x54a927[_0xb8d7('0x6c')],_0x54a927[_0xb8d7('0x60')][_0xb8d7('0x6d')],_0x54a927['value'][_0xb8d7('0x73')]);}}}else{var _0x1436cc=_(_0x34b7c1[_0xb8d7('0x3f')])[_0xb8d7('0x74')]()[_0xb8d7('0x38')](function(_0x181127){return _[_0xb8d7('0x75')](_0x539cc1,[_0xb8d7('0x2f'),_0x181127])?_0x181127:undefined;})[_0xb8d7('0x76')]()['value']();if(!_[_0xb8d7('0x77')](_0x1436cc)){_0x1436cc[_0xb8d7('0x35')](function(_0x52d552){if(_0x52d552===_0xb8d7('0x78')){_0x1fdfbd['where'](_0xb8d7('0x79'),[][_0xb8d7('0x7a')](_0x34b7c1[_0xb8d7('0x3f')][_0x52d552]));}else if(_0x52d552===_0xb8d7('0x7b')){var _0xb7e295=JSON[_0xb8d7('0x7c')](_0x34b7c1['query'][_0x52d552])[_0xb8d7('0x7d')];var _0x3f8ea3=JSON[_0xb8d7('0x7c')](_0x34b7c1[_0xb8d7('0x3f')][_0x52d552])['$lte'];_0x1fdfbd[_0xb8d7('0x7e')](_0xb8d7('0x7f'),_0xb7e295,_0x3f8ea3);}else{if(_0x34b7c1[_0xb8d7('0x3f')][_0x52d552]===_0xb8d7('0x80')){_0x1fdfbd[_0xb8d7('0x7e')]('i.'+_0x52d552+'\x20IS\x20NULL');}else{_0x1fdfbd[_0xb8d7('0x7e')]('i.'+_0x52d552+_0xb8d7('0x81'),_0x34b7c1[_0xb8d7('0x3f')][_0x52d552]);}}});}if(_0x34b7c1[_0xb8d7('0x3f')][_0xb8d7('0x82')]){if(_0x34b7c1[_0xb8d7('0x3f')][_0xb8d7('0x82')]==0x1){_0x1fdfbd[_0xb8d7('0x61')](_0xb8d7('0x83'));}else{_0x1fdfbd[_0xb8d7('0x61')](_0xb8d7('0x84'));}}if(_0x34b7c1['query'][_0xb8d7('0x85')]){_0x8a7f46=_['isArray'](_0x34b7c1[_0xb8d7('0x3f')][_0xb8d7('0x85')])?_0x34b7c1[_0xb8d7('0x3f')][_0xb8d7('0x85')]:new Array(_0x34b7c1['query'][_0xb8d7('0x85')]);_0x8a7f46['forEach'](function(_0x436284){_0x27cf31['or'](_0xb8d7('0x86'),'%,'+_0x436284+',%');});}if(_0x34b7c1[_0xb8d7('0x3f')][_0xb8d7('0x87')]){var _0x573a7f=_0x34b7c1[_0xb8d7('0x3f')][_0xb8d7('0x87')][_0xb8d7('0x88')]('\x5c','\x5c\x5c')[_0xb8d7('0x88')](/'/g,'\x27\x27');if(qs[_0xb8d7('0x89')](_0x573a7f)){_0xdb4a3['or'](_0xb8d7('0x8a'),_0x573a7f+'%')['or'](_0xb8d7('0x8b'),_0x573a7f+'%');}_0xdb4a3['or'](_0xb8d7('0x8c'),_0x573a7f+'%');}}_0x1fdfbd[_0xb8d7('0x7e')](_0xdb4a3);_0x1fdfbd['group'](_0xb8d7('0x8d'));var _0x158617={'type':db['Sequelize'][_0xb8d7('0x8e')][_0xb8d7('0x8f')],'raw':!![]};var _0x391fdf=_0x1fdfbd[_0xb8d7('0x90')]();_0x391fdf[_0xb8d7('0x4a')](_0xb8d7('0x8d'));_0x391fdf[_0xb8d7('0x4a')](_0xb8d7('0x91'),_0xb8d7('0x5f'));if(_0x4cd2fc[_0xb8d7('0x47')]){_0x4cd2fc['order']['forEach'](function(_0x477ec9){var _0x3fefd8=_0x477ec9[0x0]==='contactName'?_0x477ec9[0x0]:'i.'+_0x477ec9[0x0];_0x1fdfbd[_0xb8d7('0x47')](_0x3fefd8,_0x477ec9[0x1]===_0xb8d7('0x92')?![]:!![]);});}if(!_['isEmpty'](_0x8a7f46)){_0x1fdfbd[_0xb8d7('0x61')](_0x27cf31);_0x391fdf['where'](_0xb8d7('0x93'),_0x8a7f46);}BPromise[_0xb8d7('0x94')]()[_0xb8d7('0x2b')](function(){if(!_0x529401){if(_0x34b7c1[_0xb8d7('0x3f')][_0xb8d7('0x78')])return;_0x391fdf[_0xb8d7('0x7e')]('i.FaxAccountId\x20IS\x20NOT\x20NULL');_0x1fdfbd[_0xb8d7('0x7e')](_0xb8d7('0x95'));return;}if(_0x34b7c1[_0xb8d7('0x96')][_0xb8d7('0x97')]!==_0xb8d7('0x98'))return;return _0x34b7c1[_0xb8d7('0x96')][_0xb8d7('0x99')]({'attributes':['id'],'raw':!![]})['then'](function(_0xd819d9){if(_[_0xb8d7('0x77')](_0xd819d9)){_0x391fdf[_0xb8d7('0x7e')]('i.FaxAccountId\x20IS\x20NULL');_0x1fdfbd['where'](_0xb8d7('0x9a'));}else{_0x391fdf[_0xb8d7('0x7e')](_0xb8d7('0x79'),_['map'](_0xd819d9,'id'));_0x1fdfbd['where'](_0xb8d7('0x79'),_[_0xb8d7('0x38')](_0xd819d9,'id'));}});})['then'](function(){if(_0x34b7c1[_0xb8d7('0x96')][_0xb8d7('0x97')]===_0xb8d7('0x98')&&!_0x529401&&!_0x34b7c1['query'][_0xb8d7('0x78')])return[];return db[_0xb8d7('0x9b')][_0xb8d7('0x3f')](_0x391fdf[_0xb8d7('0x9c')](),_0x158617);})[_0xb8d7('0x2b')](function(_0x4e67c8){_0x2a1e61[_0xb8d7('0x24')]=_0x4e67c8[_0xb8d7('0x44')];if(_0x2a1e61[_0xb8d7('0x24')]===0x0)return[];return db['sequelize']['query'](_0x4030a1[_0xb8d7('0x9c')](),_0x158617)['then'](function(_0xba316e){_0x54e63b=_[_0xb8d7('0x9d')](_0xba316e,'id');_0x158617=_[_0xb8d7('0x9e')](_0x158617,{'model':db[_0xb8d7('0x39')],'mapToModel':!![],'raw':!![],'nest':!![]});if(_0x34b7c1['query'][_0xb8d7('0x43')]){_0x4cd2fc['attributes'][_0xb8d7('0x35')](function(_0x2d0df8){_0x1fdfbd[_0xb8d7('0x4a')]('i.'+_0x2d0df8);});}else{_0x1fdfbd[_0xb8d7('0x4a')](_0xb8d7('0x91'),_0xb8d7('0x5f'));_0x1fdfbd['field'](_0xb8d7('0x9f'),'Account.key');_0x1fdfbd['field'](_0xb8d7('0xa0'),_0xb8d7('0xa1'));_0x1fdfbd[_0xb8d7('0x4a')](_0xb8d7('0xa2'),_0xb8d7('0xa3'));_0x1fdfbd[_0xb8d7('0x4a')](_0xb8d7('0xa4'));_0x1fdfbd[_0xb8d7('0x4a')](_0xb8d7('0xa5'),_0xb8d7('0xa6'));_0x1fdfbd[_0xb8d7('0x4a')](_0xb8d7('0xa7'),_0xb8d7('0xa8'));_0x1fdfbd[_0xb8d7('0x4a')]('c.email','Contact.email');_0x1fdfbd[_0xb8d7('0x4a')](_0xb8d7('0xa9'),_0xb8d7('0xaa'));_0x1fdfbd['field'](_0xb8d7('0xab'),'Contact.mobile');_0x1fdfbd[_0xb8d7('0x4a')](_0xb8d7('0xac'),_0xb8d7('0xad'));_0x1fdfbd[_0xb8d7('0x4a')](_0xb8d7('0xae'),'Owner.fullname');_0x1fdfbd[_0xb8d7('0x4a')](_0xb8d7('0xaf'),_0xb8d7('0xb0'));_0x1fdfbd['field'](_0xb8d7('0xb1'),_0xb8d7('0x33'));}if(_0x4cd2fc['limit'])_0x1fdfbd['limit'](_0x4cd2fc['limit']);if(_0x4cd2fc['offset'])_0x1fdfbd[_0xb8d7('0x25')](_0x4cd2fc[_0xb8d7('0x25')]);return db[_0xb8d7('0x9b')]['query'](_0x1fdfbd[_0xb8d7('0x9c')](),_0x158617);})[_0xb8d7('0x2b')](function(_0x1731ba){_0xc1b687[_0xb8d7('0x7e')]('ui.FaxInteractionId\x20IN\x20?',_[_0xb8d7('0x38')](_0x1731ba,'id'));return db[_0xb8d7('0x9b')]['query'](_0xc1b687[_0xb8d7('0x9c')](),_0x158617)[_0xb8d7('0x2b')](function(_0x243cbc){var _0x15dbf9=_[_0xb8d7('0xb2')](_0x243cbc,_0xb8d7('0xb3'));var _0xb11815=[];_0x1731ba[_0xb8d7('0x35')](function(_0x673408){_0xb11815['push'](updateFaxInteraction(_0x673408,_0x54e63b,_0x15dbf9));});return BPromise[_0xb8d7('0xb4')](_0xb11815);});});})[_0xb8d7('0x2b')](function(_0x4e28a6){_0x2a1e61[_0xb8d7('0xb5')]=_0x4e28a6;return _0x2a1e61;})[_0xb8d7('0x2b')](respondWithFilteredResult(_0x1a4627,_0x4cd2fc))['catch'](handleError(_0x1a4627,null));};exports[_0xb8d7('0xb6')]=function(_0x551f9c,_0x887701){var _0x3fc273={'raw':![],'where':{'id':_0x551f9c[_0xb8d7('0xb7')]['id']}},_0x1e17d0={};_0x1e17d0[_0xb8d7('0x3e')]=_['keys'](db['FaxInteraction'][_0xb8d7('0x3a')]);_0x1e17d0[_0xb8d7('0x3f')]=_['keys'](_0x551f9c[_0xb8d7('0x3f')]);_0x1e17d0[_0xb8d7('0x40')]=_[_0xb8d7('0x41')](_0x1e17d0['model'],_0x1e17d0[_0xb8d7('0x3f')]);_0x3fc273[_0xb8d7('0x42')]=_[_0xb8d7('0x41')](_0x1e17d0[_0xb8d7('0x3e')],qs['fields'](_0x551f9c[_0xb8d7('0x3f')][_0xb8d7('0x43')]));_0x3fc273['attributes']=_0x3fc273[_0xb8d7('0x42')][_0xb8d7('0x44')]?_0x3fc273[_0xb8d7('0x42')]:_0x1e17d0['model'];if(_0x551f9c[_0xb8d7('0x3f')][_0xb8d7('0xb8')]){_0x3fc273[_0xb8d7('0xb9')]=[{'all':!![]}];}_0x3fc273=_[_0xb8d7('0x9e')]({},_0x3fc273,_0x551f9c[_0xb8d7('0xba')]);return db['FaxInteraction']['find'](_0x3fc273)['then'](handleEntityNotFound(_0x887701,null))['then'](respondWithResult(_0x887701,null))['catch'](handleError(_0x887701,null));};exports[_0xb8d7('0xbb')]=function(_0x379a91,_0x8a553e){return db[_0xb8d7('0x39')][_0xb8d7('0xbb')](_0x379a91['body'],{})['then'](respondWithResult(_0x8a553e,0xc9))[_0xb8d7('0xbc')](handleError(_0x8a553e,null));};exports['update']=function(_0x4163f3,_0x39e801){if(_0x4163f3['body']['id']){delete _0x4163f3[_0xb8d7('0xbd')]['id'];}return db[_0xb8d7('0x39')][_0xb8d7('0x69')]({'where':{'id':_0x4163f3[_0xb8d7('0xb7')]['id']}})['then'](handleEntityNotFound(_0x39e801,null))[_0xb8d7('0x2b')](saveUpdates(_0x4163f3[_0xb8d7('0xbd')],null))[_0xb8d7('0x2b')](respondWithResult(_0x39e801,null))[_0xb8d7('0xbc')](handleError(_0x39e801,null));};exports[_0xb8d7('0x2c')]=function(_0x1a8729,_0x592501){return db['FaxInteraction'][_0xb8d7('0x69')]({'where':{'id':_0x1a8729[_0xb8d7('0xb7')]['id']}})[_0xb8d7('0x2b')](handleEntityNotFound(_0x592501,null))['then'](removeEntity(_0x592501,null))['catch'](handleError(_0x592501,null));};exports[_0xb8d7('0xbe')]=function(_0x4482e0,_0x9e7ac6){return db[_0xb8d7('0x39')][_0xb8d7('0xbe')]()[_0xb8d7('0x2b')](respondWithResult(_0x9e7ac6,null))[_0xb8d7('0xbc')](handleError(_0x9e7ac6,null));};exports[_0xb8d7('0xbf')]=function(_0x3a6e2e,_0x2a7c08,_0x4ce1de){return db['FaxMessage'][_0xb8d7('0x69')]({'where':{'id':_0x3a6e2e['params']['id']}})[_0xb8d7('0x2b')](handleEntityNotFound(_0x2a7c08,null))['then'](function(_0x4743c2){if(_0x4743c2){return _0x4743c2[_0xb8d7('0xbf')](_0x3a6e2e[_0xb8d7('0xbd')][_0xb8d7('0xc0')],_[_0xb8d7('0xc1')](_0x3a6e2e[_0xb8d7('0xbd')],['ids','id'])||{});}})[_0xb8d7('0x2b')](respondWithResult(_0x2a7c08,null))[_0xb8d7('0xbc')](handleError(_0x2a7c08,null));};exports['getMessages']=function(_0x56e7bb,_0x422c3c,_0x529bed){var _0x411f3d={'raw':![],'where':{}};var _0x3243ac={};var _0x1d474a={'count':0x0,'rows':[]};return db[_0xb8d7('0x39')][_0xb8d7('0xc2')]({'where':{'id':_0x56e7bb[_0xb8d7('0xb7')]['id']}})[_0xb8d7('0x2b')](handleEntityNotFound(_0x422c3c,null))[_0xb8d7('0x2b')](function(_0x516ef4){if(_0x516ef4){_0x3243ac[_0xb8d7('0x3e')]=_['keys'](db['FaxMessage'][_0xb8d7('0x3a')]);_0x3243ac[_0xb8d7('0x3f')]=_['keys'](_0x56e7bb[_0xb8d7('0x3f')]);_0x3243ac[_0xb8d7('0x40')]=_[_0xb8d7('0x41')](_0x3243ac['model'],_0x3243ac['query']);_0x411f3d[_0xb8d7('0x42')]=_[_0xb8d7('0x41')](_0x3243ac[_0xb8d7('0x3e')],qs['fields'](_0x56e7bb[_0xb8d7('0x3f')][_0xb8d7('0x43')]));_0x411f3d[_0xb8d7('0x42')]=_0x411f3d[_0xb8d7('0x42')][_0xb8d7('0x44')]?_0x411f3d[_0xb8d7('0x42')]:_0x3243ac[_0xb8d7('0x3e')];if(!_0x56e7bb[_0xb8d7('0x3f')]['hasOwnProperty'](_0xb8d7('0x46'))){_0x411f3d[_0xb8d7('0x26')]=qs[_0xb8d7('0x26')](_0x56e7bb[_0xb8d7('0x3f')][_0xb8d7('0x26')]);_0x411f3d[_0xb8d7('0x25')]=qs[_0xb8d7('0x25')](_0x56e7bb[_0xb8d7('0x3f')][_0xb8d7('0x25')]);}_0x411f3d[_0xb8d7('0x47')]=qs[_0xb8d7('0x48')](_0x56e7bb[_0xb8d7('0x3f')]['sort']);_0x411f3d[_0xb8d7('0x7e')]=qs[_0xb8d7('0x40')](_[_0xb8d7('0xc3')](_0x56e7bb[_0xb8d7('0x3f')],_0x3243ac[_0xb8d7('0x40')]));_0x411f3d[_0xb8d7('0x7e')]['FaxInteractionId']=_0x516ef4['id'];if(_0x56e7bb[_0xb8d7('0x3f')]['filter']){_0x411f3d['where']=_[_0xb8d7('0x9e')](_0x411f3d[_0xb8d7('0x7e')],{'$or':_[_0xb8d7('0x38')](_0x411f3d[_0xb8d7('0x42')],function(_0x680616){var _0x35e871={};_0x35e871[_0x680616]={'$like':'%'+_0x56e7bb['query'][_0xb8d7('0x87')]+'%'};return _0x35e871;})});}if(_0x56e7bb['query']['$gte']){var _0x155971=_0x56e7bb[_0xb8d7('0x3f')][_0xb8d7('0x7d')][_0xb8d7('0x34')](',');var _0x24c846={};_0x24c846[_0x155971[0x0]]={'$gte':moment(_0x155971[0x1])['format'](_0xb8d7('0xc4'))};_0x411f3d['where']=_[_0xb8d7('0x9e')](_0x411f3d[_0xb8d7('0x7e')],_0x24c846);}_0x411f3d=_[_0xb8d7('0x9e')]({},_0x411f3d,_0x56e7bb['options']);return db[_0xb8d7('0xc5')][_0xb8d7('0x24')]({'where':_0x411f3d[_0xb8d7('0x7e')]})[_0xb8d7('0x2b')](function(_0x205fbb){_0x1d474a[_0xb8d7('0x24')]=_0x205fbb;if(_0x56e7bb[_0xb8d7('0x3f')][_0xb8d7('0xb8')]){_0x411f3d[_0xb8d7('0xb9')]=[{'all':!![]}];}return db[_0xb8d7('0xc5')]['findAll'](_0x411f3d);})[_0xb8d7('0x2b')](function(_0x5da226){_0x1d474a[_0xb8d7('0xb5')]=_0x5da226;return _0x1d474a;});}})['then'](respondWithFilteredResult(_0x422c3c,_0x411f3d))[_0xb8d7('0xbc')](handleError(_0x422c3c,null));};exports[_0xb8d7('0xc6')]=function(_0x3b7cec,_0x53b718,_0x2b3413){return db['FaxInteraction'][_0xb8d7('0x69')]({'where':{'id':_0x3b7cec['params']['id']}})[_0xb8d7('0x2b')](handleEntityNotFound(_0x53b718,null))[_0xb8d7('0x2b')](function(_0xb30941){if(_0xb30941){return _0xb30941[_0xb8d7('0xc7')](_0x3b7cec[_0xb8d7('0xbd')]['ids'],_[_0xb8d7('0xc1')](_0x3b7cec['body'],['ids','id'])||{})[_0xb8d7('0xc8')](function(){return db[_0xb8d7('0x6e')][_0xb8d7('0xc9')]({'attributes':['id',_0xb8d7('0x2f'),_0xb8d7('0xca')],'where':{'id':_0x3b7cec['body'][_0xb8d7('0xc0')]}});})['then'](function(_0x3116c8){socket[_0xb8d7('0xcb')](_0xb8d7('0xcc'),{'id':Number(_0x3b7cec[_0xb8d7('0xb7')]['id']),'tags':_0x3116c8||[]});return{'id':Number(_0x3b7cec['params']['id']),'tags':_0x3116c8||[]};});}})[_0xb8d7('0x2b')](respondWithResult(_0x53b718,null))[_0xb8d7('0xbc')](handleError(_0x53b718,null));};exports[_0xb8d7('0xcd')]=function(_0x129e76,_0x514209,_0x399fa6){return db[_0xb8d7('0x39')][_0xb8d7('0x69')]({'where':{'id':_0x129e76['params']['id']}})['then'](handleEntityNotFound(_0x514209,null))[_0xb8d7('0x2b')](function(_0x314050){if(_0x314050){return _0x314050[_0xb8d7('0xcd')](_0x129e76[_0xb8d7('0x3f')]['ids']);}})[_0xb8d7('0x2b')](respondWithStatusCode(_0x514209,null))[_0xb8d7('0xbc')](handleError(_0x514209,null));};exports[_0xb8d7('0xce')]=function(_0x1f8873,_0x95dde6){var _0x3e159e=moment()[_0xb8d7('0xcf')]()[_0xb8d7('0x9c')]();var _0x9cabf5=path[_0xb8d7('0xd0')](config[_0xb8d7('0xd1')],'server',_0xb8d7('0xd2'),'tmp');var _0x51aa49=path[_0xb8d7('0xd0')](config[_0xb8d7('0xd1')],_0xb8d7('0xd3'),_0xb8d7('0xd2'),_0xb8d7('0xd4'));var _0x4a2d69=path[_0xb8d7('0xd0')](_0x9cabf5,_0x3e159e);var _0x3f856d=util['format']('transcript-%d-%s.zip',_0x1f8873[_0xb8d7('0xb7')]['id'],_0x3e159e);var _0x11334b=path[_0xb8d7('0xd0')](_0x9cabf5,_0x3f856d);var _0x3c6f84=[];_0x3c6f84[_0xb8d7('0x37')]({'model':db[_0xb8d7('0xd5')],'as':_0xb8d7('0xd5'),'raw':!![]});var _0x1b2e24=[{'model':db['FaxMessage'],'as':_0xb8d7('0xd6'),'attributes':['id',_0xb8d7('0xbd'),'createdAt'],'include':_0x3c6f84}];return db[_0xb8d7('0x39')][_0xb8d7('0x69')]({'where':{'id':_0x1f8873[_0xb8d7('0xb7')]['id']},'include':_0x1b2e24})[_0xb8d7('0x2b')](handleEntityNotFound(_0x95dde6,null))[_0xb8d7('0x2b')](function(_0x9904b2){if(_0x9904b2&&_0x9904b2[_0xb8d7('0xd6')]){var _0xf05d6f=_0x9904b2['get']({'plain':!![]});fs[_0xb8d7('0xd7')](_0x4a2d69);for(var _0x3b992b=0x0;_0x3b992b<_0xf05d6f[_0xb8d7('0xd6')]['length'];_0x3b992b++){var _0x15e33f=_0xf05d6f[_0xb8d7('0xd6')][_0x3b992b][_0xb8d7('0xd5')];if(_0x15e33f){var _0x3dbc07=path[_0xb8d7('0xd0')](_0x51aa49,_0x15e33f[_0xb8d7('0xd8')]);if(fs[_0xb8d7('0xd9')](_0x3dbc07)){fs[_0xb8d7('0xda')](_0x3dbc07)['pipe'](fs['createWriteStream'](path[_0xb8d7('0xd0')](_0x4a2d69,_0x15e33f[_0xb8d7('0xd8')])));}}}return BPromise['resolve']()[_0xb8d7('0x2b')](function(){return new BPromise(function(_0x1b89d9,_0x126179){zipdir(_0x4a2d69,{'saveTo':_0x11334b},function(_0x4cd545,_0x370609){if(_0x4cd545)return _0x126179(_0x4cd545);return _0x1b89d9(_0x370609);});})[_0xb8d7('0x2b')](function(){return new BPromise(function(_0x212793,_0xbdab6e){rimraf(_0x4a2d69,function(_0x4efe88){if(_0x4efe88)_0xbdab6e(_0x4efe88);return _0x212793();});});})[_0xb8d7('0x2b')](function(){return _0x95dde6[_0xb8d7('0xce')](_0x11334b,_0x3f856d,function(_0x1936d6){if(_0x1936d6){console[_0xb8d7('0xdb')](_0xb8d7('0xdc'),_0x1936d6);}else{fs[_0xb8d7('0xdd')](_0x11334b);}});});});}else{return _0x95dde6[_0xb8d7('0x2d')](0xc8);}})[_0xb8d7('0xbc')](handleError(_0x95dde6,null));};