Built motion from commit (unavailable).|2.5.4
[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 _0x81fa=['transcript-%d-%s.zip','Attachment','Messages','get','mkdirSync','basename','createReadStream','pipe','err','html-pdf','eml-format','zip-dir','fast-json-patch','request-promise','moment','mustache','util','path','sox','to-csv','ejs','lodash','squel','crypto','jsforce','desk.js','ioredis','../../components/auth/service','../../components/parsers/advancedSearch','../../config/logger','../../config/utils','../../mysqldb','defaults','localhost','socket.io-emitter','redis','./faxInteraction.socket','sendStatus','status','end','json','offset','set','Content-Range','apply','update','then','destroy','error','stack','send','Users','TagIds','Tags','catch','index','map','FaxInteraction','rawAttributes','fieldName','type','key','model','name','query','keys','intersection','fields','attributes','length','hasOwnProperty','nolimit','limit','order','sort','where','filters','select','field','tools_tags','u.id','u.fullname','ui.FaxInteractionId','from','user_has_fax_interactions','users','u.id\x20=\x20ui.UserId','fax_interactions','left_join','cm_contacts','c.id\x20=\x20i.ContactId\x20AND\x20c.deletedAt\x20IS\x20NULL','o.id\x20=\x20i.UserId','fax_accounts','a.id\x20=\x20i.FaxAccountId','fax_messages','me.FaxInteractionId\x20=\x20i.id','fax_interaction_has_tags','it.FaxInteractionId\x20=\x20i.id','t.id\x20=\x20it.TagId','expr','search','parseSearch','sqlOperator','conditions','find','unreadMessages','having','`\x20=\x200','`\x20>\x200','Contact','operator','$substring','value','split','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?','ContactId','text','start','Tag','CONCAT(\x27,\x27,\x20`TagIds`,\x20\x27,\x27)\x20LIKE\x20?','union','User','CONCAT_WS(\x27\x20\x27,\x20o.name,\x20o.fullname)\x20LIKE\x20?','UserId','buildExpression','some','isEmpty','i.FaxAccountId\x20IN\x20?','parse','$lte','i.createdAt\x20BETWEEN\x20?\x20AND\x20?','null','\x20=\x20?','read','`unreadMessages`\x20=\x200','`unreadMessages`\x20>\x200','isArray','tag','forEach','filter','replace','\x27\x27\x27\x27','isNumeric','i.id\x20LIKE\x20?','i.fax\x20LIKE\x20?','CONCAT(c.firstName,\x20\x27\x20\x27,\x20c.lastName)\x20LIKE\x20?','group','Sequelize','i.id','SUM(me.read\x20=\x200\x20AND\x20me.direction\x20=\x20\x27in\x27)','t.id\x20IN\x20?','resolve','journey','i.FaxAccountId\x20IS\x20NOT\x20NULL','getFaxAccounts','i.FaxAccountId\x20IS\x20NULL','sequelize','toString','count','merge','a.key','Account.key','a.mandatoryDisposition','Account.mandatoryDisposition','i.*','c.firstName','Contact.firstName','c.lastName','Contact.lastName','c.email','c.phone','c.mobile','c.fax','Contact.fax','o.fullname','Owner.fullname','o.internal','GROUP_CONCAT(DISTINCT\x20t.id)','ui.FaxInteractionId\x20IN\x20?','FaxInteractionId','push','all','rows','params','includeAll','include','create','body','describe','FaxMessage','addMessage','ids','omit','findOne','pick','$gte','YYYY-MM-DD\x20HH:mm:ss','findAll','addTags','setTags','spread','emit','faxInteractionTags:save','removeTags','unix','join','root','server','files','attachments'];(function(_0x13eca7,_0x29b30d){var _0x1abd34=function(_0x49ec9d){while(--_0x49ec9d){_0x13eca7['push'](_0x13eca7['shift']());}};_0x1abd34(++_0x29b30d);}(_0x81fa,0xdd));var _0xa81f=function(_0xdc56ad,_0x3af055){_0xdc56ad=_0xdc56ad-0x0;var _0x52a819=_0x81fa[_0xdc56ad];return _0x52a819;};'use strict';var pdf=require(_0xa81f('0x0'));var emlformat=require(_0xa81f('0x1'));var rimraf=require('rimraf');var zipdir=require(_0xa81f('0x2'));var jsonpatch=require(_0xa81f('0x3'));var rp=require(_0xa81f('0x4'));var moment=require(_0xa81f('0x5'));var BPromise=require('bluebird');var Mustache=require(_0xa81f('0x6'));var util=require(_0xa81f('0x7'));var path=require(_0xa81f('0x8'));var sox=require(_0xa81f('0x9'));var csv=require(_0xa81f('0xa'));var ejs=require(_0xa81f('0xb'));var fs=require('fs');var _=require(_0xa81f('0xc'));var squel=require(_0xa81f('0xd'));var crypto=require(_0xa81f('0xe'));var jsforce=require(_0xa81f('0xf'));var deskjs=require(_0xa81f('0x10'));var toCsv=require(_0xa81f('0xa'));var querystring=require('querystring');var Papa=require('papaparse');var Redis=require(_0xa81f('0x11'));var authService=require(_0xa81f('0x12'));var qs=require('../../components/parsers/qs');var as=require(_0xa81f('0x13'));var hardwareService=require('../../config/license/hardware');var logger=require(_0xa81f('0x14'))('api');var utils=require(_0xa81f('0x15'));var config=require('../../config/environment');var db=require(_0xa81f('0x16'))['db'];config['redis']=_[_0xa81f('0x17')](config['redis'],{'host':_0xa81f('0x18'),'port':0x18eb});var socket=require(_0xa81f('0x19'))(new Redis(config[_0xa81f('0x1a')]));require(_0xa81f('0x1b'))['register'](socket);function respondWithStatusCode(_0x2a6b6e,_0x872de3){_0x872de3=_0x872de3||0xcc;return function(_0x3ed3d9){if(_0x3ed3d9){return _0x2a6b6e[_0xa81f('0x1c')](_0x872de3);}return _0x2a6b6e[_0xa81f('0x1d')](_0x872de3)[_0xa81f('0x1e')]();};}function respondWithResult(_0x4122c7,_0x4e41ba){_0x4e41ba=_0x4e41ba||0xc8;return function(_0x33dd9e){if(_0x33dd9e){return _0x4122c7['status'](_0x4e41ba)[_0xa81f('0x1f')](_0x33dd9e);}};}function respondWithFilteredResult(_0x25a5dd,_0x2410b3){return function(_0x27abae){if(_0x27abae){var _0x4f7a03=_0x27abae['count'],_0x24471f=_0x2410b3['offset'],_0x17e3d7=_0x2410b3[_0xa81f('0x20')]+_0x2410b3['limit'],_0x572fb5;if(_0x17e3d7>=_0x4f7a03){_0x17e3d7=_0x4f7a03;_0x572fb5=0xc8;}else{_0x572fb5=0xce;}_0x25a5dd[_0xa81f('0x1d')](_0x572fb5);return _0x25a5dd[_0xa81f('0x21')](_0xa81f('0x22'),_0x24471f+'-'+_0x17e3d7+'/'+_0x4f7a03)[_0xa81f('0x1f')](_0x27abae);}return null;};}function patchUpdates(_0xd4c3ea){return function(_0x29fc08){try{jsonpatch[_0xa81f('0x23')](_0x29fc08,_0xd4c3ea,!![]);}catch(_0x5e21ad){return BPromise['reject'](_0x5e21ad);}return _0x29fc08['save']();};}function saveUpdates(_0x16dac4,_0x582cca){return function(_0x47db1e){if(_0x47db1e){return _0x47db1e[_0xa81f('0x24')](_0x16dac4)[_0xa81f('0x25')](function(_0x566995){return _0x566995;});}return null;};}function removeEntity(_0x56a8f6,_0x4190db){return function(_0x1acf9a){if(_0x1acf9a){return _0x1acf9a[_0xa81f('0x26')]()[_0xa81f('0x25')](function(){_0x56a8f6[_0xa81f('0x1d')](0xcc)['end']();});}};}function handleEntityNotFound(_0x12e401,_0x292f28){return function(_0x3abab6){if(!_0x3abab6){_0x12e401[_0xa81f('0x1c')](0x194);}return _0x3abab6;};}function handleError(_0x3a0cb7,_0x69309d){_0x69309d=_0x69309d||0x1f4;return function(_0x1099a8){logger[_0xa81f('0x27')](_0x1099a8[_0xa81f('0x28')]);if(_0x1099a8['name']){delete _0x1099a8['name'];}_0x3a0cb7[_0xa81f('0x1d')](_0x69309d)[_0xa81f('0x29')](_0x1099a8);};}function getInteractionUsers(_0x49bb33,_0x4fd979){return new BPromise(function(_0x206c5c,_0x1dc15f){try{if(_0x4fd979[_0x49bb33['id']]){_0x49bb33[_0xa81f('0x2a')]=_['map'](_0x4fd979[_0x49bb33['id']],function(_0x4af247){return{'id':_0x4af247['id'],'fullname':_0x4af247['fullname']};});}}catch(_0x43c570){_0x1dc15f(_0x43c570);}_0x206c5c(_0x49bb33);});}function getInteractionTags(_0x48d06a,_0x25727b){return new BPromise(function(_0xee4866,_0x209b0d){try{if(_0x48d06a[_0xa81f('0x2b')]){_0x48d06a[_0xa81f('0x2c')]=[];_0x48d06a[_0xa81f('0x2b')]['split'](',')['forEach'](function(_0x10267e){_0x48d06a[_0xa81f('0x2c')]['push'](_0x25727b[_0x10267e]);});}delete _0x48d06a[_0xa81f('0x2b')];}catch(_0x566b3c){_0x209b0d(_0x566b3c);}_0xee4866(_0x48d06a);});}function updateFaxInteraction(_0x437337,_0x224021,_0x3a2725){return new BPromise(function(_0x2e846d,_0x40106a){return getInteractionUsers(_0x437337,_0x3a2725)[_0xa81f('0x25')](function(_0x11a871){return getInteractionTags(_0x11a871,_0x224021);})[_0xa81f('0x25')](function(_0x1906a0){_0x2e846d(_0x1906a0);})[_0xa81f('0x2d')](function(_0x535777){_0x40106a(_0x535777);});});}exports[_0xa81f('0x2e')]=function(_0x15eac0,_0x382146){var _0x1bc01f={},_0x17e5ec={},_0x4fdb8b={'count':0x0,'rows':[]};var _0x2d5db6=_[_0xa81f('0x2f')](db[_0xa81f('0x30')][_0xa81f('0x31')],function(_0x49c16c){return{'name':_0x49c16c[_0xa81f('0x32')],'type':_0x49c16c[_0xa81f('0x33')][_0xa81f('0x34')]};});_0x17e5ec[_0xa81f('0x35')]=_['map'](_0x2d5db6,_0xa81f('0x36'));_0x17e5ec[_0xa81f('0x37')]=_[_0xa81f('0x38')](_0x15eac0[_0xa81f('0x37')]);_0x17e5ec['filters']=_[_0xa81f('0x39')](_0x17e5ec['model'],_0x17e5ec[_0xa81f('0x37')]);_0x1bc01f['attributes']=_[_0xa81f('0x39')](_0x17e5ec[_0xa81f('0x35')],qs[_0xa81f('0x3a')](_0x15eac0['query'][_0xa81f('0x3a')]));_0x1bc01f['attributes']=_0x1bc01f[_0xa81f('0x3b')][_0xa81f('0x3c')]?_0x1bc01f['attributes']:_0x17e5ec[_0xa81f('0x35')];if(!_0x15eac0[_0xa81f('0x37')][_0xa81f('0x3d')](_0xa81f('0x3e'))){_0x1bc01f[_0xa81f('0x3f')]=qs[_0xa81f('0x3f')](_0x15eac0[_0xa81f('0x37')][_0xa81f('0x3f')]);_0x1bc01f[_0xa81f('0x20')]=qs[_0xa81f('0x20')](_0x15eac0[_0xa81f('0x37')][_0xa81f('0x20')]);}_0x1bc01f[_0xa81f('0x40')]=qs['sort'](_0x15eac0[_0xa81f('0x37')][_0xa81f('0x41')]);_0x1bc01f[_0xa81f('0x42')]=qs[_0xa81f('0x43')](_['pick'](_0x15eac0[_0xa81f('0x37')],_0x17e5ec[_0xa81f('0x43')]),_0x2d5db6);var _0x38f8f1=[];var _0x279c1f=squel[_0xa81f('0x44')]()['field']('id')[_0xa81f('0x45')]('name')[_0xa81f('0x45')]('color')['from'](_0xa81f('0x46'));var _0x564052=squel[_0xa81f('0x44')]()[_0xa81f('0x45')](_0xa81f('0x47'))[_0xa81f('0x45')](_0xa81f('0x48'))[_0xa81f('0x45')](_0xa81f('0x49'))[_0xa81f('0x4a')](_0xa81f('0x4b'),'ui')['left_join'](_0xa81f('0x4c'),'u',_0xa81f('0x4d'));var _0x1e0683=squel['select']()[_0xa81f('0x4a')](_0xa81f('0x4e'),'i')[_0xa81f('0x4f')](_0xa81f('0x50'),'c',_0xa81f('0x51'))[_0xa81f('0x4f')](_0xa81f('0x4c'),'o',_0xa81f('0x52'))[_0xa81f('0x4f')](_0xa81f('0x53'),'a',_0xa81f('0x54'))[_0xa81f('0x4f')](_0xa81f('0x55'),'me',_0xa81f('0x56'))[_0xa81f('0x4f')](_0xa81f('0x57'),'it',_0xa81f('0x58'))[_0xa81f('0x4f')](_0xa81f('0x46'),'t',_0xa81f('0x59'));var _0x4865c8=squel[_0xa81f('0x5a')]();var _0x1d97e3=[];var _0x507454=squel['expr']();var _0x10499a;if(_0x15eac0[_0xa81f('0x37')][_0xa81f('0x5b')]){_0x10499a=as[_0xa81f('0x5c')](_0x15eac0[_0xa81f('0x37')][_0xa81f('0x5b')]);var _0x374d09=_0x10499a[_0xa81f('0x5d')];for(var _0x4a5aaa=0x0;_0x4a5aaa<_0x10499a[_0xa81f('0x5e')][_0xa81f('0x3c')];_0x4a5aaa++){var _0x59a7c3=_0x10499a[_0xa81f('0x5e')][_0x4a5aaa];var _0x58b842='i';var _0x234ee3=_[_0xa81f('0x5f')](_0x2d5db6,[_0xa81f('0x36'),_0x59a7c3['field']]);if(!_0x234ee3){switch(_0x59a7c3[_0xa81f('0x45')]){case _0xa81f('0x60'):if(_0x59a7c3['value']==0x1){_0x1e0683[_0xa81f('0x61')]('`'+_0x59a7c3[_0xa81f('0x45')]+_0xa81f('0x62'));}else{_0x1e0683[_0xa81f('0x61')]('`'+_0x59a7c3['field']+_0xa81f('0x63'));}break;case _0xa81f('0x64'):if(_0x59a7c3[_0xa81f('0x65')]===_0xa81f('0x66')){if(_0x59a7c3[_0xa81f('0x67')][_0xa81f('0x68')]('\x20')[_0xa81f('0x3c')]>0x1){_0x4865c8[_0x374d09](_0xa81f('0x69'),qs[_0xa81f('0x6a')](_0x59a7c3[_0xa81f('0x67')]),null);}else{var _0x548bd9='%'+_0x59a7c3[_0xa81f('0x67')]+'%';_0x4865c8[_0x374d09](_0xa81f('0x6b'),_0x548bd9,_0x548bd9,_0x548bd9);}}else{_0x234ee3=_[_0xa81f('0x5f')](_0x2d5db6,[_0xa81f('0x36'),'ContactId']);_0x59a7c3[_0xa81f('0x45')]=_0xa81f('0x6c');_0x59a3a3=as['buildExpression'](_0x58b842,_0x234ee3[_0xa81f('0x33')],_0x59a7c3);_0x4865c8[_0x374d09](_0x59a3a3[_0xa81f('0x6d')],_0x59a3a3[_0xa81f('0x67')][_0xa81f('0x6e')],_0x59a3a3[_0xa81f('0x67')][_0xa81f('0x1e')]);}break;case _0xa81f('0x6f'):var _0xfc7eec=_0x59a7c3[_0xa81f('0x67')][_0xa81f('0x68')](',')[_0xa81f('0x2f')](function(_0x17c0c7){return Number(_0x17c0c7);});_0xfc7eec['forEach'](function(_0x52cd68){_0x507454['or'](_0xa81f('0x70'),'%,'+_0x52cd68+',%');});_0x1d97e3=_[_0xa81f('0x71')](_0x1d97e3,_0xfc7eec);break;case _0xa81f('0x72'):if(_0x59a7c3[_0xa81f('0x65')]===_0xa81f('0x66')){_0x4865c8[_0x374d09](_0xa81f('0x73'),'%'+_0x59a7c3[_0xa81f('0x67')]+'%',null);}else{_0x234ee3=_[_0xa81f('0x5f')](_0x2d5db6,[_0xa81f('0x36'),_0xa81f('0x74')]);_0x59a7c3['field']='UserId';_0x59a3a3=as[_0xa81f('0x75')](_0x58b842,_0x234ee3['type'],_0x59a7c3);_0x4865c8[_0x374d09](_0x59a3a3[_0xa81f('0x6d')],_0x59a3a3[_0xa81f('0x67')][_0xa81f('0x6e')],_0x59a3a3[_0xa81f('0x67')]['end']);}break;case'body':_0x59a3a3=as[_0xa81f('0x75')]('me',null,_0x59a7c3);_0x4865c8[_0x374d09](_0x59a3a3[_0xa81f('0x6d')],_0x59a3a3[_0xa81f('0x67')]['start'],_0x59a3a3['value'][_0xa81f('0x1e')]);break;}}else{var _0x59a3a3=as[_0xa81f('0x75')](_0x58b842,_0x234ee3[_0xa81f('0x33')],_0x59a7c3);_0x4865c8[_0x374d09](_0x59a3a3['text'],_0x59a3a3[_0xa81f('0x67')][_0xa81f('0x6e')],_0x59a3a3[_0xa81f('0x67')][_0xa81f('0x1e')]);}}}else{var _0x52a2c4=_(_0x15eac0[_0xa81f('0x37')])[_0xa81f('0x38')]()[_0xa81f('0x2f')](function(_0x120d57){return _[_0xa81f('0x76')](_0x2d5db6,[_0xa81f('0x36'),_0x120d57])?_0x120d57:undefined;})['compact']()['value']();if(!_[_0xa81f('0x77')](_0x52a2c4)){_0x52a2c4['forEach'](function(_0x1cff3f){if(_0x1cff3f==='FaxAccountId'){_0x1e0683[_0xa81f('0x42')](_0xa81f('0x78'),[]['concat'](_0x15eac0[_0xa81f('0x37')][_0x1cff3f]));}else if(_0x1cff3f==='createdAt'){var _0xce3dad=JSON[_0xa81f('0x79')](_0x15eac0[_0xa81f('0x37')][_0x1cff3f])['$gte'];var _0x9cd428=JSON['parse'](_0x15eac0[_0xa81f('0x37')][_0x1cff3f])[_0xa81f('0x7a')];_0x1e0683[_0xa81f('0x42')](_0xa81f('0x7b'),_0xce3dad,_0x9cd428);}else{if(_0x15eac0['query'][_0x1cff3f]===_0xa81f('0x7c')){_0x1e0683[_0xa81f('0x42')]('i.'+_0x1cff3f+'\x20IS\x20NULL');}else{_0x1e0683['where']('i.'+_0x1cff3f+_0xa81f('0x7d'),_0x15eac0[_0xa81f('0x37')][_0x1cff3f]);}}});}if(_0x15eac0[_0xa81f('0x37')][_0xa81f('0x7e')]){if(_0x15eac0[_0xa81f('0x37')][_0xa81f('0x7e')]==0x1){_0x1e0683[_0xa81f('0x61')](_0xa81f('0x7f'));}else{_0x1e0683[_0xa81f('0x61')](_0xa81f('0x80'));}}if(_0x15eac0['query']['tag']){_0x1d97e3=_[_0xa81f('0x81')](_0x15eac0[_0xa81f('0x37')][_0xa81f('0x82')])?_0x15eac0[_0xa81f('0x37')][_0xa81f('0x82')]:new Array(_0x15eac0['query'][_0xa81f('0x82')]);_0x1d97e3[_0xa81f('0x83')](function(_0x24b105){_0x507454['or'](_0xa81f('0x70'),'%,'+_0x24b105+',%');});}if(_0x15eac0[_0xa81f('0x37')][_0xa81f('0x84')]){var _0x4a691c=_0x15eac0[_0xa81f('0x37')][_0xa81f('0x84')][_0xa81f('0x85')]('\x5c','\x5c\x5c')[_0xa81f('0x85')]('\x27\x27',_0xa81f('0x86'));if(qs[_0xa81f('0x87')](_0x4a691c)){_0x4865c8['or'](_0xa81f('0x88'),_0x4a691c+'%')['or'](_0xa81f('0x89'),_0x4a691c+'%');}_0x4865c8['or'](_0xa81f('0x8a'),_0x4a691c+'%');}}_0x1e0683[_0xa81f('0x42')](_0x4865c8);_0x1e0683[_0xa81f('0x8b')]('i.id');var _0x212d6c={'type':db[_0xa81f('0x8c')]['QueryTypes']['SELECT'],'raw':!![]};var _0x410911=_0x1e0683['clone']();_0x410911[_0xa81f('0x45')](_0xa81f('0x8d'));_0x410911[_0xa81f('0x45')](_0xa81f('0x8e'),_0xa81f('0x60'));if(_0x1bc01f[_0xa81f('0x40')]){_0x1bc01f[_0xa81f('0x40')][_0xa81f('0x83')](function(_0x369042){_0x1e0683[_0xa81f('0x40')]('i.'+_0x369042[0x0],_0x369042[0x1]==='DESC'?![]:!![]);});}if(!_[_0xa81f('0x77')](_0x1d97e3)){_0x1e0683[_0xa81f('0x61')](_0x507454);_0x410911[_0xa81f('0x42')](_0xa81f('0x8f'),_0x1d97e3);}BPromise[_0xa81f('0x90')]()[_0xa81f('0x25')](function(){if(!_0x10499a){if(_0x15eac0[_0xa81f('0x37')]['FaxAccountId']||_0x15eac0[_0xa81f('0x37')][_0xa81f('0x91')])return;_0x410911[_0xa81f('0x42')]('i.FaxAccountId\x20IS\x20NOT\x20NULL');_0x1e0683[_0xa81f('0x42')](_0xa81f('0x92'));return;}return _0x15eac0['user'][_0xa81f('0x93')]({'attributes':['id'],'raw':!![]})[_0xa81f('0x25')](function(_0x475d5b){if(_[_0xa81f('0x77')](_0x475d5b)){_0x410911[_0xa81f('0x42')](_0xa81f('0x94'));_0x1e0683[_0xa81f('0x42')](_0xa81f('0x94'));}else{_0x410911[_0xa81f('0x42')]('i.FaxAccountId\x20IN\x20?',_[_0xa81f('0x2f')](_0x475d5b,'id'));_0x1e0683[_0xa81f('0x42')](_0xa81f('0x78'),_[_0xa81f('0x2f')](_0x475d5b,'id'));}});})[_0xa81f('0x25')](function(){db[_0xa81f('0x95')]['query'](_0x410911[_0xa81f('0x96')](),_0x212d6c)[_0xa81f('0x25')](function(_0x2549b7){_0x4fdb8b[_0xa81f('0x97')]=_0x2549b7[_0xa81f('0x3c')];if(_0x4fdb8b[_0xa81f('0x97')]===0x0)return[];return db[_0xa81f('0x95')][_0xa81f('0x37')](_0x279c1f[_0xa81f('0x96')](),_0x212d6c)[_0xa81f('0x25')](function(_0x5201bf){_0x38f8f1=_['keyBy'](_0x5201bf,'id');_0x212d6c=_[_0xa81f('0x98')](_0x212d6c,{'model':db[_0xa81f('0x30')],'mapToModel':!![],'raw':!![],'nest':!![]});if(_0x15eac0[_0xa81f('0x37')][_0xa81f('0x3a')]){_0x1bc01f['attributes'][_0xa81f('0x83')](function(_0x2c2423){_0x1e0683[_0xa81f('0x45')]('i.'+_0x2c2423);});}else{_0x1e0683[_0xa81f('0x45')](_0xa81f('0x8e'),'unreadMessages');_0x1e0683[_0xa81f('0x45')](_0xa81f('0x99'),_0xa81f('0x9a'));_0x1e0683[_0xa81f('0x45')](_0xa81f('0x9b'),_0xa81f('0x9c'));_0x1e0683[_0xa81f('0x45')](_0xa81f('0x9d'));_0x1e0683[_0xa81f('0x45')](_0xa81f('0x9e'),_0xa81f('0x9f'));_0x1e0683[_0xa81f('0x45')](_0xa81f('0xa0'),_0xa81f('0xa1'));_0x1e0683[_0xa81f('0x45')](_0xa81f('0xa2'),'Contact.email');_0x1e0683['field'](_0xa81f('0xa3'),'Contact.phone');_0x1e0683[_0xa81f('0x45')](_0xa81f('0xa4'),'Contact.mobile');_0x1e0683[_0xa81f('0x45')](_0xa81f('0xa5'),_0xa81f('0xa6'));_0x1e0683['field'](_0xa81f('0xa7'),_0xa81f('0xa8'));_0x1e0683[_0xa81f('0x45')](_0xa81f('0xa9'),'Owner.internal');_0x1e0683[_0xa81f('0x45')](_0xa81f('0xaa'),_0xa81f('0x2b'));}if(_0x1bc01f['limit'])_0x1e0683[_0xa81f('0x3f')](_0x1bc01f[_0xa81f('0x3f')]);if(_0x1bc01f[_0xa81f('0x20')])_0x1e0683['offset'](_0x1bc01f[_0xa81f('0x20')]);return db['sequelize'][_0xa81f('0x37')](_0x1e0683[_0xa81f('0x96')](),_0x212d6c);})[_0xa81f('0x25')](function(_0x6ccd87){_0x564052[_0xa81f('0x42')](_0xa81f('0xab'),_[_0xa81f('0x2f')](_0x6ccd87,'id'));return db[_0xa81f('0x95')][_0xa81f('0x37')](_0x564052[_0xa81f('0x96')](),_0x212d6c)[_0xa81f('0x25')](function(_0x19067b){var _0x5449da=_['groupBy'](_0x19067b,_0xa81f('0xac'));var _0x173808=[];_0x6ccd87[_0xa81f('0x83')](function(_0x1d50f9){_0x173808[_0xa81f('0xad')](updateFaxInteraction(_0x1d50f9,_0x38f8f1,_0x5449da));});return BPromise[_0xa81f('0xae')](_0x173808);});});})[_0xa81f('0x25')](function(_0x28bbe7){_0x4fdb8b[_0xa81f('0xaf')]=_0x28bbe7;return _0x4fdb8b;})[_0xa81f('0x25')](respondWithFilteredResult(_0x382146,_0x1bc01f));})[_0xa81f('0x2d')](handleError(_0x382146,null));};exports['show']=function(_0x1430a3,_0x540b39){var _0x1813fe={'raw':![],'where':{'id':_0x1430a3[_0xa81f('0xb0')]['id']}},_0x5dfd89={};_0x5dfd89[_0xa81f('0x35')]=_[_0xa81f('0x38')](db[_0xa81f('0x30')][_0xa81f('0x31')]);_0x5dfd89['query']=_[_0xa81f('0x38')](_0x1430a3[_0xa81f('0x37')]);_0x5dfd89['filters']=_[_0xa81f('0x39')](_0x5dfd89[_0xa81f('0x35')],_0x5dfd89[_0xa81f('0x37')]);_0x1813fe[_0xa81f('0x3b')]=_['intersection'](_0x5dfd89[_0xa81f('0x35')],qs[_0xa81f('0x3a')](_0x1430a3[_0xa81f('0x37')][_0xa81f('0x3a')]));_0x1813fe['attributes']=_0x1813fe[_0xa81f('0x3b')][_0xa81f('0x3c')]?_0x1813fe[_0xa81f('0x3b')]:_0x5dfd89[_0xa81f('0x35')];if(_0x1430a3[_0xa81f('0x37')][_0xa81f('0xb1')]){_0x1813fe[_0xa81f('0xb2')]=[{'all':!![]}];}_0x1813fe=_['merge']({},_0x1813fe,_0x1430a3['options']);return db[_0xa81f('0x30')][_0xa81f('0x5f')](_0x1813fe)[_0xa81f('0x25')](handleEntityNotFound(_0x540b39,null))[_0xa81f('0x25')](respondWithResult(_0x540b39,null))['catch'](handleError(_0x540b39,null));};exports['create']=function(_0x578804,_0x41ca62){return db['FaxInteraction'][_0xa81f('0xb3')](_0x578804[_0xa81f('0xb4')],{})['then'](respondWithResult(_0x41ca62,0xc9))[_0xa81f('0x2d')](handleError(_0x41ca62,null));};exports[_0xa81f('0x24')]=function(_0x4e6ff1,_0xe2289){if(_0x4e6ff1[_0xa81f('0xb4')]['id']){delete _0x4e6ff1['body']['id'];}return db['FaxInteraction'][_0xa81f('0x5f')]({'where':{'id':_0x4e6ff1[_0xa81f('0xb0')]['id']}})[_0xa81f('0x25')](handleEntityNotFound(_0xe2289,null))[_0xa81f('0x25')](saveUpdates(_0x4e6ff1[_0xa81f('0xb4')],null))['then'](respondWithResult(_0xe2289,null))[_0xa81f('0x2d')](handleError(_0xe2289,null));};exports[_0xa81f('0x26')]=function(_0x3a44dc,_0x247997){return db[_0xa81f('0x30')][_0xa81f('0x5f')]({'where':{'id':_0x3a44dc[_0xa81f('0xb0')]['id']}})[_0xa81f('0x25')](handleEntityNotFound(_0x247997,null))[_0xa81f('0x25')](removeEntity(_0x247997,null))[_0xa81f('0x2d')](handleError(_0x247997,null));};exports[_0xa81f('0xb5')]=function(_0x244fad,_0x18a6b6){return db['FaxInteraction'][_0xa81f('0xb5')]()[_0xa81f('0x25')](respondWithResult(_0x18a6b6,null))[_0xa81f('0x2d')](handleError(_0x18a6b6,null));};exports['addMessage']=function(_0x22a76c,_0x585622,_0x196fbf){return db[_0xa81f('0xb6')][_0xa81f('0x5f')]({'where':{'id':_0x22a76c[_0xa81f('0xb0')]['id']}})[_0xa81f('0x25')](handleEntityNotFound(_0x585622,null))['then'](function(_0x5a5b38){if(_0x5a5b38){return _0x5a5b38[_0xa81f('0xb7')](_0x22a76c['body'][_0xa81f('0xb8')],_[_0xa81f('0xb9')](_0x22a76c['body'],['ids','id'])||{});}})[_0xa81f('0x25')](respondWithResult(_0x585622,null))[_0xa81f('0x2d')](handleError(_0x585622,null));};exports['getMessages']=function(_0x1960b9,_0x2a1498,_0x293a75){var _0x3a303a={'raw':![],'where':{}};var _0x425334={};var _0x4bea09={'count':0x0,'rows':[]};return db['FaxInteraction'][_0xa81f('0xba')]({'where':{'id':_0x1960b9[_0xa81f('0xb0')]['id']}})[_0xa81f('0x25')](handleEntityNotFound(_0x2a1498,null))[_0xa81f('0x25')](function(_0x2a73ea){if(_0x2a73ea){_0x425334[_0xa81f('0x35')]=_['keys'](db['FaxMessage'][_0xa81f('0x31')]);_0x425334[_0xa81f('0x37')]=_['keys'](_0x1960b9[_0xa81f('0x37')]);_0x425334['filters']=_[_0xa81f('0x39')](_0x425334['model'],_0x425334[_0xa81f('0x37')]);_0x3a303a[_0xa81f('0x3b')]=_[_0xa81f('0x39')](_0x425334[_0xa81f('0x35')],qs[_0xa81f('0x3a')](_0x1960b9[_0xa81f('0x37')][_0xa81f('0x3a')]));_0x3a303a[_0xa81f('0x3b')]=_0x3a303a[_0xa81f('0x3b')][_0xa81f('0x3c')]?_0x3a303a[_0xa81f('0x3b')]:_0x425334['model'];if(!_0x1960b9[_0xa81f('0x37')][_0xa81f('0x3d')]('nolimit')){_0x3a303a[_0xa81f('0x3f')]=qs[_0xa81f('0x3f')](_0x1960b9['query'][_0xa81f('0x3f')]);_0x3a303a['offset']=qs[_0xa81f('0x20')](_0x1960b9['query']['offset']);}_0x3a303a[_0xa81f('0x40')]=qs['sort'](_0x1960b9[_0xa81f('0x37')][_0xa81f('0x41')]);_0x3a303a[_0xa81f('0x42')]=qs['filters'](_[_0xa81f('0xbb')](_0x1960b9['query'],_0x425334['filters']));_0x3a303a[_0xa81f('0x42')][_0xa81f('0xac')]=_0x2a73ea['id'];if(_0x1960b9[_0xa81f('0x37')][_0xa81f('0x84')]){_0x3a303a[_0xa81f('0x42')]=_[_0xa81f('0x98')](_0x3a303a['where'],{'$or':_['map'](_0x3a303a[_0xa81f('0x3b')],function(_0x3f8957){var _0x1dc00e={};_0x1dc00e[_0x3f8957]={'$like':'%'+_0x1960b9[_0xa81f('0x37')]['filter']+'%'};return _0x1dc00e;})});}if(_0x1960b9[_0xa81f('0x37')][_0xa81f('0xbc')]){var _0x5efb77=_0x1960b9[_0xa81f('0x37')]['$gte'][_0xa81f('0x68')](',');var _0xe8a574={};_0xe8a574[_0x5efb77[0x0]]={'$gte':moment(_0x5efb77[0x1])['format'](_0xa81f('0xbd'))};_0x3a303a[_0xa81f('0x42')]=_[_0xa81f('0x98')](_0x3a303a['where'],_0xe8a574);}_0x3a303a=_[_0xa81f('0x98')]({},_0x3a303a,_0x1960b9['options']);return db[_0xa81f('0xb6')]['count']({'where':_0x3a303a[_0xa81f('0x42')]})['then'](function(_0xfdbe4a){_0x4bea09[_0xa81f('0x97')]=_0xfdbe4a;if(_0x1960b9[_0xa81f('0x37')][_0xa81f('0xb1')]){_0x3a303a[_0xa81f('0xb2')]=[{'all':!![]}];}return db[_0xa81f('0xb6')][_0xa81f('0xbe')](_0x3a303a);})['then'](function(_0xe33037){_0x4bea09['rows']=_0xe33037;return _0x4bea09;});}})[_0xa81f('0x25')](respondWithFilteredResult(_0x2a1498,_0x3a303a))['catch'](handleError(_0x2a1498,null));};exports[_0xa81f('0xbf')]=function(_0x34f561,_0x4caef0,_0x3da114){return db[_0xa81f('0x30')][_0xa81f('0x5f')]({'where':{'id':_0x34f561['params']['id']}})['then'](handleEntityNotFound(_0x4caef0,null))[_0xa81f('0x25')](function(_0x5270ef){if(_0x5270ef){return _0x5270ef[_0xa81f('0xc0')](_0x34f561['body'][_0xa81f('0xb8')],_[_0xa81f('0xb9')](_0x34f561[_0xa81f('0xb4')],[_0xa81f('0xb8'),'id'])||{})[_0xa81f('0xc1')](function(){return db[_0xa81f('0x6f')][_0xa81f('0xbe')]({'attributes':['id','name','color'],'where':{'id':_0x34f561[_0xa81f('0xb4')][_0xa81f('0xb8')]}});})[_0xa81f('0x25')](function(_0x36c583){socket[_0xa81f('0xc2')](_0xa81f('0xc3'),{'id':Number(_0x34f561[_0xa81f('0xb0')]['id']),'tags':_0x36c583||[]});return{'id':Number(_0x34f561[_0xa81f('0xb0')]['id']),'tags':_0x36c583||[]};});}})[_0xa81f('0x25')](respondWithResult(_0x4caef0,null))['catch'](handleError(_0x4caef0,null));};exports[_0xa81f('0xc4')]=function(_0x3d677a,_0x4be62c,_0xe7f530){return db[_0xa81f('0x30')][_0xa81f('0x5f')]({'where':{'id':_0x3d677a[_0xa81f('0xb0')]['id']}})[_0xa81f('0x25')](handleEntityNotFound(_0x4be62c,null))[_0xa81f('0x25')](function(_0x2ac78c){if(_0x2ac78c){return _0x2ac78c[_0xa81f('0xc4')](_0x3d677a[_0xa81f('0x37')][_0xa81f('0xb8')]);}})[_0xa81f('0x25')](respondWithStatusCode(_0x4be62c,null))[_0xa81f('0x2d')](handleError(_0x4be62c,null));};exports['download']=function(_0x8b46e9,_0x581510){var _0x23dabe=moment()[_0xa81f('0xc5')]()[_0xa81f('0x96')]();var _0x34e3b5=path[_0xa81f('0xc6')](config[_0xa81f('0xc7')],_0xa81f('0xc8'),'files','tmp');var _0x5565ec=path[_0xa81f('0xc6')](config['root'],_0xa81f('0xc8'),_0xa81f('0xc9'),_0xa81f('0xca'));var _0x2db12f=path[_0xa81f('0xc6')](_0x34e3b5,_0x23dabe);var _0xe1d32c=util['format'](_0xa81f('0xcb'),_0x8b46e9[_0xa81f('0xb0')]['id'],_0x23dabe);var _0xd4bbc6=path['join'](_0x34e3b5,_0xe1d32c);var _0x10386e=[];_0x10386e[_0xa81f('0xad')]({'model':db[_0xa81f('0xcc')],'as':_0xa81f('0xcc'),'raw':!![]});var _0x1ea93f=[{'model':db['FaxMessage'],'as':_0xa81f('0xcd'),'attributes':['id',_0xa81f('0xb4'),'createdAt'],'include':_0x10386e}];return db[_0xa81f('0x30')][_0xa81f('0x5f')]({'where':{'id':_0x8b46e9[_0xa81f('0xb0')]['id']},'include':_0x1ea93f})['then'](handleEntityNotFound(_0x581510,null))[_0xa81f('0x25')](function(_0x17ddbb){if(_0x17ddbb&&_0x17ddbb[_0xa81f('0xcd')]){var _0x218279=_0x17ddbb[_0xa81f('0xce')]({'plain':!![]});fs[_0xa81f('0xcf')](_0x2db12f);for(var _0x3acc46=0x0;_0x3acc46<_0x218279[_0xa81f('0xcd')][_0xa81f('0x3c')];_0x3acc46++){var _0x312619=_0x218279[_0xa81f('0xcd')][_0x3acc46][_0xa81f('0xcc')];if(_0x312619){var _0x20b8d6=path[_0xa81f('0xc6')](_0x5565ec,_0x312619[_0xa81f('0xd0')]);if(fs['existsSync'](_0x20b8d6)){fs[_0xa81f('0xd1')](_0x20b8d6)[_0xa81f('0xd2')](fs['createWriteStream'](path[_0xa81f('0xc6')](_0x2db12f,_0x312619[_0xa81f('0xd0')])));}}}return BPromise[_0xa81f('0x90')]()[_0xa81f('0x25')](function(){return new BPromise(function(_0x4d632d,_0x471ee0){zipdir(_0x2db12f,{'saveTo':_0xd4bbc6},function(_0x2d0449,_0xd9c27f){if(_0x2d0449)return _0x471ee0(_0x2d0449);return _0x4d632d(_0xd9c27f);});})['then'](function(){return new BPromise(function(_0x2664bc,_0x5a4be9){rimraf(_0x2db12f,function(_0x37e5a0){if(_0x37e5a0)_0x5a4be9(_0x37e5a0);return _0x2664bc();});});})[_0xa81f('0x25')](function(){return _0x581510['download'](_0xd4bbc6,_0xe1d32c,function(_0x1b7414){if(_0x1b7414){console['log'](_0xa81f('0xd3'),_0x1b7414);}else{fs['unlinkSync'](_0xd4bbc6);}});});});}else{return _0x581510[_0xa81f('0x1c')](0xc8);}})['catch'](handleError(_0x581510,null));};