Built motion from commit 9d1906d1.|2.5.40
[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 _0x8963=['Messages','mkdirSync','basename','existsSync','createReadStream','pipe','download','log','err','zip-dir','fast-json-patch','request-promise','bluebird','mustache','util','path','sox','to-csv','ejs','fs-extra','lodash','squel','crypto','jsforce','desk.js','querystring','ioredis','../../components/auth/service','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','../../config/utils','../../config/environment','defaults','redis','socket.io-emitter','./faxInteraction.socket','register','sendStatus','status','end','offset','undefined','limit','count','Content-Range','json','reject','save','update','then','destroy','error','stack','name','send','Users','map','fullname','Tags','split','forEach','push','TagIds','catch','waiting','talking','answered','unmanaged','UserId','closed','total','index','FaxInteraction','rawAttributes','fieldName','type','key','model','keys','query','filters','intersection','attributes','fields','length','hasOwnProperty','nolimit','where','pick','select','field','color','u.id','u.fullname','ui.FaxInteractionId','from','user_has_fax_interactions','users','u.id\x20=\x20ui.UserId','fax_interactions','left_join','a.id\x20=\x20i.FaxAccountId','fax_messages','me.FaxInteractionId\x20=\x20i.id','fax_interaction_has_tags','it.FaxInteractionId\x20=\x20i.id','tools_tags','expr','search','parseSearch','sqlOperator','conditions','unreadMessages','value','having','`\x20=\x200','`\x20>\x200','operator','$substring','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','Tag','union','User','body','compact','isEmpty','FaxAccountId','i.FaxAccountId\x20IN\x20?','concat','createdAt','parse','$lte','null','read','`unreadMessages`\x20=\x200','`unreadMessages`\x20>\x200','tag','isArray','CONCAT(\x27,\x27,\x20`TagIds`,\x20\x27,\x27)\x20LIKE\x20?','filter','replace','i.fax\x20LIKE\x20?','group','i.id','Sequelize','QueryTypes','SELECT','clone','SUM(me.read\x20=\x200\x20AND\x20me.direction\x20=\x20\x27in\x27)','order','DESC','t.id\x20IN\x20?','resolve','i.FaxAccountId\x20IS\x20NOT\x20NULL','user','role','getFaxAccounts','i.FaxAccountId\x20IS\x20NULL','agent','sequelize','toString','keyBy','merge','a.key','Account.key','a.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','c.email','Contact.email','c.phone','Contact.phone','Contact.mobile','c.fax','Owner.fullname','o.internal','Owner.internal','GROUP_CONCAT(DISTINCT\x20t.id)','ui.FaxInteractionId\x20IN\x20?','groupBy','all','rows','show','include','options','create','params','describe','addMessage','FaxMessage','ids','omit','getMessages','findOne','sort','FaxInteractionId','$gte','format','YYYY-MM-DD\x20HH:mm:ss','includeAll','findAll','addTags','setTags','spread','emit','faxInteractionTags:save','removeTags','unix','join','root','server','files','attachments','Attachment'];(function(_0x38b587,_0xa25c46){var _0x2132a2=function(_0xd87062){while(--_0xd87062){_0x38b587['push'](_0x38b587['shift']());}};_0x2132a2(++_0xa25c46);}(_0x8963,0x1cd));var _0x3896=function(_0x19c3c1,_0x466810){_0x19c3c1=_0x19c3c1-0x0;var _0x5b85e7=_0x8963[_0x19c3c1];return _0x5b85e7;};'use strict';var emlformat=require('eml-format');var rimraf=require('rimraf');var zipdir=require(_0x3896('0x0'));var jsonpatch=require(_0x3896('0x1'));var rp=require(_0x3896('0x2'));var moment=require('moment');var BPromise=require(_0x3896('0x3'));var Mustache=require(_0x3896('0x4'));var util=require(_0x3896('0x5'));var path=require(_0x3896('0x6'));var sox=require(_0x3896('0x7'));var csv=require(_0x3896('0x8'));var ejs=require(_0x3896('0x9'));var fs=require('fs');var fs_extra=require(_0x3896('0xa'));var _=require(_0x3896('0xb'));var squel=require(_0x3896('0xc'));var crypto=require(_0x3896('0xd'));var jsforce=require(_0x3896('0xe'));var deskjs=require(_0x3896('0xf'));var toCsv=require(_0x3896('0x8'));var querystring=require(_0x3896('0x10'));var Papa=require('papaparse');var Redis=require(_0x3896('0x11'));var authService=require(_0x3896('0x12'));var qs=require('../../components/parsers/qs');var as=require(_0x3896('0x13'));var hardwareService=require(_0x3896('0x14'));var logger=require(_0x3896('0x15'))('api');var utils=require(_0x3896('0x16'));var config=require(_0x3896('0x17'));var licenseUtil=require('../../config/license/util');var db=require('../../mysqldb')['db'];config['redis']=_[_0x3896('0x18')](config[_0x3896('0x19')],{'host':'localhost','port':0x18eb});var socket=require(_0x3896('0x1a'))(new Redis(config[_0x3896('0x19')]));require(_0x3896('0x1b'))[_0x3896('0x1c')](socket);function respondWithStatusCode(_0x5eadee,_0x284ab5){_0x284ab5=_0x284ab5||0xcc;return function(_0x2ee4ca){if(_0x2ee4ca){return _0x5eadee[_0x3896('0x1d')](_0x284ab5);}return _0x5eadee[_0x3896('0x1e')](_0x284ab5)[_0x3896('0x1f')]();};}function respondWithResult(_0x3e1aad,_0x548780){_0x548780=_0x548780||0xc8;return function(_0x5bad43){if(_0x5bad43){return _0x3e1aad[_0x3896('0x1e')](_0x548780)['json'](_0x5bad43);}};}function respondWithFilteredResult(_0x5063c5,_0x4b9513){return function(_0x5d2d4f){if(_0x5d2d4f){var _0x4d5398=typeof _0x4b9513[_0x3896('0x20')]===_0x3896('0x21')&&typeof _0x4b9513[_0x3896('0x22')]===_0x3896('0x21');var _0x7b965a=_0x5d2d4f[_0x3896('0x23')];var _0xbe5757=_0x4d5398?0x0:_0x4b9513['offset'];var _0x1e3813=_0x4d5398?_0x5d2d4f[_0x3896('0x23')]:_0x4b9513[_0x3896('0x20')]+_0x4b9513[_0x3896('0x22')];var _0x182384;if(_0x1e3813>=_0x7b965a){_0x1e3813=_0x7b965a;_0x182384=0xc8;}else{_0x182384=0xce;}_0x5063c5[_0x3896('0x1e')](_0x182384);return _0x5063c5['set'](_0x3896('0x24'),_0xbe5757+'-'+_0x1e3813+'/'+_0x7b965a)[_0x3896('0x25')](_0x5d2d4f);}return null;};}function patchUpdates(_0xbaf91f){return function(_0x413e9f){try{jsonpatch['apply'](_0x413e9f,_0xbaf91f,!![]);}catch(_0x18df49){return BPromise[_0x3896('0x26')](_0x18df49);}return _0x413e9f[_0x3896('0x27')]();};}function saveUpdates(_0x33e54b,_0xb665f5){return function(_0x5bb957){if(_0x5bb957){return _0x5bb957[_0x3896('0x28')](_0x33e54b)[_0x3896('0x29')](function(_0x1e224f){return _0x1e224f;});}return null;};}function removeEntity(_0x60cf5d,_0x5bc7e0){return function(_0x2f37e9){if(_0x2f37e9){return _0x2f37e9[_0x3896('0x2a')]()[_0x3896('0x29')](function(){_0x60cf5d[_0x3896('0x1e')](0xcc)['end']();});}};}function handleEntityNotFound(_0x23869e,_0x779388){return function(_0x4ef6e2){if(!_0x4ef6e2){_0x23869e[_0x3896('0x1d')](0x194);}return _0x4ef6e2;};}function handleError(_0x5ab43d,_0x2434a3){_0x2434a3=_0x2434a3||0x1f4;return function(_0x4be32a){logger[_0x3896('0x2b')](_0x4be32a[_0x3896('0x2c')]);if(_0x4be32a[_0x3896('0x2d')]){delete _0x4be32a[_0x3896('0x2d')];}_0x5ab43d[_0x3896('0x1e')](_0x2434a3)[_0x3896('0x2e')](_0x4be32a);};}function getInteractionUsers(_0x113cf9,_0x2065f5){return new BPromise(function(_0x492075,_0x4cb41f){try{if(_0x2065f5[_0x113cf9['id']]){_0x113cf9[_0x3896('0x2f')]=_[_0x3896('0x30')](_0x2065f5[_0x113cf9['id']],function(_0x348b10){return{'id':_0x348b10['id'],'fullname':_0x348b10[_0x3896('0x31')]};});}}catch(_0x3ce8be){_0x4cb41f(_0x3ce8be);}_0x492075(_0x113cf9);});}function getInteractionTags(_0x5184eb,_0x45aec0){return new BPromise(function(_0x146683,_0x5ad3f5){try{if(_0x5184eb['TagIds']){_0x5184eb[_0x3896('0x32')]=[];_0x5184eb['TagIds'][_0x3896('0x33')](',')[_0x3896('0x34')](function(_0x13c426){_0x5184eb['Tags'][_0x3896('0x35')](_0x45aec0[_0x13c426]);});}delete _0x5184eb[_0x3896('0x36')];}catch(_0x9bec6d){_0x5ad3f5(_0x9bec6d);}_0x146683(_0x5184eb);});}function updateFaxInteraction(_0x5a1e4e,_0x5b1c8f,_0x36cd75){return new BPromise(function(_0x4014ed,_0x246412){return getInteractionUsers(_0x5a1e4e,_0x36cd75)['then'](function(_0x1c695e){return getInteractionTags(_0x1c695e,_0x5b1c8f);})[_0x3896('0x29')](function(_0x344d3a){return getStateInteraction(_0x344d3a);})['then'](function(_0x21dad8){_0x4014ed(_0x21dad8);})[_0x3896('0x37')](function(_0x343c84){_0x246412(_0x343c84);});});}function getStateInteraction(_0x15ed40){return new BPromise(function(_0x4458fb){_0x15ed40[_0x3896('0x38')]=0x0;_0x15ed40[_0x3896('0x39')]=0x0;_0x15ed40[_0x3896('0x3a')]=0x0;_0x15ed40[_0x3896('0x3b')]=0x0;_0x15ed40['total']=0x0;if(!_0x15ed40['closed']&&!_0x15ed40[_0x3896('0x3c')]){_0x15ed40['waiting']+=0x1;}if(!_0x15ed40[_0x3896('0x3d')]&&_0x15ed40['UserId']){_0x15ed40['talking']+=0x1;if(_0x15ed40[_0x3896('0x38')]){_0x15ed40['waiting']-=0x1;}}if(_0x15ed40[_0x3896('0x3d')]&&_0x15ed40['UserId']){_0x15ed40[_0x3896('0x3a')]+=0x1;if(_0x15ed40['talking']){_0x15ed40[_0x3896('0x39')]-=0x1;}}if(_0x15ed40[_0x3896('0x3d')]&&!_0x15ed40['UserId']){_0x15ed40[_0x3896('0x3b')]+=0x1;if(_0x15ed40[_0x3896('0x38')]){_0x15ed40['waiting']-=0x1;}}_0x15ed40[_0x3896('0x3e')]+=0x1;_0x4458fb(_0x15ed40);});}exports[_0x3896('0x3f')]=function(_0x512d4d,_0x58ad1d){var _0x3a8a6b={},_0x2cb365={},_0x2a9caf={'count':0x0,'rows':[]};var _0x46bc0c=_[_0x3896('0x30')](db[_0x3896('0x40')][_0x3896('0x41')],function(_0x53e34b){return{'name':_0x53e34b[_0x3896('0x42')],'type':_0x53e34b[_0x3896('0x43')][_0x3896('0x44')]};});_0x2cb365[_0x3896('0x45')]=_[_0x3896('0x30')](_0x46bc0c,'name');_0x2cb365['query']=_[_0x3896('0x46')](_0x512d4d[_0x3896('0x47')]);_0x2cb365[_0x3896('0x48')]=_[_0x3896('0x49')](_0x2cb365['model'],_0x2cb365[_0x3896('0x47')]);_0x3a8a6b[_0x3896('0x4a')]=_['intersection'](_0x2cb365['model'],qs[_0x3896('0x4b')](_0x512d4d['query'][_0x3896('0x4b')]));_0x3a8a6b[_0x3896('0x4a')]=_0x3a8a6b[_0x3896('0x4a')][_0x3896('0x4c')]?_0x3a8a6b['attributes']:_0x2cb365[_0x3896('0x45')];if(!_0x512d4d[_0x3896('0x47')][_0x3896('0x4d')](_0x3896('0x4e'))){_0x3a8a6b[_0x3896('0x22')]=qs[_0x3896('0x22')](_0x512d4d[_0x3896('0x47')][_0x3896('0x22')]);_0x3a8a6b[_0x3896('0x20')]=qs[_0x3896('0x20')](_0x512d4d[_0x3896('0x47')][_0x3896('0x20')]);}_0x3a8a6b['order']=qs['sort'](_0x512d4d['query']['sort']);_0x3a8a6b[_0x3896('0x4f')]=qs[_0x3896('0x48')](_[_0x3896('0x50')](_0x512d4d[_0x3896('0x47')],_0x2cb365[_0x3896('0x48')]),_0x46bc0c);var _0x3462c5=[];var _0x56a1da=squel[_0x3896('0x51')]()[_0x3896('0x52')]('id')[_0x3896('0x52')]('name')[_0x3896('0x52')](_0x3896('0x53'))['from']('tools_tags');var _0x526867=squel[_0x3896('0x51')]()[_0x3896('0x52')](_0x3896('0x54'))[_0x3896('0x52')](_0x3896('0x55'))[_0x3896('0x52')](_0x3896('0x56'))[_0x3896('0x57')](_0x3896('0x58'),'ui')['left_join'](_0x3896('0x59'),'u',_0x3896('0x5a'));var _0x3b00e6=squel['select']()[_0x3896('0x57')](_0x3896('0x5b'),'i')[_0x3896('0x5c')]('cm_contacts','c','c.id\x20=\x20i.ContactId\x20AND\x20c.deletedAt\x20IS\x20NULL')['left_join'](_0x3896('0x59'),'o','o.id\x20=\x20i.UserId')[_0x3896('0x5c')]('fax_accounts','a',_0x3896('0x5d'))[_0x3896('0x5c')](_0x3896('0x5e'),'me',_0x3896('0x5f'))[_0x3896('0x5c')](_0x3896('0x60'),'it',_0x3896('0x61'))[_0x3896('0x5c')](_0x3896('0x62'),'t','t.id\x20=\x20it.TagId');var _0x551ae0=squel[_0x3896('0x63')]();var _0x582c1a=[];var _0x43ed08=squel[_0x3896('0x63')]();var _0x3910e8;if(_0x512d4d[_0x3896('0x47')][_0x3896('0x64')]){_0x3910e8=as[_0x3896('0x65')](_0x512d4d[_0x3896('0x47')][_0x3896('0x64')]);var _0x124712=_0x3910e8[_0x3896('0x66')];for(var _0x527786=0x0;_0x527786<_0x3910e8[_0x3896('0x67')][_0x3896('0x4c')];_0x527786++){var _0x126990=_0x3910e8['conditions'][_0x527786];var _0x24c573='i';var _0x5d84da=_['find'](_0x46bc0c,['name',_0x126990['field']]);if(!_0x5d84da){switch(_0x126990[_0x3896('0x52')]){case _0x3896('0x68'):if(_0x126990[_0x3896('0x69')]==0x1){_0x3b00e6[_0x3896('0x6a')]('`'+_0x126990[_0x3896('0x52')]+_0x3896('0x6b'));}else{_0x3b00e6[_0x3896('0x6a')]('`'+_0x126990[_0x3896('0x52')]+_0x3896('0x6c'));}break;case'Contact':if(_0x126990[_0x3896('0x6d')]===_0x3896('0x6e')){if(_0x126990['value']['split']('\x20')['length']>0x1){_0x551ae0[_0x124712](_0x3896('0x6f'),qs[_0x3896('0x70')](_0x126990['value']),null);}else{var _0x127b9f='%'+_0x126990[_0x3896('0x69')]+'%';_0x551ae0[_0x124712](_0x3896('0x71'),_0x127b9f,_0x127b9f,_0x127b9f);}}else{_0x5d84da=_[_0x3896('0x72')](_0x46bc0c,[_0x3896('0x2d'),_0x3896('0x73')]);_0x126990[_0x3896('0x52')]=_0x3896('0x73');_0x334438=as[_0x3896('0x74')](_0x24c573,_0x5d84da[_0x3896('0x43')],_0x126990);_0x551ae0[_0x124712](_0x334438[_0x3896('0x75')],_0x334438[_0x3896('0x69')][_0x3896('0x76')],_0x334438[_0x3896('0x69')][_0x3896('0x1f')]);}break;case _0x3896('0x77'):var _0x49471a=_0x126990[_0x3896('0x69')]['split'](',')['map'](function(_0x5ecc7e){return Number(_0x5ecc7e);});_0x49471a[_0x3896('0x34')](function(_0x2fa90f){_0x43ed08['or']('CONCAT(\x27,\x27,\x20`TagIds`,\x20\x27,\x27)\x20LIKE\x20?','%,'+_0x2fa90f+',%');});_0x582c1a=_[_0x3896('0x78')](_0x582c1a,_0x49471a);break;case _0x3896('0x79'):if(_0x126990[_0x3896('0x6d')]===_0x3896('0x6e')){_0x551ae0[_0x124712]('CONCAT_WS(\x27\x20\x27,\x20o.name,\x20o.fullname)\x20LIKE\x20?','%'+_0x126990[_0x3896('0x69')]+'%',null);}else{_0x5d84da=_['find'](_0x46bc0c,['name',_0x3896('0x3c')]);_0x126990[_0x3896('0x52')]=_0x3896('0x3c');_0x334438=as['buildExpression'](_0x24c573,_0x5d84da[_0x3896('0x43')],_0x126990);_0x551ae0[_0x124712](_0x334438[_0x3896('0x75')],_0x334438[_0x3896('0x69')][_0x3896('0x76')],_0x334438['value'][_0x3896('0x1f')]);}break;case _0x3896('0x7a'):_0x334438=as[_0x3896('0x74')]('me',null,_0x126990);_0x551ae0[_0x124712](_0x334438[_0x3896('0x75')],_0x334438[_0x3896('0x69')][_0x3896('0x76')],_0x334438[_0x3896('0x69')]['end']);break;}}else{var _0x334438=as[_0x3896('0x74')](_0x24c573,_0x5d84da['type'],_0x126990);_0x551ae0[_0x124712](_0x334438[_0x3896('0x75')],_0x334438[_0x3896('0x69')][_0x3896('0x76')],_0x334438[_0x3896('0x69')]['end']);}}}else{var _0x185750=_(_0x512d4d[_0x3896('0x47')])[_0x3896('0x46')]()[_0x3896('0x30')](function(_0xc7e3ff){return _['some'](_0x46bc0c,[_0x3896('0x2d'),_0xc7e3ff])?_0xc7e3ff:undefined;})[_0x3896('0x7b')]()[_0x3896('0x69')]();if(!_[_0x3896('0x7c')](_0x185750)){_0x185750[_0x3896('0x34')](function(_0x23d4cc){if(_0x23d4cc===_0x3896('0x7d')){_0x3b00e6[_0x3896('0x4f')](_0x3896('0x7e'),[][_0x3896('0x7f')](_0x512d4d[_0x3896('0x47')][_0x23d4cc]));}else if(_0x23d4cc===_0x3896('0x80')){var _0x17a8d0=JSON[_0x3896('0x81')](_0x512d4d[_0x3896('0x47')][_0x23d4cc])['$gte'];var _0xb26241=JSON[_0x3896('0x81')](_0x512d4d[_0x3896('0x47')][_0x23d4cc])[_0x3896('0x82')];_0x3b00e6['where']('i.createdAt\x20BETWEEN\x20?\x20AND\x20?',_0x17a8d0,_0xb26241);}else{if(_0x512d4d[_0x3896('0x47')][_0x23d4cc]===_0x3896('0x83')){_0x3b00e6['where']('i.'+_0x23d4cc+'\x20IS\x20NULL');}else{_0x3b00e6[_0x3896('0x4f')]('i.'+_0x23d4cc+'\x20=\x20?',_0x512d4d[_0x3896('0x47')][_0x23d4cc]);}}});}if(_0x512d4d['query'][_0x3896('0x84')]){if(_0x512d4d[_0x3896('0x47')][_0x3896('0x84')]==0x1){_0x3b00e6[_0x3896('0x6a')](_0x3896('0x85'));}else{_0x3b00e6[_0x3896('0x6a')](_0x3896('0x86'));}}if(_0x512d4d[_0x3896('0x47')][_0x3896('0x87')]){_0x582c1a=_[_0x3896('0x88')](_0x512d4d[_0x3896('0x47')][_0x3896('0x87')])?_0x512d4d[_0x3896('0x47')][_0x3896('0x87')]:new Array(_0x512d4d[_0x3896('0x47')][_0x3896('0x87')]);_0x582c1a[_0x3896('0x34')](function(_0x261a79){_0x43ed08['or'](_0x3896('0x89'),'%,'+_0x261a79+',%');});}if(_0x512d4d[_0x3896('0x47')][_0x3896('0x8a')]){var _0x31bb65=_0x512d4d[_0x3896('0x47')]['filter'][_0x3896('0x8b')]('\x5c','\x5c\x5c')['replace'](/'/g,'\x27\x27');if(qs['isNumeric'](_0x31bb65)){_0x551ae0['or']('i.id\x20LIKE\x20?',_0x31bb65+'%')['or'](_0x3896('0x8c'),_0x31bb65+'%');}_0x551ae0['or']('CONCAT(c.firstName,\x20\x27\x20\x27,\x20c.lastName)\x20LIKE\x20?',_0x31bb65+'%');}}_0x3b00e6[_0x3896('0x4f')](_0x551ae0);_0x3b00e6[_0x3896('0x8d')](_0x3896('0x8e'));var _0x393a1f={'type':db[_0x3896('0x8f')][_0x3896('0x90')][_0x3896('0x91')],'raw':!![]};var _0x5f4f40=_0x3b00e6[_0x3896('0x92')]();_0x5f4f40[_0x3896('0x52')](_0x3896('0x8e'));_0x5f4f40[_0x3896('0x52')](_0x3896('0x93'),_0x3896('0x68'));if(_0x3a8a6b[_0x3896('0x94')]){_0x3a8a6b[_0x3896('0x94')]['forEach'](function(_0x11b2a9){var _0x45c028=_0x11b2a9[0x0]==='contactName'?_0x11b2a9[0x0]:'i.'+_0x11b2a9[0x0];_0x3b00e6[_0x3896('0x94')](_0x45c028,_0x11b2a9[0x1]===_0x3896('0x95')?![]:!![]);});}if(!_['isEmpty'](_0x582c1a)){_0x3b00e6[_0x3896('0x6a')](_0x43ed08);_0x5f4f40[_0x3896('0x4f')](_0x3896('0x96'),_0x582c1a);}BPromise[_0x3896('0x97')]()['then'](function(){if(!_0x3910e8){if(_0x512d4d[_0x3896('0x47')]['FaxAccountId'])return;_0x5f4f40[_0x3896('0x4f')](_0x3896('0x98'));_0x3b00e6[_0x3896('0x4f')](_0x3896('0x98'));return;}if(_0x512d4d[_0x3896('0x99')][_0x3896('0x9a')]!=='agent')return;return _0x512d4d[_0x3896('0x99')][_0x3896('0x9b')]({'attributes':['id'],'raw':!![]})[_0x3896('0x29')](function(_0x3129e2){if(_[_0x3896('0x7c')](_0x3129e2)){_0x5f4f40[_0x3896('0x4f')](_0x3896('0x9c'));_0x3b00e6[_0x3896('0x4f')](_0x3896('0x9c'));}else{_0x5f4f40['where'](_0x3896('0x7e'),_[_0x3896('0x30')](_0x3129e2,'id'));_0x3b00e6['where']('i.FaxAccountId\x20IN\x20?',_[_0x3896('0x30')](_0x3129e2,'id'));}});})[_0x3896('0x29')](function(){if(_0x512d4d[_0x3896('0x99')][_0x3896('0x9a')]===_0x3896('0x9d')&&!_0x3910e8&&!_0x512d4d[_0x3896('0x47')]['FaxAccountId'])return[];return db['sequelize'][_0x3896('0x47')](_0x5f4f40['toString'](),_0x393a1f);})[_0x3896('0x29')](function(_0x1c469d){_0x2a9caf[_0x3896('0x23')]=_0x1c469d[_0x3896('0x4c')];if(_0x2a9caf[_0x3896('0x23')]===0x0)return[];return db[_0x3896('0x9e')]['query'](_0x56a1da[_0x3896('0x9f')](),_0x393a1f)[_0x3896('0x29')](function(_0x493aff){_0x3462c5=_[_0x3896('0xa0')](_0x493aff,'id');_0x393a1f=_[_0x3896('0xa1')](_0x393a1f,{'model':db[_0x3896('0x40')],'mapToModel':!![],'raw':!![],'nest':!![]});if(_0x512d4d[_0x3896('0x47')][_0x3896('0x4b')]){_0x3a8a6b['attributes']['forEach'](function(_0x36fcbf){_0x3b00e6[_0x3896('0x52')]('i.'+_0x36fcbf);});}else{_0x3b00e6[_0x3896('0x52')]('SUM(me.read\x20=\x200\x20AND\x20me.direction\x20=\x20\x27in\x27)','unreadMessages');_0x3b00e6['field'](_0x3896('0xa2'),_0x3896('0xa3'));_0x3b00e6[_0x3896('0x52')](_0x3896('0xa4'),'Account.mandatoryDisposition');_0x3b00e6['field'](_0x3896('0xa5'),_0x3896('0xa6'));_0x3b00e6['field'](_0x3896('0xa7'));_0x3b00e6['field'](_0x3896('0xa8'),_0x3896('0xa9'));_0x3b00e6[_0x3896('0x52')](_0x3896('0xaa'),'Contact.lastName');_0x3b00e6[_0x3896('0x52')](_0x3896('0xab'),_0x3896('0xac'));_0x3b00e6[_0x3896('0x52')](_0x3896('0xad'),_0x3896('0xae'));_0x3b00e6[_0x3896('0x52')]('c.mobile',_0x3896('0xaf'));_0x3b00e6['field'](_0x3896('0xb0'),'Contact.fax');_0x3b00e6['field']('o.fullname',_0x3896('0xb1'));_0x3b00e6[_0x3896('0x52')](_0x3896('0xb2'),_0x3896('0xb3'));_0x3b00e6[_0x3896('0x52')](_0x3896('0xb4'),'TagIds');}if(_0x3a8a6b['limit'])_0x3b00e6[_0x3896('0x22')](_0x3a8a6b['limit']);if(_0x3a8a6b[_0x3896('0x20')])_0x3b00e6['offset'](_0x3a8a6b['offset']);return db[_0x3896('0x9e')][_0x3896('0x47')](_0x3b00e6[_0x3896('0x9f')](),_0x393a1f);})[_0x3896('0x29')](function(_0x351fce){if(_0x351fce[_0x3896('0x4c')]>0x0)_0x526867[_0x3896('0x4f')](_0x3896('0xb5'),_['map'](_0x351fce,'id'));return db[_0x3896('0x9e')][_0x3896('0x47')](_0x526867[_0x3896('0x9f')](),_0x393a1f)[_0x3896('0x29')](function(_0x3f1c5a){var _0x7ab90=_[_0x3896('0xb6')](_0x3f1c5a,'FaxInteractionId');var _0xa2f50c=[];_0x351fce[_0x3896('0x34')](function(_0x403d1e){_0xa2f50c['push'](updateFaxInteraction(_0x403d1e,_0x3462c5,_0x7ab90));});return BPromise[_0x3896('0xb7')](_0xa2f50c);});});})[_0x3896('0x29')](function(_0x4888c2){_0x2a9caf[_0x3896('0xb8')]=_0x4888c2;return _0x2a9caf;})[_0x3896('0x29')](respondWithFilteredResult(_0x58ad1d,_0x3a8a6b))[_0x3896('0x37')](handleError(_0x58ad1d,null));};exports[_0x3896('0xb9')]=function(_0xecdff1,_0x339afa){var _0x67c486={'raw':![],'where':{'id':_0xecdff1['params']['id']}},_0x3faf9a={};_0x3faf9a['model']=_['keys'](db[_0x3896('0x40')][_0x3896('0x41')]);_0x3faf9a[_0x3896('0x47')]=_[_0x3896('0x46')](_0xecdff1[_0x3896('0x47')]);_0x3faf9a['filters']=_['intersection'](_0x3faf9a[_0x3896('0x45')],_0x3faf9a[_0x3896('0x47')]);_0x67c486[_0x3896('0x4a')]=_[_0x3896('0x49')](_0x3faf9a[_0x3896('0x45')],qs['fields'](_0xecdff1[_0x3896('0x47')][_0x3896('0x4b')]));_0x67c486[_0x3896('0x4a')]=_0x67c486[_0x3896('0x4a')]['length']?_0x67c486['attributes']:_0x3faf9a[_0x3896('0x45')];if(_0xecdff1['query']['includeAll']){_0x67c486[_0x3896('0xba')]=[{'all':!![]}];}_0x67c486=_['merge']({},_0x67c486,_0xecdff1[_0x3896('0xbb')]);return db[_0x3896('0x40')]['find'](_0x67c486)[_0x3896('0x29')](handleEntityNotFound(_0x339afa,null))['then'](respondWithResult(_0x339afa,null))[_0x3896('0x37')](handleError(_0x339afa,null));};exports['create']=function(_0x51a206,_0x16201b){return db[_0x3896('0x40')][_0x3896('0xbc')](_0x51a206['body'],{})['then'](respondWithResult(_0x16201b,0xc9))[_0x3896('0x37')](handleError(_0x16201b,null));};exports['update']=function(_0x50b0b2,_0x46ba0e){if(_0x50b0b2[_0x3896('0x7a')]['id']){delete _0x50b0b2[_0x3896('0x7a')]['id'];}return db[_0x3896('0x40')][_0x3896('0x72')]({'where':{'id':_0x50b0b2[_0x3896('0xbd')]['id']}})[_0x3896('0x29')](handleEntityNotFound(_0x46ba0e,null))['then'](saveUpdates(_0x50b0b2[_0x3896('0x7a')],null))['then'](respondWithResult(_0x46ba0e,null))[_0x3896('0x37')](handleError(_0x46ba0e,null));};exports[_0x3896('0x2a')]=function(_0x44b9dd,_0x4c6e92){return db['FaxInteraction']['find']({'where':{'id':_0x44b9dd[_0x3896('0xbd')]['id']}})[_0x3896('0x29')](handleEntityNotFound(_0x4c6e92,null))['then'](removeEntity(_0x4c6e92,null))[_0x3896('0x37')](handleError(_0x4c6e92,null));};exports[_0x3896('0xbe')]=function(_0x470065,_0x5401d3){return db[_0x3896('0x40')][_0x3896('0xbe')]()[_0x3896('0x29')](respondWithResult(_0x5401d3,null))[_0x3896('0x37')](handleError(_0x5401d3,null));};exports[_0x3896('0xbf')]=function(_0x4f5640,_0x361153,_0x372c01){return db[_0x3896('0xc0')]['find']({'where':{'id':_0x4f5640[_0x3896('0xbd')]['id']}})[_0x3896('0x29')](handleEntityNotFound(_0x361153,null))[_0x3896('0x29')](function(_0x487a03){if(_0x487a03){return _0x487a03[_0x3896('0xbf')](_0x4f5640[_0x3896('0x7a')][_0x3896('0xc1')],_[_0x3896('0xc2')](_0x4f5640[_0x3896('0x7a')],[_0x3896('0xc1'),'id'])||{});}})[_0x3896('0x29')](respondWithResult(_0x361153,null))[_0x3896('0x37')](handleError(_0x361153,null));};exports[_0x3896('0xc3')]=function(_0x364d27,_0x536b13,_0x32d395){var _0x57a940={'raw':![],'where':{}};var _0x49746={};var _0x671c1c={'count':0x0,'rows':[]};return db['FaxInteraction'][_0x3896('0xc4')]({'where':{'id':_0x364d27[_0x3896('0xbd')]['id']}})[_0x3896('0x29')](handleEntityNotFound(_0x536b13,null))['then'](function(_0xc36925){if(_0xc36925){_0x49746['model']=_['keys'](db[_0x3896('0xc0')]['rawAttributes']);_0x49746[_0x3896('0x47')]=_[_0x3896('0x46')](_0x364d27[_0x3896('0x47')]);_0x49746[_0x3896('0x48')]=_[_0x3896('0x49')](_0x49746[_0x3896('0x45')],_0x49746[_0x3896('0x47')]);_0x57a940['attributes']=_[_0x3896('0x49')](_0x49746[_0x3896('0x45')],qs['fields'](_0x364d27[_0x3896('0x47')]['fields']));_0x57a940[_0x3896('0x4a')]=_0x57a940['attributes'][_0x3896('0x4c')]?_0x57a940[_0x3896('0x4a')]:_0x49746['model'];if(!_0x364d27[_0x3896('0x47')]['hasOwnProperty'](_0x3896('0x4e'))){_0x57a940[_0x3896('0x22')]=qs['limit'](_0x364d27['query']['limit']);_0x57a940[_0x3896('0x20')]=qs[_0x3896('0x20')](_0x364d27['query'][_0x3896('0x20')]);}_0x57a940['order']=qs['sort'](_0x364d27[_0x3896('0x47')][_0x3896('0xc5')]);_0x57a940[_0x3896('0x4f')]=qs[_0x3896('0x48')](_[_0x3896('0x50')](_0x364d27['query'],_0x49746[_0x3896('0x48')]));_0x57a940[_0x3896('0x4f')][_0x3896('0xc6')]=_0xc36925['id'];if(_0x364d27['query'][_0x3896('0x8a')]){_0x57a940[_0x3896('0x4f')]=_[_0x3896('0xa1')](_0x57a940['where'],{'$or':_[_0x3896('0x30')](_0x57a940[_0x3896('0x4a')],function(_0x218cc4){var _0x11a237={};_0x11a237[_0x218cc4]={'$like':'%'+_0x364d27[_0x3896('0x47')][_0x3896('0x8a')]+'%'};return _0x11a237;})});}if(_0x364d27[_0x3896('0x47')][_0x3896('0xc7')]){var _0x21ef1a=_0x364d27[_0x3896('0x47')][_0x3896('0xc7')][_0x3896('0x33')](',');var _0x467c6d={};_0x467c6d[_0x21ef1a[0x0]]={'$gte':moment(_0x21ef1a[0x1])[_0x3896('0xc8')](_0x3896('0xc9'))};_0x57a940[_0x3896('0x4f')]=_['merge'](_0x57a940['where'],_0x467c6d);}_0x57a940=_[_0x3896('0xa1')]({},_0x57a940,_0x364d27[_0x3896('0xbb')]);return db['FaxMessage'][_0x3896('0x23')]({'where':_0x57a940[_0x3896('0x4f')]})[_0x3896('0x29')](function(_0x925ff7){_0x671c1c[_0x3896('0x23')]=_0x925ff7;if(_0x364d27[_0x3896('0x47')][_0x3896('0xca')]){_0x57a940['include']=[{'all':!![]}];}return db[_0x3896('0xc0')][_0x3896('0xcb')](_0x57a940);})['then'](function(_0x41e8eb){_0x671c1c[_0x3896('0xb8')]=_0x41e8eb;return _0x671c1c;});}})[_0x3896('0x29')](respondWithFilteredResult(_0x536b13,_0x57a940))[_0x3896('0x37')](handleError(_0x536b13,null));};exports[_0x3896('0xcc')]=function(_0x4d0df2,_0x5da577,_0x99f236){return db[_0x3896('0x40')][_0x3896('0x72')]({'where':{'id':_0x4d0df2[_0x3896('0xbd')]['id']}})[_0x3896('0x29')](handleEntityNotFound(_0x5da577,null))[_0x3896('0x29')](function(_0x2669c4){if(_0x2669c4){return _0x2669c4[_0x3896('0xcd')](_0x4d0df2[_0x3896('0x7a')][_0x3896('0xc1')],_[_0x3896('0xc2')](_0x4d0df2['body'],[_0x3896('0xc1'),'id'])||{})[_0x3896('0xce')](function(){return db[_0x3896('0x77')][_0x3896('0xcb')]({'attributes':['id',_0x3896('0x2d'),'color'],'where':{'id':_0x4d0df2[_0x3896('0x7a')]['ids']}});})['then'](function(_0x2935a6){socket[_0x3896('0xcf')](_0x3896('0xd0'),{'id':Number(_0x4d0df2[_0x3896('0xbd')]['id']),'tags':_0x2935a6||[]});return{'id':Number(_0x4d0df2[_0x3896('0xbd')]['id']),'tags':_0x2935a6||[]};});}})[_0x3896('0x29')](respondWithResult(_0x5da577,null))['catch'](handleError(_0x5da577,null));};exports['removeTags']=function(_0x42abaa,_0x1f0f71,_0x4452af){return db['FaxInteraction'][_0x3896('0x72')]({'where':{'id':_0x42abaa['params']['id']}})['then'](handleEntityNotFound(_0x1f0f71,null))[_0x3896('0x29')](function(_0x3d6682){if(_0x3d6682){return _0x3d6682[_0x3896('0xd1')](_0x42abaa[_0x3896('0x47')][_0x3896('0xc1')]);}})[_0x3896('0x29')](respondWithStatusCode(_0x1f0f71,null))[_0x3896('0x37')](handleError(_0x1f0f71,null));};exports['download']=function(_0xa176cc,_0x46755d){var _0x184588=moment()[_0x3896('0xd2')]()[_0x3896('0x9f')]();var _0x57d5d8=path[_0x3896('0xd3')](config[_0x3896('0xd4')],_0x3896('0xd5'),_0x3896('0xd6'),'tmp');var _0x5cde20=path[_0x3896('0xd3')](config['root'],_0x3896('0xd5'),_0x3896('0xd6'),_0x3896('0xd7'));var _0x1fa9cf=path['join'](_0x57d5d8,_0x184588);var _0xf24e02=util[_0x3896('0xc8')]('transcript-%d-%s.zip',_0xa176cc[_0x3896('0xbd')]['id'],_0x184588);var _0x40e98e=path[_0x3896('0xd3')](_0x57d5d8,_0xf24e02);var _0x1f76ad=[];_0x1f76ad[_0x3896('0x35')]({'model':db[_0x3896('0xd8')],'as':_0x3896('0xd8'),'raw':!![]});var _0x57443b=[{'model':db[_0x3896('0xc0')],'as':_0x3896('0xd9'),'attributes':['id',_0x3896('0x7a'),_0x3896('0x80')],'include':_0x1f76ad}];return db['FaxInteraction']['find']({'where':{'id':_0xa176cc[_0x3896('0xbd')]['id']},'include':_0x57443b})[_0x3896('0x29')](handleEntityNotFound(_0x46755d,null))[_0x3896('0x29')](function(_0x5628e9){if(_0x5628e9&&_0x5628e9[_0x3896('0xd9')]){var _0xd4282d=_0x5628e9['get']({'plain':!![]});fs[_0x3896('0xda')](_0x1fa9cf);for(var _0xd032d7=0x0;_0xd032d7<_0xd4282d[_0x3896('0xd9')][_0x3896('0x4c')];_0xd032d7++){var _0x46228b=_0xd4282d[_0x3896('0xd9')][_0xd032d7][_0x3896('0xd8')];if(_0x46228b){var _0x450719=path[_0x3896('0xd3')](_0x5cde20,_0x46228b[_0x3896('0xdb')]);if(fs[_0x3896('0xdc')](_0x450719)){fs[_0x3896('0xdd')](_0x450719)[_0x3896('0xde')](fs['createWriteStream'](path[_0x3896('0xd3')](_0x1fa9cf,_0x46228b[_0x3896('0xdb')])));}}}return BPromise[_0x3896('0x97')]()[_0x3896('0x29')](function(){return new BPromise(function(_0x4f3889,_0x2dd24f){zipdir(_0x1fa9cf,{'saveTo':_0x40e98e},function(_0x47e3d2,_0x430d5f){if(_0x47e3d2)return _0x2dd24f(_0x47e3d2);return _0x4f3889(_0x430d5f);});})['then'](function(){return new BPromise(function(_0x260c34,_0x22864c){rimraf(_0x1fa9cf,function(_0x146109){if(_0x146109)_0x22864c(_0x146109);return _0x260c34();});});})[_0x3896('0x29')](function(){return _0x46755d[_0x3896('0xdf')](_0x40e98e,_0xf24e02,function(_0x137184){if(_0x137184){console[_0x3896('0xe0')](_0x3896('0xe1'),_0x137184);}else{fs['unlinkSync'](_0x40e98e);}});});});}else{return _0x46755d[_0x3896('0x1d')](0xc8);}})[_0x3896('0x37')](handleError(_0x46755d,null));};