f3e36ca4e851cc660644e615cd2b15fe4bdb59f2
[motion2.git] / server / api / cmContact / cmContact.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 _0x17a2=['t.id\x20=\x20ct.TagId','expr','search','parseSearch','sqlOperator','conditions','find','value','split','map','forEach','union','and','dateOfBirth','fieldType','datetime','castTo','DATE','buildExpression','type','filter','isNil','Contact','isEmpty','ListId','c.ListId\x20IN\x20?','concat','where','CONCAT_WS(\x27\x20\x27,\x20c.firstName,\x20c.lastName,\x20c.email)\x20LIKE\x20?','\x20=\x20?','tag','CONCAT(\x27,\x27,\x20`TagIds`,\x20\x27,\x27)\x20LIKE\x20?','replace','getFullTextValue','isNumeric','c.id\x20LIKE\x20?','c.mobile\x20LIKE\x20?','c.fax\x20LIKE\x20?','c.firstName\x20LIKE\x20?','c.lastName\x20LIKE\x20?','group','QueryTypes','clone','c.id','having','t.id\x20IN\x20?','resolve','user','agent','some','getLists','c.ListId\x20IS\x20NULL','role','sequelize','toString','keyBy','merge','c.firstName','c.lastName','c.phone','c.email','c.ListId','c.deletedAt','c.CompanyId','GROUP_CONCAT(DISTINCT\x20t.id)','TagIds','Tags','rows','params','catch','tags','startsWith','columnName','CmCustomField','findAll','displayName','alias','values','body','get','mergeWith','isArray','join','info','[CmContact][merge][destroy][CmHopper],\x20%s','CmHopperBlack','[CmContact][merge][destroy][CmHopperBlack],\x20%s','create','ChatMessage','ChatOfflineMessage','MailInteraction','MailMessage','SmsInteraction','SmsMessage','FaxInteraction','OpenchannelInteraction','CmHopperFinal','CmHopperHistory','VoiceCallReport','ChatQueueReport','FaxQueueReport','MailQueueReport','SmsQueueReport','JscriptySessionReport','WhatsappQueueReport','bulkCreate','each','duplicates','findOrCreate','spread','show','color','$and','omit','format','cf_%d','pickBy','table','setFields','id\x20=\x20?','toParam','text','phone','CmHopper','getTags','Tag','rawAttributes','options','setTags','ids','getHoppers','ContactId','include','getHopperHistories','includeAll','getHopperFinals','No\x20ListId\x20specified','binding_keys','No\x20association\x20keys\x20specified!','Unable\x20to\x20synchronize\x20socket,\x20no\x20timestamp\x20passed','binding_values','Incorrect\x20binding\x20parameters\x20passed!','zipObject','firstName','No\x20firstName\x20column\x20specified','root','server/files/tmp','file','filename','chmodSync','fork','CompanyId','File\x20uploaded\x20correctly!','pid','upload','createReadStream','parse','meta','import','User','binding','socket_timestamp','child_process','../../components/import/cm/csv2','message','start\x20child\x20process\x20correctly!','exit','getJourney','mail','chat','openchannel','whatsapp','-createdAt','channel','toLowerCase','Invalid\x20channel','range','isValid','Invalid\x20date\x20for\x20range\x20to\x20filter','Invalid\x20createdAt\x20filter','voice','uniqueid','source','destination','callerid','starttime','endtime','duration','note','createdAt','userDisposition','userSecondDisposition','userThirdDisposition','fullname','DESC','startCase','Website','closed','closedAt','disposition','thirdDisposition','UserId','Account','Owner','customerIp','customerPort','deviceModel','osName','ratingType','ratingValue','subject','externalUrl','threadId','Interaction','findAndCountAll','flatten','sortBy','slice','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','util','path','sox','to-csv','ejs','fs-extra','lodash','squel','crypto','jsforce','querystring','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','redis','defaults','./cmContact.socket','sendStatus','end','status','json','undefined','count','offset','limit','Content-Range','apply','reject','save','update','then','destroy','error','name','CmContact','describe','keys','length','cf_','push','findOne','trimStart','all','query','filters','intersection','model','attributes','fields','hasOwnProperty','nolimit','order','sort','pick','select','field','from','tools_tags','cm_contacts','left_join','cm_user_has_contacts','uc.CmContactId\x20=\x20c.id','cm_contact_has_tags','ct.CmContactId\x20=\x20c.id'];(function(_0x5e4e6a,_0x55d6f6){var _0x83f002=function(_0x4b6814){while(--_0x4b6814){_0x5e4e6a['push'](_0x5e4e6a['shift']());}};_0x83f002(++_0x55d6f6);}(_0x17a2,0xda));var _0x217a=function(_0x519c3d,_0x329318){_0x519c3d=_0x519c3d-0x0;var _0x5d38f8=_0x17a2[_0x519c3d];return _0x5d38f8;};'use strict';var emlformat=require(_0x217a('0x0'));var rimraf=require(_0x217a('0x1'));var zipdir=require(_0x217a('0x2'));var jsonpatch=require(_0x217a('0x3'));var rp=require(_0x217a('0x4'));var moment=require(_0x217a('0x5'));var BPromise=require(_0x217a('0x6'));var Mustache=require(_0x217a('0x7'));var util=require(_0x217a('0x8'));var path=require(_0x217a('0x9'));var sox=require(_0x217a('0xa'));var csv=require(_0x217a('0xb'));var ejs=require(_0x217a('0xc'));var fs=require('fs');var fs_extra=require(_0x217a('0xd'));var _=require(_0x217a('0xe'));var squel=require(_0x217a('0xf'));var crypto=require(_0x217a('0x10'));var jsforce=require(_0x217a('0x11'));var deskjs=require('desk.js');var toCsv=require(_0x217a('0xb'));var querystring=require(_0x217a('0x12'));var Papa=require('papaparse');var Redis=require(_0x217a('0x13'));var authService=require(_0x217a('0x14'));var qs=require(_0x217a('0x15'));var as=require(_0x217a('0x16'));var hardwareService=require('../../config/license/hardware');var logger=require(_0x217a('0x17'))(_0x217a('0x18'));var utils=require(_0x217a('0x19'));var config=require(_0x217a('0x1a'));var licenseUtil=require(_0x217a('0x1b'));var db=require('../../mysqldb')['db'];config[_0x217a('0x1c')]=_[_0x217a('0x1d')](config['redis'],{'host':'localhost','port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config[_0x217a('0x1c')]));require(_0x217a('0x1e'))['register'](socket);function respondWithStatusCode(_0x358737,_0xab34e3){_0xab34e3=_0xab34e3||0xcc;return function(_0x2ec5d9){if(_0x2ec5d9){return _0x358737[_0x217a('0x1f')](_0xab34e3);}return _0x358737['status'](_0xab34e3)[_0x217a('0x20')]();};}function respondWithResult(_0x5f4460,_0x5d429d){_0x5d429d=_0x5d429d||0xc8;return function(_0x70ab60){if(_0x70ab60){return _0x5f4460[_0x217a('0x21')](_0x5d429d)[_0x217a('0x22')](_0x70ab60);}};}function respondWithFilteredResult(_0x47274b,_0x37f645){return function(_0x58f686){if(_0x58f686){var _0x40885f=typeof _0x37f645['offset']==='undefined'&&typeof _0x37f645['limit']===_0x217a('0x23');var _0x38d93c=_0x58f686[_0x217a('0x24')];var _0x2bbd85=_0x40885f?0x0:_0x37f645[_0x217a('0x25')];var _0x411c06=_0x40885f?_0x58f686[_0x217a('0x24')]:_0x37f645[_0x217a('0x25')]+_0x37f645[_0x217a('0x26')];var _0x57e3b2;if(_0x411c06>=_0x38d93c){_0x411c06=_0x38d93c;_0x57e3b2=0xc8;}else{_0x57e3b2=0xce;}_0x47274b['status'](_0x57e3b2);return _0x47274b['set'](_0x217a('0x27'),_0x2bbd85+'-'+_0x411c06+'/'+_0x38d93c)[_0x217a('0x22')](_0x58f686);}return null;};}function patchUpdates(_0x3e259a){return function(_0x2cb993){try{jsonpatch[_0x217a('0x28')](_0x2cb993,_0x3e259a,!![]);}catch(_0x3b90f2){return BPromise[_0x217a('0x29')](_0x3b90f2);}return _0x2cb993[_0x217a('0x2a')]();};}function saveUpdates(_0x25d9b3,_0x216885){return function(_0x2f1654){if(_0x2f1654){return _0x2f1654[_0x217a('0x2b')](_0x25d9b3)[_0x217a('0x2c')](function(_0x249e8f){return _0x249e8f;});}return null;};}function removeEntity(_0x4067ec,_0x5e115a){return function(_0x5bac99){if(_0x5bac99){return _0x5bac99[_0x217a('0x2d')]()['then'](function(){_0x4067ec[_0x217a('0x21')](0xcc)[_0x217a('0x20')]();});}};}function handleEntityNotFound(_0x1cd95c,_0x3d344e){return function(_0x38dc73){if(!_0x38dc73){_0x1cd95c[_0x217a('0x1f')](0x194);}return _0x38dc73;};}function handleError(_0xfa67bc,_0x1b8ea9){_0x1b8ea9=_0x1b8ea9||0x1f4;return function(_0x57d138){logger[_0x217a('0x2e')](_0x57d138['stack']);if(_0x57d138[_0x217a('0x2f')]){delete _0x57d138[_0x217a('0x2f')];}_0xfa67bc[_0x217a('0x21')](_0x1b8ea9)['send'](_0x57d138);};}exports['index']=function(_0x41b15e,_0x40b230){var _0x571a64={},_0x361f7b={},_0x436e3f={'count':0x0,'rows':[]};return db[_0x217a('0x30')][_0x217a('0x31')]()[_0x217a('0x2c')](function(_0x7b943d){var _0x4e641a=[];for(var _0x1537cd=0x0;_0x1537cd<Object[_0x217a('0x32')](_0x7b943d)[_0x217a('0x33')];_0x1537cd++){var _0x131704=Object['keys'](_0x7b943d)[_0x1537cd];if(_['startsWith'](_0x131704,_0x217a('0x34'))){_0x4e641a[_0x217a('0x35')](db['CmCustomField'][_0x217a('0x36')]({'where':{'id':_[_0x217a('0x37')](_0x131704,'cf_')},'raw':!![]}));}}return BPromise[_0x217a('0x38')](_0x4e641a)[_0x217a('0x2c')](function(_0x5cc31d){for(var _0x42c1c4=0x0;_0x42c1c4<_0x5cc31d[_0x217a('0x33')];_0x42c1c4++){if(_0x5cc31d[_0x42c1c4]){var _0x574fac=_0x217a('0x34')+_0x5cc31d[_0x42c1c4]['id'];var _0x1a9ca7=_0x7b943d[_0x574fac];_0x1a9ca7['fieldType']=_0x5cc31d[_0x42c1c4]['type'];}}return _0x7b943d;});})[_0x217a('0x2c')](function(_0x5daffd){_0x361f7b['model']=_[_0x217a('0x32')](_0x5daffd);_0x361f7b[_0x217a('0x39')]=_['keys'](_0x41b15e[_0x217a('0x39')]);_0x361f7b[_0x217a('0x3a')]=_[_0x217a('0x3b')](_0x361f7b[_0x217a('0x3c')],_0x361f7b[_0x217a('0x39')]);_0x571a64[_0x217a('0x3d')]=_['intersection'](_0x361f7b[_0x217a('0x3c')],qs[_0x217a('0x3e')](_0x41b15e[_0x217a('0x39')][_0x217a('0x3e')]));_0x571a64[_0x217a('0x3d')]=_0x571a64[_0x217a('0x3d')][_0x217a('0x33')]?_0x571a64[_0x217a('0x3d')]:_0x361f7b[_0x217a('0x3c')];if(!_0x41b15e['query'][_0x217a('0x3f')](_0x217a('0x40'))){_0x571a64[_0x217a('0x26')]=qs[_0x217a('0x26')](_0x41b15e[_0x217a('0x39')][_0x217a('0x26')]);_0x571a64[_0x217a('0x25')]=qs[_0x217a('0x25')](_0x41b15e['query'][_0x217a('0x25')]);}_0x571a64[_0x217a('0x41')]=qs[_0x217a('0x42')](_0x41b15e[_0x217a('0x39')]['sort']);_0x571a64['where']=qs[_0x217a('0x3a')](_[_0x217a('0x43')](_0x41b15e[_0x217a('0x39')],_0x361f7b[_0x217a('0x3a')]),_0x5daffd);var _0x23a4f6=[];var _0x381b44=squel[_0x217a('0x44')]()['field']('id')[_0x217a('0x45')](_0x217a('0x2f'))[_0x217a('0x45')]('color')[_0x217a('0x46')](_0x217a('0x47'));var _0x10fa0e=squel[_0x217a('0x44')]()['from'](_0x217a('0x48'),'c')[_0x217a('0x49')](_0x217a('0x4a'),'uc',_0x217a('0x4b'))[_0x217a('0x49')](_0x217a('0x4c'),'ct',_0x217a('0x4d'))[_0x217a('0x49')]('tools_tags','t',_0x217a('0x4e'))['where']('c.deletedAt\x20IS\x20NULL');var _0x337d85=squel[_0x217a('0x4f')]();var _0x4839e2=[];var _0x37865d=squel[_0x217a('0x4f')]();var _0xb6c254;if(_0x41b15e[_0x217a('0x39')][_0x217a('0x50')]){_0xb6c254=as[_0x217a('0x51')](_0x41b15e['query']['search']);var _0x35ef3f=_0xb6c254[_0x217a('0x52')];for(var _0x31cd88=0x0;_0x31cd88<_0xb6c254[_0x217a('0x53')][_0x217a('0x33')];_0x31cd88++){var _0x4505aa=_0xb6c254['conditions'][_0x31cd88];var _0x25f567='c';var _0x2322c7=_(_0x5daffd)[_0x217a('0x32')]()[_0x217a('0x54')](function(_0x124986){return _0x124986===_0x4505aa[_0x217a('0x45')];});if(_0x2322c7)_0x2322c7=_0x5daffd[_0x4505aa[_0x217a('0x45')]];if(!_0x2322c7){if(_0x4505aa[_0x217a('0x45')]==='Tag'){var _0x4a4225=_0x4505aa[_0x217a('0x55')][_0x217a('0x56')](',')[_0x217a('0x57')](function(_0x157a9c){return Number(_0x157a9c);});_0x4a4225[_0x217a('0x58')](function(_0x5c43ad){_0x37865d['or']('CONCAT(\x27,\x27,\x20`TagIds`,\x20\x27,\x27)\x20LIKE\x20?','%,'+_0x5c43ad+',%');});_0x4839e2=_[_0x217a('0x59')](_0x4839e2,_0x4a4225);}else if(_0x4505aa[_0x217a('0x45')]==='User'){_0x337d85[_0x217a('0x5a')]('uc.UserId\x20=\x20?',_0x4505aa[_0x217a('0x55')]);}}else{if(_0x4505aa[_0x217a('0x45')]===_0x217a('0x5b')||_0x2322c7[_0x217a('0x5c')]===_0x217a('0x5d'))_0x4505aa[_0x217a('0x5e')]=_0x217a('0x5f');var _0xaf9d6=as[_0x217a('0x60')](_0x25f567,_0x2322c7[_0x217a('0x61')],_0x4505aa);_0x337d85[_0x35ef3f](_0xaf9d6['text'],_0xaf9d6[_0x217a('0x55')]['start'],_0xaf9d6['value'][_0x217a('0x20')]);}}}else{var _0x52bde0=_(Object[_0x217a('0x32')](_0x41b15e[_0x217a('0x39')]))[_0x217a('0x57')](function(_0x21a7e1){return _0x5daffd[_0x217a('0x3f')](_0x21a7e1)?_0x21a7e1:undefined;})[_0x217a('0x62')](function(_0x3ccbf2){return!_[_0x217a('0x63')](_0x3ccbf2);})['value']();if(_0x41b15e[_0x217a('0x39')][_0x217a('0x64')])_0x52bde0['push'](_0x217a('0x64'));if(!_[_0x217a('0x65')](_0x52bde0)){_0x52bde0[_0x217a('0x58')](function(_0x888c0f){if(_0x888c0f===_0x217a('0x66')){_0x10fa0e['where'](_0x217a('0x67'),[][_0x217a('0x68')](_0x41b15e['query'][_0x888c0f]));}else if(_0x888c0f===_0x217a('0x64')){var _0x2088c1='%'+_0x41b15e[_0x217a('0x39')][_0x888c0f]+'%';_0x10fa0e[_0x217a('0x69')](_0x217a('0x6a'),_0x2088c1);}else{_0x10fa0e['where']('c.'+_0x888c0f+_0x217a('0x6b'),_0x41b15e[_0x217a('0x39')][_0x888c0f]);}});}if(_0x41b15e[_0x217a('0x39')][_0x217a('0x6c')]){_0x4839e2=_['isArray'](_0x41b15e[_0x217a('0x39')][_0x217a('0x6c')])?_0x41b15e[_0x217a('0x39')]['tag']:new Array(_0x41b15e['query'][_0x217a('0x6c')]);_0x4839e2[_0x217a('0x58')](function(_0x57f29e){_0x37865d['or'](_0x217a('0x6d'),'%,'+_0x57f29e+',%');});}if(_0x41b15e[_0x217a('0x39')]['filter']){var _0x2d8bae=_0x41b15e[_0x217a('0x39')]['filter'][_0x217a('0x6e')]('\x5c','\x5c\x5c')[_0x217a('0x6e')](/'/g,'\x27\x27');if(_0x2d8bae[_0x217a('0x56')]('\x20')[_0x217a('0x33')]>0x1){_0x337d85['or']('MATCH\x20(c.firstName,\x20c.lastName,\x20c.phone,\x20c.mobile,\x20c.fax,\x20c.email)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)',qs[_0x217a('0x6f')](_0x2d8bae),null);}else{if(qs[_0x217a('0x70')](_0x2d8bae)){_0x337d85['or'](_0x217a('0x71'),_0x2d8bae+'%');_0x337d85['or']('c.phone\x20LIKE\x20?',_0x2d8bae+'%');_0x337d85['or'](_0x217a('0x72'),_0x2d8bae+'%');_0x337d85['or'](_0x217a('0x73'),_0x2d8bae+'%');}else if(qs['isEmail'](_0x2d8bae)){_0x337d85['or']('c.email\x20LIKE\x20?',_0x2d8bae+'%');}else{_0x337d85['or'](_0x217a('0x74'),'%'+_0x2d8bae+'%');_0x337d85['or'](_0x217a('0x75'),'%'+_0x2d8bae+'%');_0x337d85['or']('c.email\x20LIKE\x20?','%'+_0x2d8bae+'%');}}}}_0x10fa0e['where'](_0x337d85);_0x10fa0e[_0x217a('0x76')]('c.id');var _0xdeffd8={'type':db['Sequelize'][_0x217a('0x77')]['SELECT'],'raw':!![]};var _0x17c0f6=_0x10fa0e[_0x217a('0x78')]()[_0x217a('0x45')](_0x217a('0x79'));if(_0x571a64[_0x217a('0x41')]){_0x571a64[_0x217a('0x41')][_0x217a('0x58')](function(_0x25a948){_0x10fa0e[_0x217a('0x41')]('c.'+_0x25a948[0x0],_0x25a948[0x1]==='DESC'?![]:!![]);});}if(!_[_0x217a('0x65')](_0x4839e2)){_0x10fa0e[_0x217a('0x7a')](_0x37865d);_0x17c0f6[_0x217a('0x69')](_0x217a('0x7b'),_0x4839e2);}BPromise[_0x217a('0x7c')]()[_0x217a('0x2c')](function(){if(!_0xb6c254)return;if(_0x41b15e[_0x217a('0x7d')]['role']!==_0x217a('0x7e'))return;if(!_[_0x217a('0x7f')](_0xb6c254[_0x217a('0x53')],[_0x217a('0x45'),'User'])){return _0x41b15e[_0x217a('0x7d')][_0x217a('0x80')]({'attributes':['id'],'raw':!![]})[_0x217a('0x2c')](function(_0x4ca5c7){if(_[_0x217a('0x65')](_0x4ca5c7)){_0x17c0f6[_0x217a('0x69')](_0x217a('0x81'));_0x10fa0e[_0x217a('0x69')](_0x217a('0x81'));}else{_0x17c0f6['where'](_0x217a('0x67'),_['map'](_0x4ca5c7,'id'));_0x10fa0e[_0x217a('0x69')](_0x217a('0x67'),_[_0x217a('0x57')](_0x4ca5c7,'id'));}});}})[_0x217a('0x2c')](function(){if(_0x41b15e[_0x217a('0x7d')][_0x217a('0x82')]===_0x217a('0x7e')&&!_0xb6c254&&!_0x41b15e['query'][_0x217a('0x66')])return[];return db[_0x217a('0x83')][_0x217a('0x39')](_0x17c0f6[_0x217a('0x84')](),_0xdeffd8);})[_0x217a('0x2c')](function(_0x5758c9){_0x436e3f[_0x217a('0x24')]=_0x5758c9[_0x217a('0x33')];if(_0x436e3f[_0x217a('0x24')]===0x0)return[];return db[_0x217a('0x83')][_0x217a('0x39')](_0x381b44[_0x217a('0x84')](),_0xdeffd8)[_0x217a('0x2c')](function(_0x2bd6bd){_0x23a4f6=_[_0x217a('0x85')](_0x2bd6bd,'id');_0xdeffd8=_[_0x217a('0x86')](_0xdeffd8,{'model':db[_0x217a('0x30')],'mapToModel':!![],'raw':!![],'nest':!![]});if(_0x41b15e[_0x217a('0x39')][_0x217a('0x3e')]){_0x571a64['attributes'][_0x217a('0x58')](function(_0x4d6d2f){_0x10fa0e[_0x217a('0x45')]('c.'+_0x4d6d2f);});}else{_0x10fa0e[_0x217a('0x45')](_0x217a('0x79'));_0x10fa0e[_0x217a('0x45')](_0x217a('0x87'));_0x10fa0e[_0x217a('0x45')](_0x217a('0x88'));_0x10fa0e[_0x217a('0x45')](_0x217a('0x89'));_0x10fa0e['field']('c.mobile');_0x10fa0e[_0x217a('0x45')]('c.fax');_0x10fa0e[_0x217a('0x45')](_0x217a('0x8a'));_0x10fa0e[_0x217a('0x45')](_0x217a('0x8b'));_0x10fa0e['field']('c.createdAt');_0x10fa0e[_0x217a('0x45')](_0x217a('0x8c'));_0x10fa0e[_0x217a('0x45')](_0x217a('0x8d'));_0x10fa0e[_0x217a('0x45')](_0x217a('0x8e'),_0x217a('0x8f'));}if(_0x571a64[_0x217a('0x26')])_0x10fa0e['limit'](_0x571a64[_0x217a('0x26')]);if(_0x571a64[_0x217a('0x25')])_0x10fa0e[_0x217a('0x25')](_0x571a64[_0x217a('0x25')]);return db[_0x217a('0x83')][_0x217a('0x39')](_0x10fa0e[_0x217a('0x84')](),_0xdeffd8);});})[_0x217a('0x2c')](function(_0x586b23){_0x586b23[_0x217a('0x58')](function(_0x426107){if(_0x426107[_0x217a('0x8f')]){_0x426107[_0x217a('0x90')]=[];_0x426107['TagIds'][_0x217a('0x56')](',')[_0x217a('0x58')](function(_0x43259f){_0x426107[_0x217a('0x90')][_0x217a('0x35')](_0x23a4f6[_0x43259f]);});}delete _0x426107[_0x217a('0x8f')];});_0x436e3f[_0x217a('0x91')]=_0x586b23;return _0x436e3f;})[_0x217a('0x2c')](respondWithFilteredResult(_0x40b230,_0x571a64));})['catch'](handleError(_0x40b230,null));};exports['destroy']=function(_0x3bf91e,_0x35ff3b){return db[_0x217a('0x30')]['find']({'where':{'id':_0x3bf91e[_0x217a('0x92')]['id']}})[_0x217a('0x2c')](handleEntityNotFound(_0x35ff3b,null))[_0x217a('0x2c')](removeEntity(_0x35ff3b,null))[_0x217a('0x93')](handleError(_0x35ff3b,null));};exports[_0x217a('0x31')]=function(_0x25c5e2,_0x149f67){return db['CmContact'][_0x217a('0x31')]()[_0x217a('0x2c')](function(_0x201a3a){delete _0x201a3a[_0x217a('0x94')];for(var _0x2ce5b5=0x0;_0x2ce5b5<Object[_0x217a('0x32')](_0x201a3a)['length'];_0x2ce5b5++){var _0x1863f4=Object['keys'](_0x201a3a)[_0x2ce5b5];if(!_[_0x217a('0x95')](_0x1863f4,_0x217a('0x34'))){_0x201a3a[_0x1863f4][_0x217a('0x96')]=_0x1863f4;_0x201a3a[_0x1863f4]['displayName']=_0x1863f4;}}return _0x201a3a;})[_0x217a('0x2c')](function(_0xf1d7e8){var _0x142e18={'where':{'$or':[{'ListId':_0x25c5e2['query']['id']},{'ListId':null}]},'raw':!![]};return db[_0x217a('0x97')][_0x217a('0x98')](_0x142e18)[_0x217a('0x2c')](function(_0x2fbdf1){for(var _0x3c2215=0x0;_0x3c2215<_0x2fbdf1[_0x217a('0x33')];_0x3c2215++){var _0x39a56b=_0x217a('0x34')+_0x2fbdf1[_0x3c2215]['id'];_0xf1d7e8[_0x39a56b][_0x217a('0x96')]=_0x39a56b;_0xf1d7e8[_0x39a56b][_0x217a('0x99')]=_0x2fbdf1[_0x3c2215][_0x217a('0x9a')];_0xf1d7e8[_0x39a56b]['custom']={'type':_0x2fbdf1[_0x3c2215][_0x217a('0x61')],'values':_0x2fbdf1[_0x3c2215][_0x217a('0x9b')]};}Object['keys'](_0xf1d7e8)[_0x217a('0x58')](function(_0x3180ba){if(!_0xf1d7e8[_0x3180ba][_0x217a('0x3f')](_0x217a('0x96'))){delete _0xf1d7e8[_0x3180ba];}});return _0xf1d7e8;});})[_0x217a('0x2c')](respondWithResult(_0x149f67,null))[_0x217a('0x93')](handleError(_0x149f67,null));};exports[_0x217a('0x86')]=function(_0x185fad,_0x55194c){var _0x1e7b92;var _0x1fea77;var _0x56602f;if(_0x185fad[_0x217a('0x9c')]['id']){delete _0x185fad[_0x217a('0x9c')]['id'];}return db['CmContact'][_0x217a('0x98')]({'where':{'id':[_0x185fad[_0x217a('0x9c')]['to'],_0x185fad[_0x217a('0x9c')]['from']]}})[_0x217a('0x2c')](function(_0x56389f){if(_0x56389f){if(_0x56389f['length']!==0x2){return null;}_0x56389f[0x0]=_0x56389f[0x0]['get']({'plain':!![]});_0x56389f[0x1]=_0x56389f[0x1][_0x217a('0x9d')]({'plain':!![]});delete _0x56389f[0x0]['id'];delete _0x56389f[0x1]['id'];return _[_0x217a('0x9e')](_0x56389f[0x0],_0x56389f[0x1],function(_0x1e1b14,_0x744b9c){if(Array[_0x217a('0x9f')](_0x744b9c)&&!_0x744b9c[_0x217a('0x33')]){return _0x1e1b14;}else if(!_0x744b9c){return _0x1e1b14;}});}})[_0x217a('0x2c')](handleEntityNotFound(_0x55194c,null))['then'](function(_0x39c9b2){if(_0x39c9b2){if(_0x39c9b2['tags']&&_[_0x217a('0x9f')](_0x39c9b2['tags'])){_0x39c9b2['tags']=_0x39c9b2[_0x217a('0x94')][_0x217a('0xa0')]();}logger[_0x217a('0xa1')]('[CmContact][merge]\x20to\x20%s\x20from\x20%s',_0x185fad['body']['to'],_0x185fad['body'][_0x217a('0x46')]);return db['CmHopper'][_0x217a('0x2d')]({'where':{'ContactId':[_0x185fad[_0x217a('0x9c')]['to'],_0x185fad[_0x217a('0x9c')][_0x217a('0x46')]]}})[_0x217a('0x2c')](function(_0x1627d3){logger[_0x217a('0xa1')](_0x217a('0xa2'),_0x1627d3);return db[_0x217a('0xa3')][_0x217a('0x2d')]({'where':{'ContactId':[_0x185fad[_0x217a('0x9c')]['to'],_0x185fad[_0x217a('0x9c')][_0x217a('0x46')]]}})[_0x217a('0x2c')](function(_0xd73642){logger[_0x217a('0xa1')](_0x217a('0xa4'),_0xd73642);return db[_0x217a('0x30')][_0x217a('0xa5')](_0x39c9b2);});});}})[_0x217a('0x2c')](function(_0x5f0712){if(_0x5f0712){_0x1e7b92=_0x5f0712;_0x1fea77={'ContactId':_0x1e7b92['id']};_0x56602f={'where':{'ContactId':[_0x185fad['body']['to'],_0x185fad[_0x217a('0x9c')][_0x217a('0x46')]]}};return db['ChatInteraction'][_0x217a('0x2b')](_0x1fea77,_0x56602f);}})[_0x217a('0x2c')](function(){if(_0x1e7b92){return db[_0x217a('0xa6')][_0x217a('0x2b')](_0x1fea77,_0x56602f);}})[_0x217a('0x2c')](function(){if(_0x1e7b92){return db[_0x217a('0xa7')][_0x217a('0x2b')](_0x1fea77,_0x56602f);}})[_0x217a('0x2c')](function(){if(_0x1e7b92){return db[_0x217a('0xa8')]['update'](_0x1fea77,_0x56602f);}})[_0x217a('0x2c')](function(){if(_0x1e7b92){return db[_0x217a('0xa9')][_0x217a('0x2b')](_0x1fea77,_0x56602f);}})[_0x217a('0x2c')](function(){if(_0x1e7b92){return db[_0x217a('0xa8')]['update'](_0x1fea77,_0x56602f);}})[_0x217a('0x2c')](function(){if(_0x1e7b92){return db[_0x217a('0xa9')][_0x217a('0x2b')](_0x1fea77,_0x56602f);}})[_0x217a('0x2c')](function(){if(_0x1e7b92){return db[_0x217a('0xaa')][_0x217a('0x2b')](_0x1fea77,_0x56602f);}})[_0x217a('0x2c')](function(){if(_0x1e7b92){return db[_0x217a('0xab')]['update'](_0x1fea77,_0x56602f);}})[_0x217a('0x2c')](function(){if(_0x1e7b92){return db[_0x217a('0xac')][_0x217a('0x2b')](_0x1fea77,_0x56602f);}})[_0x217a('0x2c')](function(){if(_0x1e7b92){return db['FaxMessage']['update'](_0x1fea77,_0x56602f);}})[_0x217a('0x2c')](function(){if(_0x1e7b92){return db[_0x217a('0xad')][_0x217a('0x2b')](_0x1fea77,_0x56602f);}})[_0x217a('0x2c')](function(){if(_0x1e7b92){return db['OpenchannelMessage'][_0x217a('0x2b')](_0x1fea77,_0x56602f);}})[_0x217a('0x2c')](function(){if(_0x1e7b92){return db[_0x217a('0xae')][_0x217a('0x2b')](_0x1fea77,_0x56602f);}})[_0x217a('0x2c')](function(){if(_0x1e7b92){return db[_0x217a('0xaf')][_0x217a('0x2b')](_0x1fea77,_0x56602f);}})[_0x217a('0x2c')](function(){if(_0x1e7b92){return db['ReportAgentPreview'][_0x217a('0x2b')](_0x1fea77,_0x56602f);}})[_0x217a('0x2c')](function(){if(_0x1e7b92){return db[_0x217a('0xb0')][_0x217a('0x2b')](_0x1fea77,_0x56602f);}})[_0x217a('0x2c')](function(){if(_0x1e7b92){return db[_0x217a('0xb1')][_0x217a('0x2b')](_0x1fea77,_0x56602f);}})[_0x217a('0x2c')](function(){if(_0x1e7b92){return db[_0x217a('0xb2')]['update'](_0x1fea77,_0x56602f);}})['then'](function(){if(_0x1e7b92){return db[_0x217a('0xb3')]['update'](_0x1fea77,_0x56602f);}})[_0x217a('0x2c')](function(){if(_0x1e7b92){return db['OpenchannelQueueReport'][_0x217a('0x2b')](_0x1fea77,_0x56602f);}})[_0x217a('0x2c')](function(){if(_0x1e7b92){return db[_0x217a('0xb4')][_0x217a('0x2b')](_0x1fea77,_0x56602f);}})[_0x217a('0x2c')](function(){if(_0x1e7b92){return db[_0x217a('0xb5')][_0x217a('0x2b')](_0x1fea77,_0x56602f);}})[_0x217a('0x2c')](function(){if(_0x1e7b92){return db['WhatsappInteraction'][_0x217a('0x2b')](_0x1fea77,_0x56602f);}})[_0x217a('0x2c')](function(){if(_0x1e7b92){return db['WhatsappMessage']['update'](_0x1fea77,_0x56602f);}})[_0x217a('0x2c')](function(){if(_0x1e7b92){return db[_0x217a('0xb6')][_0x217a('0x2b')](_0x1fea77,_0x56602f);}})[_0x217a('0x2c')](function(){if(_0x1e7b92){return db[_0x217a('0x30')][_0x217a('0x2d')]({'where':{'id':[_0x185fad[_0x217a('0x9c')]['to'],_0x185fad[_0x217a('0x9c')]['from']]}});}})[_0x217a('0x2c')](function(){if(_0x1e7b92){return _0x1e7b92;}})[_0x217a('0x2c')](respondWithResult(_0x55194c,null))[_0x217a('0x93')](handleError(_0x55194c,null));};exports[_0x217a('0xa5')]=function(_0x4f872f,_0x23608d){return db['CmContact'][_0x217a('0x31')]()[_0x217a('0x2c')](function(_0x4c763a){if(_0x4f872f[_0x217a('0x9c')]['tags']&&_[_0x217a('0x9f')](_0x4f872f[_0x217a('0x9c')][_0x217a('0x94')])){if(_0x4f872f[_0x217a('0x9c')][_0x217a('0x94')]['length']){_0x4f872f[_0x217a('0x9c')][_0x217a('0x94')]=_0x4f872f[_0x217a('0x9c')][_0x217a('0x94')]['join'](';')+';';}else{_0x4f872f[_0x217a('0x9c')]['tags']=null;}}else{_0x4f872f[_0x217a('0x9c')]['tags']=null;}return db['CmContact'][_0x217a('0xa5')](_0x4f872f['body'],{'fields':_['keys'](_0x4c763a),'raw':!![]});})[_0x217a('0x2c')](respondWithResult(_0x23608d,0xc9))[_0x217a('0x93')](handleError(_0x23608d,null));};exports[_0x217a('0xb7')]=function(_0x2c7513,_0x378e4c){var _0x3c5bea=[];var _0x440dc1=0x0;var _0x430a24=0x0;var _0x445bdd=0x0;return db['CmContact'][_0x217a('0x31')]()['then'](function(_0x5754b1){return BPromise[_0x217a('0xb8')](_0x2c7513[_0x217a('0x9c')],function(_0x422a5c){var _0x16998e={'where':{'$or':[]},'defaults':_0x422a5c,'fields':_[_0x217a('0x32')](_0x5754b1),'raw':!![]};if(_0x422a5c[_0x217a('0xb9')]){for(var _0x20551c=0x0;_0x20551c<_0x422a5c[_0x217a('0xb9')][_0x217a('0x33')];_0x20551c++){var _0x53fccb={};_0x53fccb[_0x422a5c[_0x217a('0xb9')][_0x20551c]]=_0x422a5c[_0x422a5c[_0x217a('0xb9')][_0x20551c]];_0x16998e[_0x217a('0x69')]['$or']['push'](_0x53fccb);}_0x16998e[_0x217a('0x69')][_0x217a('0x66')]=_0x422a5c[_0x217a('0x66')];}return db[_0x217a('0x30')][_0x217a('0xba')](_0x16998e)[_0x217a('0xbb')](function(_0x424fe3,_0x3f63f1){if(_0x3f63f1){_0x440dc1++;}else{_0x445bdd++;}})[_0x217a('0x93')](function(_0x355aac){console[_0x217a('0x2e')](_0x355aac);_0x430a24++;});});})[_0x217a('0x2c')](function(_0x5d37ec){if(_0x5d37ec){return{'success':_0x440dc1,'failure':_0x430a24,'duplicates':_0x445bdd};}})[_0x217a('0x2c')](respondWithResult(_0x378e4c,0xc9))[_0x217a('0x93')](handleError(_0x378e4c,null));};exports[_0x217a('0xbc')]=function(_0x15e66b,_0x22278c,_0x2502f5){var _0x50c047;return db[_0x217a('0x30')][_0x217a('0x31')]()[_0x217a('0x2c')](function(_0x253751){return db[_0x217a('0x30')][_0x217a('0x54')]({'where':{'id':_0x15e66b[_0x217a('0x92')]['id']},'include':[{'model':db['Tag'],'as':_0x217a('0x90'),'attributes':['id',_0x217a('0x2f'),_0x217a('0xbd')],'required':_0x15e66b[_0x217a('0x39')][_0x217a('0x6c')]?!![]:![]}],'attributes':_['keys'](_0x253751)});})['then'](function(_0xb97f2){_0x50c047=_0xb97f2[_0x217a('0x9d')]({'plain':!![]});var _0x4e0139={'where':{'$and':[{'ListId':{'$ne':null}}]}};if(_0xb97f2&&_0xb97f2[_0x217a('0x66')]){if(_0xb97f2[_0x217a('0x66')]){_0x4e0139[_0x217a('0x69')][_0x217a('0xbe')][_0x217a('0x35')]({'ListId':{'$ne':_0xb97f2[_0x217a('0x66')]}});}}return db[_0x217a('0x97')]['findAll'](_0x4e0139);})['then'](function(_0x31d596){return _[_0x217a('0xbf')](_0x50c047,_[_0x217a('0x57')](_0x31d596,function(_0x5e9cd8){return util[_0x217a('0xc0')](_0x217a('0xc1'),_0x5e9cd8['id']);}));})[_0x217a('0x2c')](handleEntityNotFound(_0x22278c,null))['then'](respondWithResult(_0x22278c,null))['catch'](handleError(_0x22278c,null));};exports[_0x217a('0x2b')]=function(_0x39210a,_0xa63091){var _0xa2dcb3;if(_0x39210a[_0x217a('0x9c')]['id']){delete _0x39210a[_0x217a('0x9c')]['id'];}return db[_0x217a('0x30')]['find']({'where':{'id':_0x39210a['params']['id']}})['then'](handleEntityNotFound(_0xa63091,null))[_0x217a('0x2c')](saveUpdates(_0x39210a[_0x217a('0x9c')],null))['then'](function(_0x3f6c2a){_0xa2dcb3=_0x3f6c2a;var _0x4d3066={'where':{'$and':[{'ListId':{'$ne':null}}]}};if(_0x3f6c2a&&_0x3f6c2a[_0x217a('0x66')]){if(_0x3f6c2a[_0x217a('0x66')]){_0x4d3066[_0x217a('0x69')][_0x217a('0xbe')][_0x217a('0x35')]({'ListId':{'$ne':_0x3f6c2a['ListId']}});}}return db['CmCustomField'][_0x217a('0x98')](_0x4d3066);})['then'](function(_0x56c990){if(_0x56c990){return _[_0x217a('0xbf')](_[_0x217a('0xc2')](_0x39210a[_0x217a('0x9c')],function(_0xf6601d,_0x16cef3){return _['startsWith'](_0x16cef3,'cf_');}),_[_0x217a('0x57')](_0x56c990,function(_0xa3409){return util[_0x217a('0xc0')]('cf_%d',_0xa3409['id']);}));}})['then'](function(_0x4f4664){if(_0x4f4664&&!_[_0x217a('0x65')](_0x4f4664)){var _0x4afbde=squel[_0x217a('0x2b')]()[_0x217a('0xc3')](_0x217a('0x48'))[_0x217a('0xc4')](_0x4f4664)['where'](_0x217a('0xc5'),_0x39210a[_0x217a('0x92')]['id'])[_0x217a('0xc6')]();return db[_0x217a('0x83')][_0x217a('0x39')](_0x4afbde[_0x217a('0xc7')],{'replacements':_0x4afbde[_0x217a('0x9b')]});}})[_0x217a('0x2c')](function(){if(_0x39210a[_0x217a('0x9c')][_0x217a('0xc8')]&&_0xa2dcb3){return db[_0x217a('0xc9')]['update']({'phone':_0x39210a[_0x217a('0x9c')][_0x217a('0xc8')]},{'where':{'ContactId':_0xa2dcb3['id']}});}})['then'](function(){return _0xa2dcb3;})[_0x217a('0x2c')](respondWithResult(_0xa63091,null))[_0x217a('0x93')](handleError(_0xa63091,null));};exports[_0x217a('0xca')]=function(_0x2af6d0,_0x609370,_0x1a8ce0){var _0x18b6c7={};var _0x21d578={};var _0x43f876;var _0x1f1473;return db[_0x217a('0x30')][_0x217a('0x36')]({'where':{'id':_0x2af6d0[_0x217a('0x92')]['id']}})[_0x217a('0x2c')](handleEntityNotFound(_0x609370,null))[_0x217a('0x2c')](function(_0x5396e2){if(_0x5396e2){_0x43f876=_0x5396e2;_0x21d578[_0x217a('0x3c')]=_[_0x217a('0x32')](db[_0x217a('0xcb')][_0x217a('0xcc')]);_0x21d578[_0x217a('0x39')]=_[_0x217a('0x32')](_0x2af6d0[_0x217a('0x39')]);_0x21d578['filters']=_[_0x217a('0x3b')](_0x21d578[_0x217a('0x3c')],_0x21d578[_0x217a('0x39')]);_0x18b6c7[_0x217a('0x3d')]=_[_0x217a('0x3b')](_0x21d578[_0x217a('0x3c')],qs['fields'](_0x2af6d0[_0x217a('0x39')][_0x217a('0x3e')]));_0x18b6c7[_0x217a('0x3d')]=_0x18b6c7[_0x217a('0x3d')]['length']?_0x18b6c7['attributes']:_0x21d578[_0x217a('0x3c')];_0x18b6c7['order']=qs[_0x217a('0x42')](_0x2af6d0[_0x217a('0x39')]['sort']);_0x18b6c7[_0x217a('0x69')]=qs[_0x217a('0x3a')](_[_0x217a('0x43')](_0x2af6d0[_0x217a('0x39')],_0x21d578[_0x217a('0x3a')]));if(_0x2af6d0[_0x217a('0x39')]['filter']){_0x18b6c7[_0x217a('0x69')]=_[_0x217a('0x86')](_0x18b6c7[_0x217a('0x69')],{'$or':_[_0x217a('0x57')](_0x18b6c7['attributes'],function(_0x335cb4){var _0x481aae={};_0x481aae[_0x335cb4]={'$like':'%'+_0x2af6d0[_0x217a('0x39')][_0x217a('0x62')]+'%'};return _0x481aae;})});}_0x18b6c7=_[_0x217a('0x86')]({},_0x18b6c7,_0x2af6d0[_0x217a('0xcd')]);return _0x43f876[_0x217a('0xca')](_0x18b6c7);}})[_0x217a('0x2c')](function(_0x2c8949){if(_0x2c8949){_0x1f1473=_0x2c8949['length'];if(!_0x2af6d0[_0x217a('0x39')][_0x217a('0x3f')](_0x217a('0x40'))){_0x18b6c7['limit']=qs[_0x217a('0x26')](_0x2af6d0[_0x217a('0x39')][_0x217a('0x26')]);_0x18b6c7[_0x217a('0x25')]=qs['offset'](_0x2af6d0[_0x217a('0x39')][_0x217a('0x25')]);}return _0x43f876[_0x217a('0xca')](_0x18b6c7);}})[_0x217a('0x2c')](function(_0x4da632){if(_0x4da632){return _0x4da632?{'count':_0x1f1473,'rows':_0x4da632}:null;}})[_0x217a('0x2c')](respondWithResult(_0x609370,null))[_0x217a('0x93')](handleError(_0x609370,null));};exports[_0x217a('0xce')]=function(_0x2c02f2,_0x52905b,_0x12c506){if(_0x2c02f2[_0x217a('0x9c')]['id']){delete _0x2c02f2[_0x217a('0x9c')]['id'];}return db['CmContact'][_0x217a('0x36')]({'where':{'id':_0x2c02f2[_0x217a('0x92')]['id']}})[_0x217a('0x2c')](handleEntityNotFound(_0x52905b,null))[_0x217a('0x2c')](function(_0x165daf){if(_0x165daf){return _0x165daf['setTags'](_0x2c02f2[_0x217a('0x9c')][_0x217a('0xcf')]||[]);}return null;})[_0x217a('0x2c')](respondWithResult(_0x52905b,null))[_0x217a('0x93')](handleError(_0x52905b,null));};exports[_0x217a('0xd0')]=function(_0x2dbebf,_0x216376,_0x498a89){var _0x2c0fd6={'raw':![],'where':{}};var _0x583e3e={};var _0x571a60={'count':0x0,'rows':[]};return db[_0x217a('0x30')][_0x217a('0x36')]({'where':{'id':_0x2dbebf[_0x217a('0x92')]['id']}})[_0x217a('0x2c')](handleEntityNotFound(_0x216376,null))[_0x217a('0x2c')](function(_0x529b71){if(_0x529b71){_0x583e3e[_0x217a('0x3c')]=_['keys'](db['CmHopper'][_0x217a('0xcc')]);_0x583e3e[_0x217a('0x39')]=_['keys'](_0x2dbebf[_0x217a('0x39')]);_0x583e3e['filters']=_['intersection'](_0x583e3e['model'],_0x583e3e['query']);_0x2c0fd6[_0x217a('0x3d')]=_[_0x217a('0x3b')](_0x583e3e[_0x217a('0x3c')],qs['fields'](_0x2dbebf[_0x217a('0x39')][_0x217a('0x3e')]));_0x2c0fd6['attributes']=_0x2c0fd6[_0x217a('0x3d')][_0x217a('0x33')]?_0x2c0fd6['attributes']:_0x583e3e['model'];if(!_0x2dbebf[_0x217a('0x39')][_0x217a('0x3f')](_0x217a('0x40'))){_0x2c0fd6['limit']=qs['limit'](_0x2dbebf[_0x217a('0x39')][_0x217a('0x26')]);_0x2c0fd6[_0x217a('0x25')]=qs[_0x217a('0x25')](_0x2dbebf[_0x217a('0x39')]['offset']);}_0x2c0fd6[_0x217a('0x41')]=qs[_0x217a('0x42')](_0x2dbebf[_0x217a('0x39')][_0x217a('0x42')]);_0x2c0fd6['where']=qs[_0x217a('0x3a')](_[_0x217a('0x43')](_0x2dbebf[_0x217a('0x39')],_0x583e3e[_0x217a('0x3a')]));_0x2c0fd6['where'][_0x217a('0xd1')]=_0x529b71['id'];if(_0x2dbebf[_0x217a('0x39')]['filter']){_0x2c0fd6[_0x217a('0x69')]=_[_0x217a('0x86')](_0x2c0fd6['where'],{'$or':_[_0x217a('0x57')](_0x2c0fd6[_0x217a('0x3d')],function(_0x2d6030){var _0x15fd45={};_0x15fd45[_0x2d6030]={'$like':'%'+_0x2dbebf[_0x217a('0x39')][_0x217a('0x62')]+'%'};return _0x15fd45;})});}_0x2c0fd6=_[_0x217a('0x86')]({},_0x2c0fd6,_0x2dbebf[_0x217a('0xcd')]);return db[_0x217a('0xc9')][_0x217a('0x24')]({'where':_0x2c0fd6[_0x217a('0x69')]})['then'](function(_0x401622){_0x571a60[_0x217a('0x24')]=_0x401622;if(_0x2dbebf[_0x217a('0x39')]['includeAll']){_0x2c0fd6[_0x217a('0xd2')]=[{'all':!![]}];}return db[_0x217a('0xc9')][_0x217a('0x98')](_0x2c0fd6);})['then'](function(_0x35f86f){_0x571a60[_0x217a('0x91')]=_0x35f86f;return _0x571a60;});}})[_0x217a('0x2c')](respondWithFilteredResult(_0x216376,_0x2c0fd6))[_0x217a('0x93')](handleError(_0x216376,null));};exports[_0x217a('0xd3')]=function(_0x4df93f,_0x2f7e55,_0x4dda29){var _0x242a18={'raw':!![],'where':{}};var _0xce5f9={};var _0x5b3018={'count':0x0,'rows':[]};return db[_0x217a('0x30')][_0x217a('0x36')]({'where':{'id':_0x4df93f['params']['id']}})[_0x217a('0x2c')](handleEntityNotFound(_0x2f7e55,null))[_0x217a('0x2c')](function(_0x44b4cb){if(_0x44b4cb){_0xce5f9[_0x217a('0x3c')]=_[_0x217a('0x32')](db[_0x217a('0xaf')]['rawAttributes']);_0xce5f9[_0x217a('0x39')]=_[_0x217a('0x32')](_0x4df93f[_0x217a('0x39')]);_0xce5f9['filters']=_['intersection'](_0xce5f9[_0x217a('0x3c')],_0xce5f9['query']);_0x242a18[_0x217a('0x3d')]=_['intersection'](_0xce5f9[_0x217a('0x3c')],qs[_0x217a('0x3e')](_0x4df93f[_0x217a('0x39')]['fields']));_0x242a18[_0x217a('0x3d')]=_0x242a18['attributes'][_0x217a('0x33')]?_0x242a18[_0x217a('0x3d')]:_0xce5f9[_0x217a('0x3c')];if(!_0x4df93f[_0x217a('0x39')][_0x217a('0x3f')](_0x217a('0x40'))){_0x242a18[_0x217a('0x26')]=qs[_0x217a('0x26')](_0x4df93f[_0x217a('0x39')]['limit']);_0x242a18[_0x217a('0x25')]=qs[_0x217a('0x25')](_0x4df93f[_0x217a('0x39')][_0x217a('0x25')]);}_0x242a18[_0x217a('0x41')]=qs[_0x217a('0x42')](_0x4df93f['query'][_0x217a('0x42')]);_0x242a18[_0x217a('0x69')]=qs[_0x217a('0x3a')](_['pick'](_0x4df93f[_0x217a('0x39')],_0xce5f9['filters']));_0x242a18[_0x217a('0x69')][_0x217a('0xd1')]=_0x44b4cb['id'];if(_0x4df93f['query'][_0x217a('0x62')]){_0x242a18['where']=_[_0x217a('0x86')](_0x242a18['where'],{'$or':_[_0x217a('0x57')](_0x242a18['attributes'],function(_0x179537){var _0x51e960={};_0x51e960[_0x179537]={'$like':'%'+_0x4df93f[_0x217a('0x39')][_0x217a('0x62')]+'%'};return _0x51e960;})});}_0x242a18=_[_0x217a('0x86')]({},_0x242a18,_0x4df93f[_0x217a('0xcd')]);return db[_0x217a('0xaf')]['count']({'where':_0x242a18['where']})['then'](function(_0x3152d3){_0x5b3018[_0x217a('0x24')]=_0x3152d3;if(_0x4df93f[_0x217a('0x39')][_0x217a('0xd4')]){_0x242a18[_0x217a('0xd2')]=[{'all':!![]}];}return db[_0x217a('0xaf')][_0x217a('0x98')](_0x242a18);})[_0x217a('0x2c')](function(_0x31383e){_0x5b3018[_0x217a('0x91')]=_0x31383e;return _0x5b3018;});}})[_0x217a('0x2c')](respondWithFilteredResult(_0x2f7e55,_0x242a18))[_0x217a('0x93')](handleError(_0x2f7e55,null));};exports[_0x217a('0xd5')]=function(_0x3a64b3,_0x848719,_0x3a2102){var _0x20395b={'raw':!![],'where':{}};var _0x38af96={};var _0x266bf5={'count':0x0,'rows':[]};return db[_0x217a('0x30')]['findOne']({'where':{'id':_0x3a64b3[_0x217a('0x92')]['id']}})['then'](handleEntityNotFound(_0x848719,null))['then'](function(_0x350691){if(_0x350691){_0x38af96['model']=_['keys'](db['CmHopperFinal']['rawAttributes']);_0x38af96[_0x217a('0x39')]=_[_0x217a('0x32')](_0x3a64b3['query']);_0x38af96[_0x217a('0x3a')]=_[_0x217a('0x3b')](_0x38af96[_0x217a('0x3c')],_0x38af96[_0x217a('0x39')]);_0x20395b['attributes']=_[_0x217a('0x3b')](_0x38af96['model'],qs[_0x217a('0x3e')](_0x3a64b3[_0x217a('0x39')][_0x217a('0x3e')]));_0x20395b[_0x217a('0x3d')]=_0x20395b[_0x217a('0x3d')]['length']?_0x20395b[_0x217a('0x3d')]:_0x38af96['model'];if(!_0x3a64b3[_0x217a('0x39')][_0x217a('0x3f')]('nolimit')){_0x20395b[_0x217a('0x26')]=qs[_0x217a('0x26')](_0x3a64b3['query'][_0x217a('0x26')]);_0x20395b[_0x217a('0x25')]=qs[_0x217a('0x25')](_0x3a64b3[_0x217a('0x39')][_0x217a('0x25')]);}_0x20395b['order']=qs[_0x217a('0x42')](_0x3a64b3[_0x217a('0x39')][_0x217a('0x42')]);_0x20395b['where']=qs[_0x217a('0x3a')](_[_0x217a('0x43')](_0x3a64b3['query'],_0x38af96['filters']));_0x20395b['where'][_0x217a('0xd1')]=_0x350691['id'];if(_0x3a64b3['query'][_0x217a('0x62')]){_0x20395b['where']=_[_0x217a('0x86')](_0x20395b[_0x217a('0x69')],{'$or':_['map'](_0x20395b[_0x217a('0x3d')],function(_0x463bcb){var _0x13fb05={};_0x13fb05[_0x463bcb]={'$like':'%'+_0x3a64b3[_0x217a('0x39')][_0x217a('0x62')]+'%'};return _0x13fb05;})});}_0x20395b=_['merge']({},_0x20395b,_0x3a64b3[_0x217a('0xcd')]);return db[_0x217a('0xae')][_0x217a('0x24')]({'where':_0x20395b['where']})[_0x217a('0x2c')](function(_0x49dcb1){_0x266bf5['count']=_0x49dcb1;if(_0x3a64b3[_0x217a('0x39')][_0x217a('0xd4')]){_0x20395b[_0x217a('0xd2')]=[{'all':!![]}];}return db[_0x217a('0xae')][_0x217a('0x98')](_0x20395b);})[_0x217a('0x2c')](function(_0x43ea5a){_0x266bf5[_0x217a('0x91')]=_0x43ea5a;return _0x266bf5;});}})['then'](respondWithFilteredResult(_0x848719,_0x20395b))['catch'](handleError(_0x848719,null));};exports['getJscriptySessions']=function(_0x562fdc,_0x2cfc60,_0x10d014){var _0x4b703f={'raw':!![],'where':{}};var _0xb2a3b9={};var _0x1a3bea={'count':0x0,'rows':[]};return db['CmContact'][_0x217a('0x36')]({'where':{'id':_0x562fdc[_0x217a('0x92')]['id']}})[_0x217a('0x2c')](handleEntityNotFound(_0x2cfc60,null))[_0x217a('0x2c')](function(_0x4a1d25){if(_0x4a1d25){_0xb2a3b9[_0x217a('0x3c')]=_[_0x217a('0x32')](db[_0x217a('0xb5')][_0x217a('0xcc')]);_0xb2a3b9['query']=_[_0x217a('0x32')](_0x562fdc[_0x217a('0x39')]);_0xb2a3b9['filters']=_[_0x217a('0x3b')](_0xb2a3b9[_0x217a('0x3c')],_0xb2a3b9['query']);_0x4b703f[_0x217a('0x3d')]=_[_0x217a('0x3b')](_0xb2a3b9[_0x217a('0x3c')],qs[_0x217a('0x3e')](_0x562fdc[_0x217a('0x39')]['fields']));_0x4b703f[_0x217a('0x3d')]=_0x4b703f[_0x217a('0x3d')][_0x217a('0x33')]?_0x4b703f[_0x217a('0x3d')]:_0xb2a3b9[_0x217a('0x3c')];if(!_0x562fdc[_0x217a('0x39')]['hasOwnProperty']('nolimit')){_0x4b703f['limit']=qs['limit'](_0x562fdc[_0x217a('0x39')][_0x217a('0x26')]);_0x4b703f[_0x217a('0x25')]=qs[_0x217a('0x25')](_0x562fdc[_0x217a('0x39')][_0x217a('0x25')]);}_0x4b703f['order']=qs['sort'](_0x562fdc[_0x217a('0x39')]['sort']);_0x4b703f[_0x217a('0x69')]=qs[_0x217a('0x3a')](_[_0x217a('0x43')](_0x562fdc[_0x217a('0x39')],_0xb2a3b9['filters']));_0x4b703f[_0x217a('0x69')]['ContactId']=_0x4a1d25['id'];if(_0x562fdc['query'][_0x217a('0x62')]){_0x4b703f[_0x217a('0x69')]=_[_0x217a('0x86')](_0x4b703f[_0x217a('0x69')],{'$or':_['map'](_0x4b703f['attributes'],function(_0xb8f58d){var _0x15117b={};_0x15117b[_0xb8f58d]={'$like':'%'+_0x562fdc['query'][_0x217a('0x62')]+'%'};return _0x15117b;})});}_0x4b703f=_['merge']({},_0x4b703f,_0x562fdc[_0x217a('0xcd')]);return db[_0x217a('0xb5')][_0x217a('0x24')]({'where':_0x4b703f[_0x217a('0x69')]})[_0x217a('0x2c')](function(_0x54018b){_0x1a3bea[_0x217a('0x24')]=_0x54018b;if(_0x562fdc[_0x217a('0x39')][_0x217a('0xd4')]){_0x4b703f[_0x217a('0xd2')]=[{'all':!![]}];}return db[_0x217a('0xb5')][_0x217a('0x98')](_0x4b703f);})['then'](function(_0x215cc7){_0x1a3bea[_0x217a('0x91')]=_0x215cc7;return _0x1a3bea;});}})[_0x217a('0x2c')](respondWithFilteredResult(_0x2cfc60,_0x4b703f))[_0x217a('0x93')](handleError(_0x2cfc60,null));};exports['uploadCsv']=function(_0x4b4143,_0x6f6290,_0x42145d){try{if(!_0x4b4143[_0x217a('0x9c')][_0x217a('0x66')]){throw new Error(_0x217a('0xd6'));}if(!_0x4b4143['body'][_0x217a('0xd7')]){throw new Error(_0x217a('0xd8'));}if(!_0x4b4143[_0x217a('0x9c')]['binding_values']){throw new Error('No\x20association\x20values\x20specified!');}if(!_0x4b4143[_0x217a('0x9c')]['socket_timestamp']){throw new Error(_0x217a('0xd9'));}var _0x322037=_0x4b4143[_0x217a('0x9c')][_0x217a('0xd7')][_0x217a('0x56')](',');var _0x1da752=_0x4b4143[_0x217a('0x9c')][_0x217a('0xda')][_0x217a('0x56')](',');if(!_0x322037['length']||!_0x1da752[_0x217a('0x33')]||_0x322037['length']!==_0x1da752[_0x217a('0x33')]){throw new Error(_0x217a('0xdb'));}_0x4b4143[_0x217a('0x9c')][_0x217a('0x3e')]=_[_0x217a('0xdc')](_0x322037,_0x1da752);if(!_0x4b4143['body']['fields']['phone']){throw new Error('No\x20phone\x20column\x20specified');}if(!_0x4b4143[_0x217a('0x9c')][_0x217a('0x3e')][_0x217a('0xdd')]){throw new Error(_0x217a('0xde'));}var _0x567066=path['join'](config[_0x217a('0xdf')],_0x217a('0xe0'),_0x4b4143[_0x217a('0xe1')][_0x217a('0xe2')]);fs[_0x217a('0xe3')](_0x567066,parseInt('0777',0x8));var _0x2b29c4=require('child_process')[_0x217a('0xe4')](path[_0x217a('0xa0')](__dirname,'../../components/import/cm/csv'),[_0x567066,_0x4b4143[_0x217a('0x9c')][_0x217a('0xd7')],_0x4b4143[_0x217a('0x9c')]['binding_values'],_0x4b4143[_0x217a('0x9c')][_0x217a('0x66')],_0x4b4143[_0x217a('0x9c')][_0x217a('0xe5')],_0x4b4143[_0x217a('0x9c')][_0x217a('0xb9')],_0x4b4143[_0x217a('0x9c')]['socket_timestamp']]);return _0x6f6290[_0x217a('0x21')](0xc8)['json']({'message':_0x217a('0xe6'),'pid':_0x2b29c4[_0x217a('0xe7')]});}catch(_0x557b59){return _0x6f6290['status'](0x1f4)['send'](_0x557b59);}};exports[_0x217a('0xe8')]=function(_0x910c37,_0x578c78,_0x32a751){var _0x1b4531=fs[_0x217a('0xe9')](_0x910c37['file']['path']);Papa[_0x217a('0xea')](_0x1b4531,{'header':!![],'skipEmptyLines':!![],'preview':0x1,'complete':function(_0x536ecb){return _0x578c78[_0x217a('0x21')](0xc8)[_0x217a('0x22')]({'file':_0x910c37['file'],'fields':_0x536ecb[_0x217a('0xeb')]['fields']});}});};exports[_0x217a('0xec')]=function(_0x29b348,_0x4091ae,_0x2811f3){return db[_0x217a('0xed')][_0x217a('0x98')]({'raw':!![],'attributes':['id'],'where':{'role':_0x217a('0x7e')}})[_0x217a('0x2c')](function(_0x25275b){var _0x36f91a=![];if(!_0x29b348[_0x217a('0x9c')][_0x217a('0x66')]){throw new Error(_0x217a('0xd6'));}if(!_0x29b348[_0x217a('0x9c')][_0x217a('0xee')][_0x217a('0xc8')]){throw new Error('No\x20phone\x20column\x20specified');}if(!_0x29b348[_0x217a('0x9c')][_0x217a('0xee')][_0x217a('0xdd')]){throw new Error(_0x217a('0xde'));}if(!_0x29b348['body'][_0x217a('0xef')]){throw new Error(_0x217a('0xd9'));}var _0x393b3c=require(_0x217a('0xf0'))[_0x217a('0xe4')](path[_0x217a('0xa0')](__dirname,_0x217a('0xf1')),[_0x29b348[_0x217a('0x92')]['id'],JSON['stringify'](_0x29b348[_0x217a('0x9c')]),JSON['stringify'](_0x25275b)]);_0x393b3c['on'](_0x217a('0xf2'),function(_0x4429d3){_0x36f91a=!![];return _0x4091ae[_0x217a('0x21')](0xc8)[_0x217a('0x22')]({'message':_0x217a('0xf3'),'pid':_0x393b3c[_0x217a('0xe7')]});});_0x393b3c['on'](_0x217a('0xf4'),function(_0x38ebd5){if(_0x38ebd5&&!_0x36f91a){return _0x4091ae[_0x217a('0x21')](0x1f4)[_0x217a('0x22')]({'message':'error\x20child\x20process','pid':_0x393b3c['pid']});}});})[_0x217a('0x93')](handleError(_0x4091ae,null));};exports[_0x217a('0xf5')]=function(_0x248437,_0x157653){var _0x31806f=[_0x217a('0xf6'),_0x217a('0xf7'),'sms',_0x217a('0xf8'),'fax',_0x217a('0xf9'),'voice'];var _0x412ad5={'offset':0x0,'order':qs[_0x217a('0x42')](_0x217a('0xfa'))},_0x460cb3={'count':0x0,'rows':[]};Promise[_0x217a('0x7c')]()['then'](function(){if(_0x248437[_0x217a('0x39')][_0x217a('0xfb')]){if(!_['includes'](_0x31806f,_0x248437[_0x217a('0x39')]['channel'][_0x217a('0xfc')]())){throw new Error(_0x217a('0xfd'));}_0x31806f=[_0x248437[_0x217a('0x39')][_0x217a('0xfb')]['toLowerCase']()];}if(_0x248437[_0x217a('0x39')][_0x217a('0xfe')]){try{var _0x1c7c2e=JSON[_0x217a('0xea')](_0x248437[_0x217a('0x39')][_0x217a('0xfe')]);if(!moment(_0x1c7c2e[_0x217a('0x46')])['isValid']()){throw new Error('Invalid\x20date\x20for\x20range\x20from\x20filter');}if(!moment(_0x1c7c2e['to'])[_0x217a('0xff')]()){throw new Error(_0x217a('0x100'));}}catch(_0x2ab179){throw new Error(_0x217a('0x101'));}}if(!_0x248437[_0x217a('0x39')][_0x217a('0x3f')](_0x217a('0x40'))){_0x412ad5[_0x217a('0x26')]=qs['limit'](_0x248437[_0x217a('0x39')][_0x217a('0x26')]||0xa);_0x412ad5['offset']=qs[_0x217a('0x25')](_0x248437[_0x217a('0x39')]['offset']);}var _0x3b5730=_0x31806f[_0x217a('0x57')](function(_0x4681e9){if(_0x4681e9===_0x217a('0x102')){var _0x1c7f8c={'attributes':['id',_0x217a('0x103'),'type',_0x217a('0x104'),_0x217a('0x105'),_0x217a('0x106'),_0x217a('0x107'),_0x217a('0x108'),_0x217a('0x109'),_0x217a('0x10a'),_0x217a('0x10b'),_0x217a('0x10c'),_0x217a('0x10d'),_0x217a('0x10e'),'UserId'],'where':{'ContactId':_0x248437[_0x217a('0x92')]['id']},'include':[{'model':db[_0x217a('0xed')],'as':_0x217a('0xed'),'attributes':['id','name',_0x217a('0x10f'),_0x217a('0x9a')]}],'order':[['createdAt',_0x217a('0x110')]]};if(_0x248437[_0x217a('0x39')][_0x217a('0xfe')]){_0x1c7f8c[_0x217a('0x69')][_0x217a('0x10b')]={'$gte':_0x1c7c2e[_0x217a('0x46')],'$lte':_0x1c7c2e['to']};}return db[_0x217a('0xb0')]['findAndCountAll'](_0x1c7f8c)[_0x217a('0x2c')](function(_0xb91709){_0x460cb3[_0x217a('0x24')]+=_0xb91709['count'];return _[_0x217a('0x57')](_0xb91709[_0x217a('0x91')],function(_0x5e55b0){var _0x4105fc=_0x5e55b0[_0x217a('0x9d')]({'plain':!![]});_0x4105fc[_0x217a('0xfb')]=_0x4681e9;if(_0x4105fc[_0x217a('0xed')]){_0x4105fc[_0x217a('0xed')]={'id':_0x4105fc[_0x217a('0xed')]['id'],'name':_0x4105fc[_0x217a('0xed')][_0x217a('0x2f')],'fullname':_0x4105fc[_0x217a('0xed')]['fullname'],'alias':_0x4105fc['User'][_0x217a('0x9a')]};}return _0x4105fc;});});}else{var _0x2a0128=_[_0x217a('0x111')](_0x4681e9)+(_0x4681e9===_0x217a('0xf7')?_0x217a('0x112'):'Account');var _0x2fe15f={'attributes':['id',_0x217a('0x113'),_0x217a('0x114'),'createdAt',_0x217a('0x10a'),_0x217a('0x115'),'secondDisposition',_0x217a('0x116'),_0x217a('0x117'),_0x2a0128+'Id'],'where':{'ContactId':_0x248437[_0x217a('0x92')]['id']},'include':[{'model':db[_0x2a0128],'as':_0x217a('0x118'),'attributes':['id',_0x217a('0x2f'),'key']},{'model':db['User'],'as':_0x217a('0x119'),'attributes':['id',_0x217a('0x2f'),'fullname']},{'model':db[_0x217a('0xcb')],'as':_0x217a('0x90'),'attributes':['id',_0x217a('0x2f'),_0x217a('0xbd')],'through':{'attributes':[]}}],'order':[[_0x217a('0x10b'),'DESC']]};if(_0x248437['query'][_0x217a('0xfe')]){_0x2fe15f[_0x217a('0x69')][_0x217a('0x10b')]={'$gte':_0x1c7c2e['from'],'$lte':_0x1c7c2e['to']};}switch(_0x4681e9){case _0x217a('0xf7'):_0x2fe15f[_0x217a('0x3d')][_0x217a('0x35')]('browserName',_0x217a('0x11a'),_0x217a('0x11b'),_0x217a('0x11c'),_0x217a('0x11d'),'ratingMessage',_0x217a('0x11e'),_0x217a('0x11f'),'referer');break;case'mail':_0x2fe15f[_0x217a('0x3d')][_0x217a('0x35')](_0x217a('0x120'),'substatus');break;case'openchannel':_0x2fe15f['attributes'][_0x217a('0x35')](_0x217a('0x121'),_0x217a('0x122'));break;}return db[_[_0x217a('0x111')](_0x4681e9)+_0x217a('0x123')][_0x217a('0x124')](_0x2fe15f)['then'](function(_0x1349cb){_0x460cb3['count']+=_0x1349cb[_0x217a('0x24')];return _['map'](_0x1349cb[_0x217a('0x91')],function(_0x26b24f){var _0x34ddac=_0x26b24f[_0x217a('0x9d')]({'plain':!![]});_0x34ddac[_0x217a('0xfb')]=_0x4681e9;if(_0x34ddac['Owner']){_0x34ddac[_0x217a('0x119')]={'id':_0x34ddac[_0x217a('0x119')]['id'],'name':_0x34ddac[_0x217a('0x119')][_0x217a('0x2f')],'fullname':_0x34ddac[_0x217a('0x119')][_0x217a('0x10f')]};}return _0x34ddac;});});}});return Promise[_0x217a('0x38')](_0x3b5730);})[_0x217a('0x2c')](function(_0x25a03d){return _(_0x25a03d)[_0x217a('0x125')]()[_0x217a('0x126')](_0x217a('0x10b'))['reverse']()[_0x217a('0x55')]();})['then'](function(_0x13321b){_0x460cb3['rows']=_0x412ad5['limit']?_0x13321b[_0x217a('0x127')](_0x412ad5['offset'],_0x412ad5[_0x217a('0x25')]+_0x412ad5[_0x217a('0x26')]):_0x13321b;return _0x460cb3;})[_0x217a('0x2c')](respondWithFilteredResult(_0x157653,_0x412ad5))[_0x217a('0x93')](handleError(_0x157653,null));};