af32d500f9713428f534a0d0cfade504e4757f5d
[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 _0x814b=['JscriptySessionReport','create','join','bulkCreate','each','duplicates','$or','findOrCreate','show','get','ListId','omit','cf_%d','pickBy','format','table','id\x20=\x20?','toParam','values','phone','getTags','rawAttributes','options','nolimit','setTags','ids','getHoppers','rows','getHopperHistories','ContactId','CmHopperHistory','includeAll','getHopperFinals','include','getJscriptySessions','binding_keys','binding_values','No\x20association\x20values\x20specified!','socket_timestamp','Incorrect\x20binding\x20parameters\x20passed!','zipObject','No\x20phone\x20column\x20specified','No\x20firstName\x20column\x20specified','root','server/files/tmp','file','0777','fork','pid','send','upload','createReadStream','parse','import','No\x20ListId\x20specified','binding','firstName','child_process','../../components/import/cm/csv2','stringify','message','start\x20child\x20process\x20correctly!','exit','error\x20child\x20process','getJourney','mail','chat','sms','openchannel','fax','whatsapp','voice','-createdAt','channel','includes','Invalid\x20channel','toLowerCase','range','Invalid\x20date\x20for\x20range\x20from\x20filter','isValid','Invalid\x20date\x20for\x20range\x20to\x20filter','source','destination','endtime','duration','createdAt','userDisposition','userThirdDisposition','fullname','VoiceCallReport','findAndCountAll','startCase','Website','Account','closed','closedAt','note','secondDisposition','UserId','key','Owner','color','browserName','customerIp','customerPort','deviceModel','osName','ratingMessage','ratingType','referer','subject','substatus','externalUrl','Interaction','sortBy','reverse','slice','html-pdf','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','bluebird','mustache','util','path','sox','to-csv','lodash','squel','jsforce','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','../../config/utils','../../config/license/util','../../mysqldb','redis','defaults','localhost','socket.io-emitter','./cmContact.socket','register','sendStatus','status','end','json','offset','set','Content-Range','apply','reject','save','then','destroy','error','stack','name','index','describe','keys','startsWith','CmCustomField','findOne','cf_','all','length','fieldType','type','query','filters','model','intersection','fields','attributes','hasOwnProperty','limit','order','sort','where','pick','select','field','tools_tags','cm_contacts','left_join','cm_user_has_contacts','uc.CmContactId\x20=\x20c.id','cm_contact_has_tags','ct.CmContactId\x20=\x20c.id','t.id\x20=\x20ct.TagId','expr','search','sqlOperator','conditions','find','Tag','value','split','map','forEach','CONCAT(\x27,\x27,\x20`TagIds`,\x20\x27,\x27)\x20LIKE\x20?','union','and','uc.UserId\x20=\x20?','dateOfBirth','datetime','DATE','buildExpression','text','start','filter','isNil','Contact','isEmpty','concat','CONCAT_WS(\x27\x20\x27,\x20c.firstName,\x20c.lastName,\x20c.email)\x20LIKE\x20?','\x20=\x20?','tag','isArray','replace','MATCH\x20(c.firstName,\x20c.lastName,\x20c.phone,\x20c.mobile,\x20c.fax,\x20c.email)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)','getFullTextValue','isNumeric','c.id\x20LIKE\x20?','c.phone\x20LIKE\x20?','c.mobile\x20LIKE\x20?','c.fax\x20LIKE\x20?','isEmail','c.email\x20LIKE\x20?','c.lastName\x20LIKE\x20?','group','c.id','QueryTypes','clone','DESC','having','t.id\x20IN\x20?','resolve','user','agent','some','User','c.ListId\x20IS\x20NULL','c.ListId\x20IN\x20?','role','count','sequelize','keyBy','merge','c.firstName','c.lastName','c.phone','c.mobile','c.fax','c.email','c.ListId','c.CompanyId','GROUP_CONCAT(DISTINCT\x20t.id)','TagIds','Tags','push','CmContact','params','catch','tags','findAll','displayName','alias','custom','columnName','body','from','mergeWith','info','[CmContact][merge]\x20to\x20%s\x20from\x20%s','CmHopper','[CmContact][merge][destroy][CmHopper],\x20%s','CmHopperBlack','ChatInteraction','update','ChatOfflineMessage','MailMessage','SmsInteraction','SmsMessage','FaxInteraction','FaxMessage','OpenchannelInteraction','OpenchannelMessage','CmHopperFinal','ChatQueueReport','FaxQueueReport','MailQueueReport','SmsQueueReport'];(function(_0x21f337,_0x3de878){var _0xa34f0b=function(_0x2be72c){while(--_0x2be72c){_0x21f337['push'](_0x21f337['shift']());}};_0xa34f0b(++_0x3de878);}(_0x814b,0x1a2));var _0xb814=function(_0x242c29,_0x168f0a){_0x242c29=_0x242c29-0x0;var _0x3f4d1c=_0x814b[_0x242c29];return _0x3f4d1c;};'use strict';var pdf=require(_0xb814('0x0'));var emlformat=require(_0xb814('0x1'));var rimraf=require(_0xb814('0x2'));var zipdir=require(_0xb814('0x3'));var jsonpatch=require(_0xb814('0x4'));var rp=require(_0xb814('0x5'));var moment=require('moment');var BPromise=require(_0xb814('0x6'));var Mustache=require(_0xb814('0x7'));var util=require(_0xb814('0x8'));var path=require(_0xb814('0x9'));var sox=require(_0xb814('0xa'));var csv=require(_0xb814('0xb'));var ejs=require('ejs');var fs=require('fs');var _=require(_0xb814('0xc'));var squel=require(_0xb814('0xd'));var crypto=require('crypto');var jsforce=require(_0xb814('0xe'));var deskjs=require(_0xb814('0xf'));var toCsv=require(_0xb814('0xb'));var querystring=require(_0xb814('0x10'));var Papa=require(_0xb814('0x11'));var Redis=require(_0xb814('0x12'));var authService=require(_0xb814('0x13'));var qs=require(_0xb814('0x14'));var as=require(_0xb814('0x15'));var hardwareService=require(_0xb814('0x16'));var logger=require(_0xb814('0x17'))('api');var utils=require(_0xb814('0x18'));var config=require('../../config/environment');var licenseUtil=require(_0xb814('0x19'));var db=require(_0xb814('0x1a'))['db'];config[_0xb814('0x1b')]=_[_0xb814('0x1c')](config[_0xb814('0x1b')],{'host':_0xb814('0x1d'),'port':0x18eb});var socket=require(_0xb814('0x1e'))(new Redis(config[_0xb814('0x1b')]));require(_0xb814('0x1f'))[_0xb814('0x20')](socket);function respondWithStatusCode(_0x3f4881,_0x44fb96){_0x44fb96=_0x44fb96||0xcc;return function(_0x17f5bd){if(_0x17f5bd){return _0x3f4881[_0xb814('0x21')](_0x44fb96);}return _0x3f4881[_0xb814('0x22')](_0x44fb96)[_0xb814('0x23')]();};}function respondWithResult(_0x45e0d0,_0x265a83){_0x265a83=_0x265a83||0xc8;return function(_0x125ce2){if(_0x125ce2){return _0x45e0d0[_0xb814('0x22')](_0x265a83)[_0xb814('0x24')](_0x125ce2);}};}function respondWithFilteredResult(_0x48c9df,_0x168a48){return function(_0x55ba16){if(_0x55ba16){var _0x270598=_0x55ba16['count'],_0xfac75b=_0x168a48[_0xb814('0x25')],_0x4c3007=_0x168a48['offset']+_0x168a48['limit'],_0x4b55a7;if(_0x4c3007>=_0x270598){_0x4c3007=_0x270598;_0x4b55a7=0xc8;}else{_0x4b55a7=0xce;}_0x48c9df[_0xb814('0x22')](_0x4b55a7);return _0x48c9df[_0xb814('0x26')](_0xb814('0x27'),_0xfac75b+'-'+_0x4c3007+'/'+_0x270598)['json'](_0x55ba16);}return null;};}function patchUpdates(_0xf5b8aa){return function(_0x531032){try{jsonpatch[_0xb814('0x28')](_0x531032,_0xf5b8aa,!![]);}catch(_0x1808a3){return BPromise[_0xb814('0x29')](_0x1808a3);}return _0x531032[_0xb814('0x2a')]();};}function saveUpdates(_0x27352e,_0x2bd039){return function(_0x1f5d40){if(_0x1f5d40){return _0x1f5d40['update'](_0x27352e)[_0xb814('0x2b')](function(_0x52b7a3){return _0x52b7a3;});}return null;};}function removeEntity(_0x3f81d0,_0x457dac){return function(_0x31c7ec){if(_0x31c7ec){return _0x31c7ec[_0xb814('0x2c')]()[_0xb814('0x2b')](function(){_0x3f81d0[_0xb814('0x22')](0xcc)[_0xb814('0x23')]();});}};}function handleEntityNotFound(_0x5755ea,_0x392222){return function(_0xc0ef66){if(!_0xc0ef66){_0x5755ea[_0xb814('0x21')](0x194);}return _0xc0ef66;};}function handleError(_0x349394,_0x32ed56){_0x32ed56=_0x32ed56||0x1f4;return function(_0x1d5965){logger[_0xb814('0x2d')](_0x1d5965[_0xb814('0x2e')]);if(_0x1d5965['name']){delete _0x1d5965[_0xb814('0x2f')];}_0x349394[_0xb814('0x22')](_0x32ed56)['send'](_0x1d5965);};}exports[_0xb814('0x30')]=function(_0x37d24d,_0x530744){var _0x499f22={},_0x20577b={},_0x2051d0={'count':0x0,'rows':[]};return db['CmContact'][_0xb814('0x31')]()['then'](function(_0x6efe9a){var _0x5f3e9b=[];for(var _0x4cfc58=0x0;_0x4cfc58<Object[_0xb814('0x32')](_0x6efe9a)['length'];_0x4cfc58++){var _0x2431e2=Object[_0xb814('0x32')](_0x6efe9a)[_0x4cfc58];if(_[_0xb814('0x33')](_0x2431e2,'cf_')){_0x5f3e9b['push'](db[_0xb814('0x34')][_0xb814('0x35')]({'where':{'id':_['trimStart'](_0x2431e2,_0xb814('0x36'))},'raw':!![]}));}}return BPromise[_0xb814('0x37')](_0x5f3e9b)[_0xb814('0x2b')](function(_0x217b7e){for(var _0x1b78de=0x0;_0x1b78de<_0x217b7e[_0xb814('0x38')];_0x1b78de++){if(_0x217b7e[_0x1b78de]){var _0x3672f3='cf_'+_0x217b7e[_0x1b78de]['id'];var _0x3207ec=_0x6efe9a[_0x3672f3];_0x3207ec[_0xb814('0x39')]=_0x217b7e[_0x1b78de][_0xb814('0x3a')];}}return _0x6efe9a;});})[_0xb814('0x2b')](function(_0x14100d){_0x20577b['model']=_[_0xb814('0x32')](_0x14100d);_0x20577b['query']=_[_0xb814('0x32')](_0x37d24d[_0xb814('0x3b')]);_0x20577b[_0xb814('0x3c')]=_['intersection'](_0x20577b[_0xb814('0x3d')],_0x20577b[_0xb814('0x3b')]);_0x499f22['attributes']=_[_0xb814('0x3e')](_0x20577b[_0xb814('0x3d')],qs[_0xb814('0x3f')](_0x37d24d[_0xb814('0x3b')][_0xb814('0x3f')]));_0x499f22[_0xb814('0x40')]=_0x499f22['attributes'][_0xb814('0x38')]?_0x499f22['attributes']:_0x20577b[_0xb814('0x3d')];if(!_0x37d24d['query'][_0xb814('0x41')]('nolimit')){_0x499f22[_0xb814('0x42')]=qs[_0xb814('0x42')](_0x37d24d['query']['limit']);_0x499f22['offset']=qs['offset'](_0x37d24d[_0xb814('0x3b')][_0xb814('0x25')]);}_0x499f22[_0xb814('0x43')]=qs[_0xb814('0x44')](_0x37d24d['query']['sort']);_0x499f22[_0xb814('0x45')]=qs['filters'](_[_0xb814('0x46')](_0x37d24d[_0xb814('0x3b')],_0x20577b[_0xb814('0x3c')]),_0x14100d);var _0x3063bf=[];var _0x42653f=squel[_0xb814('0x47')]()[_0xb814('0x48')]('id')[_0xb814('0x48')](_0xb814('0x2f'))['field']('color')['from'](_0xb814('0x49'));var _0x5ba0bc=squel[_0xb814('0x47')]()['from'](_0xb814('0x4a'),'c')[_0xb814('0x4b')](_0xb814('0x4c'),'uc',_0xb814('0x4d'))['left_join'](_0xb814('0x4e'),'ct',_0xb814('0x4f'))[_0xb814('0x4b')](_0xb814('0x49'),'t',_0xb814('0x50'))[_0xb814('0x45')]('c.deletedAt\x20IS\x20NULL');var _0x69f060=squel[_0xb814('0x51')]();var _0x9ffd73=[];var _0x365f9e=squel[_0xb814('0x51')]();var _0x144d37;if(_0x37d24d[_0xb814('0x3b')]['search']){_0x144d37=as['parseSearch'](_0x37d24d[_0xb814('0x3b')][_0xb814('0x52')]);var _0x4c08d6=_0x144d37[_0xb814('0x53')];for(var _0x43f1b=0x0;_0x43f1b<_0x144d37[_0xb814('0x54')][_0xb814('0x38')];_0x43f1b++){var _0x40af85=_0x144d37[_0xb814('0x54')][_0x43f1b];var _0x344198='c';var _0xe73300=_(_0x14100d)['keys']()[_0xb814('0x55')](function(_0x17510c){return _0x17510c===_0x40af85['field'];});if(_0xe73300)_0xe73300=_0x14100d[_0x40af85[_0xb814('0x48')]];if(!_0xe73300){if(_0x40af85['field']===_0xb814('0x56')){var _0x37866f=_0x40af85[_0xb814('0x57')][_0xb814('0x58')](',')[_0xb814('0x59')](function(_0x4096d4){return Number(_0x4096d4);});_0x37866f[_0xb814('0x5a')](function(_0x45480e){_0x365f9e['or'](_0xb814('0x5b'),'%,'+_0x45480e+',%');});_0x9ffd73=_[_0xb814('0x5c')](_0x9ffd73,_0x37866f);}else if(_0x40af85['field']==='User'){_0x69f060[_0xb814('0x5d')](_0xb814('0x5e'),_0x40af85[_0xb814('0x57')]);}}else{if(_0x40af85[_0xb814('0x48')]===_0xb814('0x5f')||_0xe73300[_0xb814('0x39')]===_0xb814('0x60'))_0x40af85['castTo']=_0xb814('0x61');var _0x388324=as[_0xb814('0x62')](_0x344198,_0xe73300['type'],_0x40af85);_0x69f060[_0x4c08d6](_0x388324[_0xb814('0x63')],_0x388324['value'][_0xb814('0x64')],_0x388324['value'][_0xb814('0x23')]);}}}else{var _0x3cf8f8=_(Object['keys'](_0x37d24d[_0xb814('0x3b')]))[_0xb814('0x59')](function(_0x148151){return _0x14100d['hasOwnProperty'](_0x148151)?_0x148151:undefined;})[_0xb814('0x65')](function(_0x5f0e58){return!_[_0xb814('0x66')](_0x5f0e58);})[_0xb814('0x57')]();if(_0x37d24d['query'][_0xb814('0x67')])_0x3cf8f8['push']('Contact');if(!_[_0xb814('0x68')](_0x3cf8f8)){_0x3cf8f8[_0xb814('0x5a')](function(_0x34935b){if(_0x34935b==='ListId'){_0x5ba0bc[_0xb814('0x45')]('c.ListId\x20IN\x20?',[][_0xb814('0x69')](_0x37d24d[_0xb814('0x3b')][_0x34935b]));}else if(_0x34935b==='Contact'){var _0x2db5a6='%'+_0x37d24d['query'][_0x34935b]+'%';_0x5ba0bc[_0xb814('0x45')](_0xb814('0x6a'),_0x2db5a6);}else{_0x5ba0bc[_0xb814('0x45')]('c.'+_0x34935b+_0xb814('0x6b'),_0x37d24d[_0xb814('0x3b')][_0x34935b]);}});}if(_0x37d24d[_0xb814('0x3b')][_0xb814('0x6c')]){_0x9ffd73=_[_0xb814('0x6d')](_0x37d24d['query'][_0xb814('0x6c')])?_0x37d24d[_0xb814('0x3b')]['tag']:new Array(_0x37d24d[_0xb814('0x3b')][_0xb814('0x6c')]);_0x9ffd73['forEach'](function(_0x371000){_0x365f9e['or']('CONCAT(\x27,\x27,\x20`TagIds`,\x20\x27,\x27)\x20LIKE\x20?','%,'+_0x371000+',%');});}if(_0x37d24d['query'][_0xb814('0x65')]){var _0x5257be=_0x37d24d[_0xb814('0x3b')][_0xb814('0x65')][_0xb814('0x6e')]('\x5c','\x5c\x5c')['replace'](/'/g,'\x27\x27');if(_0x5257be[_0xb814('0x58')]('\x20')['length']>0x1){_0x69f060['or'](_0xb814('0x6f'),qs[_0xb814('0x70')](_0x5257be),null);}else{if(qs[_0xb814('0x71')](_0x5257be)){_0x69f060['or'](_0xb814('0x72'),_0x5257be+'%');_0x69f060['or'](_0xb814('0x73'),_0x5257be+'%');_0x69f060['or'](_0xb814('0x74'),_0x5257be+'%');_0x69f060['or'](_0xb814('0x75'),_0x5257be+'%');}else if(qs[_0xb814('0x76')](_0x5257be)){_0x69f060['or'](_0xb814('0x77'),_0x5257be+'%');}else{_0x69f060['or']('c.firstName\x20LIKE\x20?','%'+_0x5257be+'%');_0x69f060['or'](_0xb814('0x78'),'%'+_0x5257be+'%');_0x69f060['or'](_0xb814('0x77'),'%'+_0x5257be+'%');}}}}_0x5ba0bc[_0xb814('0x45')](_0x69f060);_0x5ba0bc[_0xb814('0x79')](_0xb814('0x7a'));var _0x3d4843={'type':db['Sequelize'][_0xb814('0x7b')]['SELECT'],'raw':!![]};var _0x3cd4f7=_0x5ba0bc[_0xb814('0x7c')]()[_0xb814('0x48')]('c.id');if(_0x499f22[_0xb814('0x43')]){_0x499f22['order'][_0xb814('0x5a')](function(_0x4a65d0){_0x5ba0bc[_0xb814('0x43')]('c.'+_0x4a65d0[0x0],_0x4a65d0[0x1]===_0xb814('0x7d')?![]:!![]);});}if(!_[_0xb814('0x68')](_0x9ffd73)){_0x5ba0bc[_0xb814('0x7e')](_0x365f9e);_0x3cd4f7[_0xb814('0x45')](_0xb814('0x7f'),_0x9ffd73);}BPromise[_0xb814('0x80')]()['then'](function(){if(!_0x144d37)return;if(_0x37d24d[_0xb814('0x81')]['role']!==_0xb814('0x82'))return;if(!_[_0xb814('0x83')](_0x144d37[_0xb814('0x54')],[_0xb814('0x48'),_0xb814('0x84')])){return _0x37d24d[_0xb814('0x81')]['getLists']({'attributes':['id'],'raw':!![]})[_0xb814('0x2b')](function(_0x1a2603){if(_['isEmpty'](_0x1a2603)){_0x3cd4f7[_0xb814('0x45')](_0xb814('0x85'));_0x5ba0bc[_0xb814('0x45')](_0xb814('0x85'));}else{_0x3cd4f7[_0xb814('0x45')]('c.ListId\x20IN\x20?',_[_0xb814('0x59')](_0x1a2603,'id'));_0x5ba0bc['where'](_0xb814('0x86'),_[_0xb814('0x59')](_0x1a2603,'id'));}});}})[_0xb814('0x2b')](function(){if(_0x37d24d[_0xb814('0x81')][_0xb814('0x87')]===_0xb814('0x82')&&!_0x144d37&&!_0x37d24d['query']['ListId'])return[];return db['sequelize'][_0xb814('0x3b')](_0x3cd4f7['toString'](),_0x3d4843);})[_0xb814('0x2b')](function(_0x1d3954){_0x2051d0[_0xb814('0x88')]=_0x1d3954['length'];if(_0x2051d0[_0xb814('0x88')]===0x0)return[];return db[_0xb814('0x89')][_0xb814('0x3b')](_0x42653f['toString'](),_0x3d4843)[_0xb814('0x2b')](function(_0x1bf0b7){_0x3063bf=_[_0xb814('0x8a')](_0x1bf0b7,'id');_0x3d4843=_[_0xb814('0x8b')](_0x3d4843,{'model':db['CmContact'],'mapToModel':!![],'raw':!![],'nest':!![]});if(_0x37d24d['query'][_0xb814('0x3f')]){_0x499f22[_0xb814('0x40')][_0xb814('0x5a')](function(_0x408870){_0x5ba0bc[_0xb814('0x48')]('c.'+_0x408870);});}else{_0x5ba0bc[_0xb814('0x48')](_0xb814('0x7a'));_0x5ba0bc[_0xb814('0x48')](_0xb814('0x8c'));_0x5ba0bc[_0xb814('0x48')](_0xb814('0x8d'));_0x5ba0bc[_0xb814('0x48')](_0xb814('0x8e'));_0x5ba0bc[_0xb814('0x48')](_0xb814('0x8f'));_0x5ba0bc['field'](_0xb814('0x90'));_0x5ba0bc[_0xb814('0x48')](_0xb814('0x91'));_0x5ba0bc[_0xb814('0x48')](_0xb814('0x92'));_0x5ba0bc[_0xb814('0x48')]('c.createdAt');_0x5ba0bc[_0xb814('0x48')]('c.deletedAt');_0x5ba0bc[_0xb814('0x48')](_0xb814('0x93'));_0x5ba0bc[_0xb814('0x48')](_0xb814('0x94'),_0xb814('0x95'));}if(_0x499f22['limit'])_0x5ba0bc['limit'](_0x499f22[_0xb814('0x42')]);if(_0x499f22[_0xb814('0x25')])_0x5ba0bc[_0xb814('0x25')](_0x499f22[_0xb814('0x25')]);return db['sequelize'][_0xb814('0x3b')](_0x5ba0bc['toString'](),_0x3d4843);});})[_0xb814('0x2b')](function(_0x227cbd){_0x227cbd['forEach'](function(_0x58b016){if(_0x58b016[_0xb814('0x95')]){_0x58b016['Tags']=[];_0x58b016[_0xb814('0x95')][_0xb814('0x58')](',')[_0xb814('0x5a')](function(_0x1afe14){_0x58b016[_0xb814('0x96')][_0xb814('0x97')](_0x3063bf[_0x1afe14]);});}delete _0x58b016[_0xb814('0x95')];});_0x2051d0['rows']=_0x227cbd;return _0x2051d0;})[_0xb814('0x2b')](respondWithFilteredResult(_0x530744,_0x499f22));})['catch'](handleError(_0x530744,null));};exports[_0xb814('0x2c')]=function(_0x590145,_0x2838cb){return db[_0xb814('0x98')]['find']({'where':{'id':_0x590145[_0xb814('0x99')]['id']}})['then'](handleEntityNotFound(_0x2838cb,null))[_0xb814('0x2b')](removeEntity(_0x2838cb,null))[_0xb814('0x9a')](handleError(_0x2838cb,null));};exports['describe']=function(_0x5a0c4a,_0x9e2e16){return db[_0xb814('0x98')][_0xb814('0x31')]()[_0xb814('0x2b')](function(_0x220f8b){delete _0x220f8b[_0xb814('0x9b')];for(var _0x2b12a9=0x0;_0x2b12a9<Object[_0xb814('0x32')](_0x220f8b)[_0xb814('0x38')];_0x2b12a9++){var _0x34f49c=Object['keys'](_0x220f8b)[_0x2b12a9];if(!_['startsWith'](_0x34f49c,'cf_')){_0x220f8b[_0x34f49c]['columnName']=_0x34f49c;_0x220f8b[_0x34f49c]['displayName']=_0x34f49c;}}return _0x220f8b;})[_0xb814('0x2b')](function(_0x75a33){var _0x3d87d2={'where':{'$or':[{'ListId':_0x5a0c4a['query']['id']},{'ListId':null}]},'raw':!![]};return db[_0xb814('0x34')][_0xb814('0x9c')](_0x3d87d2)[_0xb814('0x2b')](function(_0x26ce5b){for(var _0x161658=0x0;_0x161658<_0x26ce5b[_0xb814('0x38')];_0x161658++){var _0x3367b8=_0xb814('0x36')+_0x26ce5b[_0x161658]['id'];_0x75a33[_0x3367b8]['columnName']=_0x3367b8;_0x75a33[_0x3367b8][_0xb814('0x9d')]=_0x26ce5b[_0x161658][_0xb814('0x9e')];_0x75a33[_0x3367b8][_0xb814('0x9f')]={'type':_0x26ce5b[_0x161658][_0xb814('0x3a')],'values':_0x26ce5b[_0x161658]['values']};}Object[_0xb814('0x32')](_0x75a33)[_0xb814('0x5a')](function(_0x3f4b23){if(!_0x75a33[_0x3f4b23][_0xb814('0x41')](_0xb814('0xa0'))){delete _0x75a33[_0x3f4b23];}});return _0x75a33;});})['then'](respondWithResult(_0x9e2e16,null))['catch'](handleError(_0x9e2e16,null));};exports[_0xb814('0x8b')]=function(_0x57b3f2,_0x15bf14){var _0x3882f8;var _0x592aae;var _0xc8f730;if(_0x57b3f2['body']['id']){delete _0x57b3f2[_0xb814('0xa1')]['id'];}return db['CmContact'][_0xb814('0x9c')]({'where':{'id':[_0x57b3f2[_0xb814('0xa1')]['to'],_0x57b3f2[_0xb814('0xa1')][_0xb814('0xa2')]]}})[_0xb814('0x2b')](function(_0x1ae812){if(_0x1ae812){if(_0x1ae812[_0xb814('0x38')]!==0x2){return null;}_0x1ae812[0x0]=_0x1ae812[0x0]['get']({'plain':!![]});_0x1ae812[0x1]=_0x1ae812[0x1]['get']({'plain':!![]});delete _0x1ae812[0x0]['id'];delete _0x1ae812[0x1]['id'];return _[_0xb814('0xa3')](_0x1ae812[0x0],_0x1ae812[0x1],function(_0x50ed93,_0x511e03){if(Array[_0xb814('0x6d')](_0x511e03)&&!_0x511e03[_0xb814('0x38')]){return _0x50ed93;}else if(!_0x511e03){return _0x50ed93;}});}})[_0xb814('0x2b')](handleEntityNotFound(_0x15bf14,null))['then'](function(_0x2a7cde){if(_0x2a7cde){if(_0x2a7cde['tags']&&_[_0xb814('0x6d')](_0x2a7cde[_0xb814('0x9b')])){_0x2a7cde[_0xb814('0x9b')]=_0x2a7cde[_0xb814('0x9b')]['join']();}logger[_0xb814('0xa4')](_0xb814('0xa5'),_0x57b3f2[_0xb814('0xa1')]['to'],_0x57b3f2['body'][_0xb814('0xa2')]);return db[_0xb814('0xa6')][_0xb814('0x2c')]({'where':{'ContactId':[_0x57b3f2['body']['to'],_0x57b3f2[_0xb814('0xa1')][_0xb814('0xa2')]]}})[_0xb814('0x2b')](function(_0x216d67){logger[_0xb814('0xa4')](_0xb814('0xa7'),_0x216d67);return db[_0xb814('0xa8')][_0xb814('0x2c')]({'where':{'ContactId':[_0x57b3f2[_0xb814('0xa1')]['to'],_0x57b3f2[_0xb814('0xa1')][_0xb814('0xa2')]]}})[_0xb814('0x2b')](function(_0x2a13fb){logger['info']('[CmContact][merge][destroy][CmHopperBlack],\x20%s',_0x2a13fb);return db[_0xb814('0x98')]['create'](_0x2a7cde);});});}})[_0xb814('0x2b')](function(_0x3949fd){if(_0x3949fd){_0x3882f8=_0x3949fd;_0x592aae={'ContactId':_0x3882f8['id']};_0xc8f730={'where':{'ContactId':[_0x57b3f2[_0xb814('0xa1')]['to'],_0x57b3f2[_0xb814('0xa1')][_0xb814('0xa2')]]}};return db[_0xb814('0xa9')][_0xb814('0xaa')](_0x592aae,_0xc8f730);}})['then'](function(){if(_0x3882f8){return db['ChatMessage'][_0xb814('0xaa')](_0x592aae,_0xc8f730);}})['then'](function(){if(_0x3882f8){return db[_0xb814('0xab')][_0xb814('0xaa')](_0x592aae,_0xc8f730);}})[_0xb814('0x2b')](function(){if(_0x3882f8){return db['MailInteraction'][_0xb814('0xaa')](_0x592aae,_0xc8f730);}})[_0xb814('0x2b')](function(){if(_0x3882f8){return db[_0xb814('0xac')][_0xb814('0xaa')](_0x592aae,_0xc8f730);}})[_0xb814('0x2b')](function(){if(_0x3882f8){return db['MailInteraction'][_0xb814('0xaa')](_0x592aae,_0xc8f730);}})[_0xb814('0x2b')](function(){if(_0x3882f8){return db['MailMessage'][_0xb814('0xaa')](_0x592aae,_0xc8f730);}})[_0xb814('0x2b')](function(){if(_0x3882f8){return db[_0xb814('0xad')]['update'](_0x592aae,_0xc8f730);}})[_0xb814('0x2b')](function(){if(_0x3882f8){return db[_0xb814('0xae')]['update'](_0x592aae,_0xc8f730);}})[_0xb814('0x2b')](function(){if(_0x3882f8){return db[_0xb814('0xaf')]['update'](_0x592aae,_0xc8f730);}})[_0xb814('0x2b')](function(){if(_0x3882f8){return db[_0xb814('0xb0')][_0xb814('0xaa')](_0x592aae,_0xc8f730);}})[_0xb814('0x2b')](function(){if(_0x3882f8){return db[_0xb814('0xb1')][_0xb814('0xaa')](_0x592aae,_0xc8f730);}})[_0xb814('0x2b')](function(){if(_0x3882f8){return db[_0xb814('0xb2')][_0xb814('0xaa')](_0x592aae,_0xc8f730);}})[_0xb814('0x2b')](function(){if(_0x3882f8){return db[_0xb814('0xb3')][_0xb814('0xaa')](_0x592aae,_0xc8f730);}})['then'](function(){if(_0x3882f8){return db['CmHopperHistory'][_0xb814('0xaa')](_0x592aae,_0xc8f730);}})['then'](function(){if(_0x3882f8){return db['ReportAgentPreview'][_0xb814('0xaa')](_0x592aae,_0xc8f730);}})['then'](function(){if(_0x3882f8){return db['VoiceCallReport']['update'](_0x592aae,_0xc8f730);}})[_0xb814('0x2b')](function(){if(_0x3882f8){return db[_0xb814('0xb4')][_0xb814('0xaa')](_0x592aae,_0xc8f730);}})['then'](function(){if(_0x3882f8){return db[_0xb814('0xb5')]['update'](_0x592aae,_0xc8f730);}})[_0xb814('0x2b')](function(){if(_0x3882f8){return db[_0xb814('0xb6')]['update'](_0x592aae,_0xc8f730);}})[_0xb814('0x2b')](function(){if(_0x3882f8){return db['OpenchannelQueueReport'][_0xb814('0xaa')](_0x592aae,_0xc8f730);}})[_0xb814('0x2b')](function(){if(_0x3882f8){return db[_0xb814('0xb7')][_0xb814('0xaa')](_0x592aae,_0xc8f730);}})[_0xb814('0x2b')](function(){if(_0x3882f8){return db[_0xb814('0xb8')][_0xb814('0xaa')](_0x592aae,_0xc8f730);}})[_0xb814('0x2b')](function(){if(_0x3882f8){return db[_0xb814('0x98')][_0xb814('0x2c')]({'where':{'id':[_0x57b3f2[_0xb814('0xa1')]['to'],_0x57b3f2[_0xb814('0xa1')][_0xb814('0xa2')]]}});}})[_0xb814('0x2b')](function(){if(_0x3882f8){return _0x3882f8;}})[_0xb814('0x2b')](respondWithResult(_0x15bf14,null))['catch'](handleError(_0x15bf14,null));};exports[_0xb814('0xb9')]=function(_0xfc4469,_0x4e840a){return db[_0xb814('0x98')][_0xb814('0x31')]()[_0xb814('0x2b')](function(_0x570191){if(_0xfc4469['body'][_0xb814('0x9b')]&&_['isArray'](_0xfc4469[_0xb814('0xa1')]['tags'])){if(_0xfc4469[_0xb814('0xa1')]['tags']['length']){_0xfc4469[_0xb814('0xa1')][_0xb814('0x9b')]=_0xfc4469[_0xb814('0xa1')][_0xb814('0x9b')][_0xb814('0xba')](';')+';';}else{_0xfc4469[_0xb814('0xa1')][_0xb814('0x9b')]=null;}}else{_0xfc4469[_0xb814('0xa1')][_0xb814('0x9b')]=null;}return db[_0xb814('0x98')][_0xb814('0xb9')](_0xfc4469['body'],{'fields':_[_0xb814('0x32')](_0x570191),'raw':!![]});})['then'](respondWithResult(_0x4e840a,0xc9))[_0xb814('0x9a')](handleError(_0x4e840a,null));};exports[_0xb814('0xbb')]=function(_0x3c5dbf,_0x4fde6a){var _0x6e5486=[];var _0x18fb74=0x0;var _0x371e92=0x0;var _0x2fbea5=0x0;return db[_0xb814('0x98')][_0xb814('0x31')]()[_0xb814('0x2b')](function(_0x44588a){return BPromise[_0xb814('0xbc')](_0x3c5dbf[_0xb814('0xa1')],function(_0x3b65c0){var _0x11e0c3={'where':{'$or':[]},'defaults':_0x3b65c0,'fields':_[_0xb814('0x32')](_0x44588a),'raw':!![]};if(_0x3b65c0[_0xb814('0xbd')]){for(var _0x2a3e8b=0x0;_0x2a3e8b<_0x3b65c0['duplicates'][_0xb814('0x38')];_0x2a3e8b++){var _0x3fb2af={};_0x3fb2af[_0x3b65c0[_0xb814('0xbd')][_0x2a3e8b]]=_0x3b65c0[_0x3b65c0['duplicates'][_0x2a3e8b]];_0x11e0c3['where'][_0xb814('0xbe')]['push'](_0x3fb2af);}_0x11e0c3['where']['ListId']=_0x3b65c0['ListId'];}return db[_0xb814('0x98')][_0xb814('0xbf')](_0x11e0c3)['spread'](function(_0x559d84,_0x3ba2a0){if(_0x3ba2a0){_0x18fb74++;}else{_0x2fbea5++;}})[_0xb814('0x9a')](function(_0x3d24c3){console[_0xb814('0x2d')](_0x3d24c3);_0x371e92++;});});})[_0xb814('0x2b')](function(_0x20e608){if(_0x20e608){return{'success':_0x18fb74,'failure':_0x371e92,'duplicates':_0x2fbea5};}})[_0xb814('0x2b')](respondWithResult(_0x4fde6a,0xc9))[_0xb814('0x9a')](handleError(_0x4fde6a,null));};exports[_0xb814('0xc0')]=function(_0x2b82c6,_0x4c4724,_0x2a5dff){var _0x553635;return db[_0xb814('0x98')][_0xb814('0x31')]()[_0xb814('0x2b')](function(_0xa7ff62){return db[_0xb814('0x98')][_0xb814('0x55')]({'where':{'id':_0x2b82c6[_0xb814('0x99')]['id']},'include':[{'model':db[_0xb814('0x56')],'as':'Tags','attributes':['id','name','color'],'required':_0x2b82c6[_0xb814('0x3b')][_0xb814('0x6c')]?!![]:![]}],'attributes':_[_0xb814('0x32')](_0xa7ff62)});})[_0xb814('0x2b')](function(_0x2ab60d){_0x553635=_0x2ab60d[_0xb814('0xc1')]({'plain':!![]});var _0x42c0cd={'where':{'$and':[{'ListId':{'$ne':null}}]}};if(_0x2ab60d&&_0x2ab60d[_0xb814('0xc2')]){if(_0x2ab60d[_0xb814('0xc2')]){_0x42c0cd[_0xb814('0x45')]['$and']['push']({'ListId':{'$ne':_0x2ab60d[_0xb814('0xc2')]}});}}return db[_0xb814('0x34')][_0xb814('0x9c')](_0x42c0cd);})[_0xb814('0x2b')](function(_0x3f0c9c){return _[_0xb814('0xc3')](_0x553635,_['map'](_0x3f0c9c,function(_0x463765){return util['format'](_0xb814('0xc4'),_0x463765['id']);}));})[_0xb814('0x2b')](handleEntityNotFound(_0x4c4724,null))[_0xb814('0x2b')](respondWithResult(_0x4c4724,null))[_0xb814('0x9a')](handleError(_0x4c4724,null));};exports[_0xb814('0xaa')]=function(_0x2c2238,_0x29ccad){var _0x4deb51;if(_0x2c2238[_0xb814('0xa1')]['id']){delete _0x2c2238[_0xb814('0xa1')]['id'];}return db[_0xb814('0x98')][_0xb814('0x55')]({'where':{'id':_0x2c2238['params']['id']}})[_0xb814('0x2b')](handleEntityNotFound(_0x29ccad,null))[_0xb814('0x2b')](saveUpdates(_0x2c2238[_0xb814('0xa1')],null))[_0xb814('0x2b')](function(_0xa66ca3){_0x4deb51=_0xa66ca3;var _0x4a2aa5={'where':{'$and':[{'ListId':{'$ne':null}}]}};if(_0xa66ca3&&_0xa66ca3[_0xb814('0xc2')]){if(_0xa66ca3[_0xb814('0xc2')]){_0x4a2aa5[_0xb814('0x45')]['$and'][_0xb814('0x97')]({'ListId':{'$ne':_0xa66ca3['ListId']}});}}return db[_0xb814('0x34')]['findAll'](_0x4a2aa5);})[_0xb814('0x2b')](function(_0x3467bd){if(_0x3467bd){return _[_0xb814('0xc3')](_[_0xb814('0xc5')](_0x2c2238['body'],function(_0xe5cf2,_0x228226){return _[_0xb814('0x33')](_0x228226,_0xb814('0x36'));}),_[_0xb814('0x59')](_0x3467bd,function(_0x32c9ca){return util[_0xb814('0xc6')](_0xb814('0xc4'),_0x32c9ca['id']);}));}})[_0xb814('0x2b')](function(_0x152260){if(_0x152260&&!_[_0xb814('0x68')](_0x152260)){var _0x368696=squel[_0xb814('0xaa')]()[_0xb814('0xc7')](_0xb814('0x4a'))['setFields'](_0x152260)[_0xb814('0x45')](_0xb814('0xc8'),_0x2c2238[_0xb814('0x99')]['id'])[_0xb814('0xc9')]();return db[_0xb814('0x89')][_0xb814('0x3b')](_0x368696['text'],{'replacements':_0x368696[_0xb814('0xca')]});}})[_0xb814('0x2b')](function(){if(_0x2c2238[_0xb814('0xa1')][_0xb814('0xcb')]&&_0x4deb51){return db['CmHopper']['update']({'phone':_0x2c2238[_0xb814('0xa1')][_0xb814('0xcb')]},{'where':{'ContactId':_0x4deb51['id']}});}})[_0xb814('0x2b')](function(){return _0x4deb51;})[_0xb814('0x2b')](respondWithResult(_0x29ccad,null))[_0xb814('0x9a')](handleError(_0x29ccad,null));};exports[_0xb814('0xcc')]=function(_0x5bc8d0,_0x36af5c,_0x366151){var _0x1c6ec1={};var _0x3e8156={};var _0x5e2fc8;var _0x412ae7;return db[_0xb814('0x98')][_0xb814('0x35')]({'where':{'id':_0x5bc8d0[_0xb814('0x99')]['id']}})[_0xb814('0x2b')](handleEntityNotFound(_0x36af5c,null))['then'](function(_0x7bb40b){if(_0x7bb40b){_0x5e2fc8=_0x7bb40b;_0x3e8156[_0xb814('0x3d')]=_[_0xb814('0x32')](db[_0xb814('0x56')][_0xb814('0xcd')]);_0x3e8156[_0xb814('0x3b')]=_[_0xb814('0x32')](_0x5bc8d0[_0xb814('0x3b')]);_0x3e8156[_0xb814('0x3c')]=_[_0xb814('0x3e')](_0x3e8156[_0xb814('0x3d')],_0x3e8156[_0xb814('0x3b')]);_0x1c6ec1[_0xb814('0x40')]=_['intersection'](_0x3e8156['model'],qs[_0xb814('0x3f')](_0x5bc8d0[_0xb814('0x3b')][_0xb814('0x3f')]));_0x1c6ec1['attributes']=_0x1c6ec1[_0xb814('0x40')][_0xb814('0x38')]?_0x1c6ec1[_0xb814('0x40')]:_0x3e8156['model'];_0x1c6ec1[_0xb814('0x43')]=qs[_0xb814('0x44')](_0x5bc8d0[_0xb814('0x3b')][_0xb814('0x44')]);_0x1c6ec1[_0xb814('0x45')]=qs[_0xb814('0x3c')](_['pick'](_0x5bc8d0[_0xb814('0x3b')],_0x3e8156['filters']));if(_0x5bc8d0[_0xb814('0x3b')]['filter']){_0x1c6ec1[_0xb814('0x45')]=_[_0xb814('0x8b')](_0x1c6ec1[_0xb814('0x45')],{'$or':_['map'](_0x1c6ec1[_0xb814('0x40')],function(_0x2114c2){var _0x164304={};_0x164304[_0x2114c2]={'$like':'%'+_0x5bc8d0['query'][_0xb814('0x65')]+'%'};return _0x164304;})});}_0x1c6ec1=_['merge']({},_0x1c6ec1,_0x5bc8d0[_0xb814('0xce')]);return _0x5e2fc8[_0xb814('0xcc')](_0x1c6ec1);}})[_0xb814('0x2b')](function(_0x5a5b0f){if(_0x5a5b0f){_0x412ae7=_0x5a5b0f[_0xb814('0x38')];if(!_0x5bc8d0[_0xb814('0x3b')][_0xb814('0x41')](_0xb814('0xcf'))){_0x1c6ec1['limit']=qs[_0xb814('0x42')](_0x5bc8d0[_0xb814('0x3b')][_0xb814('0x42')]);_0x1c6ec1[_0xb814('0x25')]=qs[_0xb814('0x25')](_0x5bc8d0[_0xb814('0x3b')][_0xb814('0x25')]);}return _0x5e2fc8[_0xb814('0xcc')](_0x1c6ec1);}})[_0xb814('0x2b')](function(_0x5a9536){if(_0x5a9536){return _0x5a9536?{'count':_0x412ae7,'rows':_0x5a9536}:null;}})[_0xb814('0x2b')](respondWithResult(_0x36af5c,null))[_0xb814('0x9a')](handleError(_0x36af5c,null));};exports[_0xb814('0xd0')]=function(_0x4bd78e,_0xecdaf4,_0x54f6c1){if(_0x4bd78e['body']['id']){delete _0x4bd78e['body']['id'];}return db[_0xb814('0x98')]['findOne']({'where':{'id':_0x4bd78e[_0xb814('0x99')]['id']}})[_0xb814('0x2b')](handleEntityNotFound(_0xecdaf4,null))['then'](function(_0x5b6325){if(_0x5b6325){return _0x5b6325[_0xb814('0xd0')](_0x4bd78e['body'][_0xb814('0xd1')]||[]);}return null;})['then'](respondWithResult(_0xecdaf4,null))[_0xb814('0x9a')](handleError(_0xecdaf4,null));};exports[_0xb814('0xd2')]=function(_0x57c5bd,_0x4ff3f3,_0x5b19e7){var _0x54ab1a={'raw':![],'where':{}};var _0x10c136={};var _0x5018ea={'count':0x0,'rows':[]};return db['CmContact'][_0xb814('0x35')]({'where':{'id':_0x57c5bd['params']['id']}})['then'](handleEntityNotFound(_0x4ff3f3,null))['then'](function(_0xb1db37){if(_0xb1db37){_0x10c136[_0xb814('0x3d')]=_[_0xb814('0x32')](db['CmHopper'][_0xb814('0xcd')]);_0x10c136[_0xb814('0x3b')]=_[_0xb814('0x32')](_0x57c5bd[_0xb814('0x3b')]);_0x10c136[_0xb814('0x3c')]=_[_0xb814('0x3e')](_0x10c136['model'],_0x10c136[_0xb814('0x3b')]);_0x54ab1a[_0xb814('0x40')]=_[_0xb814('0x3e')](_0x10c136[_0xb814('0x3d')],qs['fields'](_0x57c5bd[_0xb814('0x3b')][_0xb814('0x3f')]));_0x54ab1a[_0xb814('0x40')]=_0x54ab1a[_0xb814('0x40')][_0xb814('0x38')]?_0x54ab1a[_0xb814('0x40')]:_0x10c136[_0xb814('0x3d')];if(!_0x57c5bd[_0xb814('0x3b')][_0xb814('0x41')](_0xb814('0xcf'))){_0x54ab1a['limit']=qs[_0xb814('0x42')](_0x57c5bd[_0xb814('0x3b')]['limit']);_0x54ab1a[_0xb814('0x25')]=qs['offset'](_0x57c5bd[_0xb814('0x3b')][_0xb814('0x25')]);}_0x54ab1a['order']=qs[_0xb814('0x44')](_0x57c5bd['query'][_0xb814('0x44')]);_0x54ab1a[_0xb814('0x45')]=qs[_0xb814('0x3c')](_[_0xb814('0x46')](_0x57c5bd[_0xb814('0x3b')],_0x10c136['filters']));_0x54ab1a[_0xb814('0x45')]['ContactId']=_0xb1db37['id'];if(_0x57c5bd[_0xb814('0x3b')][_0xb814('0x65')]){_0x54ab1a[_0xb814('0x45')]=_[_0xb814('0x8b')](_0x54ab1a[_0xb814('0x45')],{'$or':_[_0xb814('0x59')](_0x54ab1a[_0xb814('0x40')],function(_0xca1f74){var _0x18d39c={};_0x18d39c[_0xca1f74]={'$like':'%'+_0x57c5bd['query'][_0xb814('0x65')]+'%'};return _0x18d39c;})});}_0x54ab1a=_[_0xb814('0x8b')]({},_0x54ab1a,_0x57c5bd[_0xb814('0xce')]);return db[_0xb814('0xa6')]['count']({'where':_0x54ab1a[_0xb814('0x45')]})[_0xb814('0x2b')](function(_0x4e9063){_0x5018ea[_0xb814('0x88')]=_0x4e9063;if(_0x57c5bd['query']['includeAll']){_0x54ab1a['include']=[{'all':!![]}];}return db[_0xb814('0xa6')][_0xb814('0x9c')](_0x54ab1a);})[_0xb814('0x2b')](function(_0x41aa3e){_0x5018ea[_0xb814('0xd3')]=_0x41aa3e;return _0x5018ea;});}})['then'](respondWithFilteredResult(_0x4ff3f3,_0x54ab1a))[_0xb814('0x9a')](handleError(_0x4ff3f3,null));};exports[_0xb814('0xd4')]=function(_0x53b02d,_0xb3dac5,_0x4897ef){var _0x3c7640={'raw':!![],'where':{}};var _0xbadfa={};var _0x3ae679={'count':0x0,'rows':[]};return db[_0xb814('0x98')][_0xb814('0x35')]({'where':{'id':_0x53b02d[_0xb814('0x99')]['id']}})['then'](handleEntityNotFound(_0xb3dac5,null))['then'](function(_0xc71bf6){if(_0xc71bf6){_0xbadfa['model']=_[_0xb814('0x32')](db['CmHopperHistory'][_0xb814('0xcd')]);_0xbadfa[_0xb814('0x3b')]=_[_0xb814('0x32')](_0x53b02d[_0xb814('0x3b')]);_0xbadfa['filters']=_[_0xb814('0x3e')](_0xbadfa['model'],_0xbadfa['query']);_0x3c7640[_0xb814('0x40')]=_[_0xb814('0x3e')](_0xbadfa['model'],qs[_0xb814('0x3f')](_0x53b02d[_0xb814('0x3b')][_0xb814('0x3f')]));_0x3c7640[_0xb814('0x40')]=_0x3c7640['attributes'][_0xb814('0x38')]?_0x3c7640[_0xb814('0x40')]:_0xbadfa[_0xb814('0x3d')];if(!_0x53b02d[_0xb814('0x3b')][_0xb814('0x41')](_0xb814('0xcf'))){_0x3c7640[_0xb814('0x42')]=qs[_0xb814('0x42')](_0x53b02d[_0xb814('0x3b')][_0xb814('0x42')]);_0x3c7640[_0xb814('0x25')]=qs[_0xb814('0x25')](_0x53b02d[_0xb814('0x3b')]['offset']);}_0x3c7640[_0xb814('0x43')]=qs[_0xb814('0x44')](_0x53b02d[_0xb814('0x3b')][_0xb814('0x44')]);_0x3c7640[_0xb814('0x45')]=qs[_0xb814('0x3c')](_[_0xb814('0x46')](_0x53b02d[_0xb814('0x3b')],_0xbadfa['filters']));_0x3c7640[_0xb814('0x45')][_0xb814('0xd5')]=_0xc71bf6['id'];if(_0x53b02d[_0xb814('0x3b')][_0xb814('0x65')]){_0x3c7640[_0xb814('0x45')]=_[_0xb814('0x8b')](_0x3c7640[_0xb814('0x45')],{'$or':_[_0xb814('0x59')](_0x3c7640['attributes'],function(_0x12366a){var _0x5d9685={};_0x5d9685[_0x12366a]={'$like':'%'+_0x53b02d['query'][_0xb814('0x65')]+'%'};return _0x5d9685;})});}_0x3c7640=_['merge']({},_0x3c7640,_0x53b02d[_0xb814('0xce')]);return db[_0xb814('0xd6')][_0xb814('0x88')]({'where':_0x3c7640['where']})[_0xb814('0x2b')](function(_0xb238bc){_0x3ae679[_0xb814('0x88')]=_0xb238bc;if(_0x53b02d[_0xb814('0x3b')][_0xb814('0xd7')]){_0x3c7640['include']=[{'all':!![]}];}return db[_0xb814('0xd6')][_0xb814('0x9c')](_0x3c7640);})[_0xb814('0x2b')](function(_0x50ef97){_0x3ae679[_0xb814('0xd3')]=_0x50ef97;return _0x3ae679;});}})[_0xb814('0x2b')](respondWithFilteredResult(_0xb3dac5,_0x3c7640))[_0xb814('0x9a')](handleError(_0xb3dac5,null));};exports[_0xb814('0xd8')]=function(_0x1f0823,_0x1271ce,_0x4c1805){var _0x117d26={'raw':!![],'where':{}};var _0xb11bea={};var _0x40ae50={'count':0x0,'rows':[]};return db['CmContact']['findOne']({'where':{'id':_0x1f0823[_0xb814('0x99')]['id']}})[_0xb814('0x2b')](handleEntityNotFound(_0x1271ce,null))[_0xb814('0x2b')](function(_0x40bdd0){if(_0x40bdd0){_0xb11bea['model']=_[_0xb814('0x32')](db['CmHopperFinal']['rawAttributes']);_0xb11bea['query']=_[_0xb814('0x32')](_0x1f0823[_0xb814('0x3b')]);_0xb11bea[_0xb814('0x3c')]=_[_0xb814('0x3e')](_0xb11bea[_0xb814('0x3d')],_0xb11bea['query']);_0x117d26[_0xb814('0x40')]=_[_0xb814('0x3e')](_0xb11bea[_0xb814('0x3d')],qs[_0xb814('0x3f')](_0x1f0823[_0xb814('0x3b')][_0xb814('0x3f')]));_0x117d26[_0xb814('0x40')]=_0x117d26['attributes']['length']?_0x117d26['attributes']:_0xb11bea[_0xb814('0x3d')];if(!_0x1f0823['query'][_0xb814('0x41')](_0xb814('0xcf'))){_0x117d26[_0xb814('0x42')]=qs['limit'](_0x1f0823[_0xb814('0x3b')][_0xb814('0x42')]);_0x117d26['offset']=qs[_0xb814('0x25')](_0x1f0823[_0xb814('0x3b')][_0xb814('0x25')]);}_0x117d26[_0xb814('0x43')]=qs[_0xb814('0x44')](_0x1f0823[_0xb814('0x3b')][_0xb814('0x44')]);_0x117d26[_0xb814('0x45')]=qs[_0xb814('0x3c')](_[_0xb814('0x46')](_0x1f0823['query'],_0xb11bea[_0xb814('0x3c')]));_0x117d26['where'][_0xb814('0xd5')]=_0x40bdd0['id'];if(_0x1f0823[_0xb814('0x3b')][_0xb814('0x65')]){_0x117d26[_0xb814('0x45')]=_[_0xb814('0x8b')](_0x117d26['where'],{'$or':_[_0xb814('0x59')](_0x117d26[_0xb814('0x40')],function(_0x3a21af){var _0x4827f4={};_0x4827f4[_0x3a21af]={'$like':'%'+_0x1f0823[_0xb814('0x3b')][_0xb814('0x65')]+'%'};return _0x4827f4;})});}_0x117d26=_[_0xb814('0x8b')]({},_0x117d26,_0x1f0823[_0xb814('0xce')]);return db[_0xb814('0xb3')][_0xb814('0x88')]({'where':_0x117d26[_0xb814('0x45')]})[_0xb814('0x2b')](function(_0x23ea5d){_0x40ae50[_0xb814('0x88')]=_0x23ea5d;if(_0x1f0823[_0xb814('0x3b')][_0xb814('0xd7')]){_0x117d26[_0xb814('0xd9')]=[{'all':!![]}];}return db[_0xb814('0xb3')][_0xb814('0x9c')](_0x117d26);})[_0xb814('0x2b')](function(_0x5c040f){_0x40ae50[_0xb814('0xd3')]=_0x5c040f;return _0x40ae50;});}})[_0xb814('0x2b')](respondWithFilteredResult(_0x1271ce,_0x117d26))[_0xb814('0x9a')](handleError(_0x1271ce,null));};exports[_0xb814('0xda')]=function(_0x92b160,_0xbff80c,_0x5cdcfa){var _0x19eb95={'raw':!![],'where':{}};var _0x321606={};var _0x1fab17={'count':0x0,'rows':[]};return db[_0xb814('0x98')][_0xb814('0x35')]({'where':{'id':_0x92b160[_0xb814('0x99')]['id']}})[_0xb814('0x2b')](handleEntityNotFound(_0xbff80c,null))[_0xb814('0x2b')](function(_0x364003){if(_0x364003){_0x321606[_0xb814('0x3d')]=_[_0xb814('0x32')](db[_0xb814('0xb8')][_0xb814('0xcd')]);_0x321606[_0xb814('0x3b')]=_['keys'](_0x92b160[_0xb814('0x3b')]);_0x321606[_0xb814('0x3c')]=_[_0xb814('0x3e')](_0x321606[_0xb814('0x3d')],_0x321606[_0xb814('0x3b')]);_0x19eb95[_0xb814('0x40')]=_[_0xb814('0x3e')](_0x321606[_0xb814('0x3d')],qs['fields'](_0x92b160['query'][_0xb814('0x3f')]));_0x19eb95[_0xb814('0x40')]=_0x19eb95[_0xb814('0x40')][_0xb814('0x38')]?_0x19eb95[_0xb814('0x40')]:_0x321606['model'];if(!_0x92b160[_0xb814('0x3b')][_0xb814('0x41')](_0xb814('0xcf'))){_0x19eb95[_0xb814('0x42')]=qs['limit'](_0x92b160['query'][_0xb814('0x42')]);_0x19eb95[_0xb814('0x25')]=qs[_0xb814('0x25')](_0x92b160['query'][_0xb814('0x25')]);}_0x19eb95[_0xb814('0x43')]=qs[_0xb814('0x44')](_0x92b160[_0xb814('0x3b')]['sort']);_0x19eb95['where']=qs[_0xb814('0x3c')](_[_0xb814('0x46')](_0x92b160[_0xb814('0x3b')],_0x321606['filters']));_0x19eb95['where']['ContactId']=_0x364003['id'];if(_0x92b160['query'][_0xb814('0x65')]){_0x19eb95[_0xb814('0x45')]=_['merge'](_0x19eb95[_0xb814('0x45')],{'$or':_[_0xb814('0x59')](_0x19eb95[_0xb814('0x40')],function(_0x39e6ae){var _0x197937={};_0x197937[_0x39e6ae]={'$like':'%'+_0x92b160[_0xb814('0x3b')][_0xb814('0x65')]+'%'};return _0x197937;})});}_0x19eb95=_['merge']({},_0x19eb95,_0x92b160[_0xb814('0xce')]);return db[_0xb814('0xb8')][_0xb814('0x88')]({'where':_0x19eb95[_0xb814('0x45')]})[_0xb814('0x2b')](function(_0x38eea0){_0x1fab17[_0xb814('0x88')]=_0x38eea0;if(_0x92b160[_0xb814('0x3b')][_0xb814('0xd7')]){_0x19eb95[_0xb814('0xd9')]=[{'all':!![]}];}return db['JscriptySessionReport'][_0xb814('0x9c')](_0x19eb95);})['then'](function(_0x44f144){_0x1fab17['rows']=_0x44f144;return _0x1fab17;});}})['then'](respondWithFilteredResult(_0xbff80c,_0x19eb95))[_0xb814('0x9a')](handleError(_0xbff80c,null));};exports['uploadCsv']=function(_0x5bb365,_0x189200,_0x43d49b){try{if(!_0x5bb365[_0xb814('0xa1')]['ListId']){throw new Error('No\x20ListId\x20specified');}if(!_0x5bb365[_0xb814('0xa1')][_0xb814('0xdb')]){throw new Error('No\x20association\x20keys\x20specified!');}if(!_0x5bb365[_0xb814('0xa1')][_0xb814('0xdc')]){throw new Error(_0xb814('0xdd'));}if(!_0x5bb365[_0xb814('0xa1')][_0xb814('0xde')]){throw new Error('Unable\x20to\x20synchronize\x20socket,\x20no\x20timestamp\x20passed');}var _0x1d9f8d=_0x5bb365['body'][_0xb814('0xdb')][_0xb814('0x58')](',');var _0x19ad31=_0x5bb365[_0xb814('0xa1')][_0xb814('0xdc')][_0xb814('0x58')](',');if(!_0x1d9f8d[_0xb814('0x38')]||!_0x19ad31[_0xb814('0x38')]||_0x1d9f8d[_0xb814('0x38')]!==_0x19ad31[_0xb814('0x38')]){throw new Error(_0xb814('0xdf'));}_0x5bb365['body'][_0xb814('0x3f')]=_[_0xb814('0xe0')](_0x1d9f8d,_0x19ad31);if(!_0x5bb365[_0xb814('0xa1')][_0xb814('0x3f')][_0xb814('0xcb')]){throw new Error(_0xb814('0xe1'));}if(!_0x5bb365['body'][_0xb814('0x3f')]['firstName']){throw new Error(_0xb814('0xe2'));}var _0x20d49b=path[_0xb814('0xba')](config[_0xb814('0xe3')],_0xb814('0xe4'),_0x5bb365[_0xb814('0xe5')]['filename']);fs['chmodSync'](_0x20d49b,parseInt(_0xb814('0xe6'),0x8));var _0xbb6002=require('child_process')[_0xb814('0xe7')](path[_0xb814('0xba')](__dirname,'../../components/import/cm/csv'),[_0x20d49b,_0x5bb365[_0xb814('0xa1')][_0xb814('0xdb')],_0x5bb365['body'][_0xb814('0xdc')],_0x5bb365[_0xb814('0xa1')][_0xb814('0xc2')],_0x5bb365[_0xb814('0xa1')]['CompanyId'],_0x5bb365[_0xb814('0xa1')]['duplicates'],_0x5bb365['body'][_0xb814('0xde')]]);return _0x189200[_0xb814('0x22')](0xc8)[_0xb814('0x24')]({'message':'File\x20uploaded\x20correctly!','pid':_0xbb6002[_0xb814('0xe8')]});}catch(_0x257426){return _0x189200[_0xb814('0x22')](0x1f4)[_0xb814('0xe9')](_0x257426);}};exports[_0xb814('0xea')]=function(_0x49dfe2,_0xd7438f,_0x48e8f9){var _0x30c930=fs[_0xb814('0xeb')](_0x49dfe2['file'][_0xb814('0x9')]);Papa[_0xb814('0xec')](_0x30c930,{'header':!![],'skipEmptyLines':!![],'preview':0x1,'complete':function(_0x591823){return _0xd7438f[_0xb814('0x22')](0xc8)['json']({'file':_0x49dfe2[_0xb814('0xe5')],'fields':_0x591823['meta']['fields']});}});};exports[_0xb814('0xed')]=function(_0x60b176,_0x35ebde,_0x43c470){return db[_0xb814('0x84')][_0xb814('0x9c')]({'raw':!![],'attributes':['id'],'where':{'role':'agent'}})[_0xb814('0x2b')](function(_0x2eabbd){var _0xcec6da=![];if(!_0x60b176['body'][_0xb814('0xc2')]){throw new Error(_0xb814('0xee'));}if(!_0x60b176['body']['binding'][_0xb814('0xcb')]){throw new Error(_0xb814('0xe1'));}if(!_0x60b176[_0xb814('0xa1')][_0xb814('0xef')][_0xb814('0xf0')]){throw new Error('No\x20firstName\x20column\x20specified');}if(!_0x60b176['body'][_0xb814('0xde')]){throw new Error('Unable\x20to\x20synchronize\x20socket,\x20no\x20timestamp\x20passed');}var _0x4d2f97=require(_0xb814('0xf1'))[_0xb814('0xe7')](path[_0xb814('0xba')](__dirname,_0xb814('0xf2')),[_0x60b176[_0xb814('0x99')]['id'],JSON['stringify'](_0x60b176[_0xb814('0xa1')]),JSON[_0xb814('0xf3')](_0x2eabbd)]);_0x4d2f97['on'](_0xb814('0xf4'),function(_0xf543d2){_0xcec6da=!![];return _0x35ebde[_0xb814('0x22')](0xc8)[_0xb814('0x24')]({'message':_0xb814('0xf5'),'pid':_0x4d2f97[_0xb814('0xe8')]});});_0x4d2f97['on'](_0xb814('0xf6'),function(_0x4877cf){if(_0x4877cf&&!_0xcec6da){return _0x35ebde[_0xb814('0x22')](0x1f4)[_0xb814('0x24')]({'message':_0xb814('0xf7'),'pid':_0x4d2f97['pid']});}});})['catch'](handleError(_0x35ebde,null));};exports[_0xb814('0xf8')]=function(_0x17e8ea,_0x37b42c){var _0x58b74a=[_0xb814('0xf9'),_0xb814('0xfa'),_0xb814('0xfb'),_0xb814('0xfc'),_0xb814('0xfd'),_0xb814('0xfe'),_0xb814('0xff')];var _0x140fde={'offset':0x0,'order':qs[_0xb814('0x44')](_0xb814('0x100'))},_0x50a4da={'count':0x0,'rows':[]};Promise[_0xb814('0x80')]()[_0xb814('0x2b')](function(){if(_0x17e8ea[_0xb814('0x3b')][_0xb814('0x101')]){if(!_[_0xb814('0x102')](_0x58b74a,_0x17e8ea['query'][_0xb814('0x101')]['toLowerCase']())){throw new Error(_0xb814('0x103'));}_0x58b74a=[_0x17e8ea[_0xb814('0x3b')][_0xb814('0x101')][_0xb814('0x104')]()];}if(_0x17e8ea[_0xb814('0x3b')]['range']){try{var _0x59d24f=JSON['parse'](_0x17e8ea[_0xb814('0x3b')][_0xb814('0x105')]);if(!moment(_0x59d24f[_0xb814('0xa2')])['isValid']()){throw new Error(_0xb814('0x106'));}if(!moment(_0x59d24f['to'])[_0xb814('0x107')]()){throw new Error(_0xb814('0x108'));}}catch(_0x2d51e0){throw new Error('Invalid\x20createdAt\x20filter');}}if(!_0x17e8ea[_0xb814('0x3b')][_0xb814('0x41')](_0xb814('0xcf'))){_0x140fde['limit']=qs[_0xb814('0x42')](_0x17e8ea[_0xb814('0x3b')]['limit']||0xa);_0x140fde[_0xb814('0x25')]=qs['offset'](_0x17e8ea[_0xb814('0x3b')][_0xb814('0x25')]);}var _0x13c9fd=_0x58b74a[_0xb814('0x59')](function(_0x22c416){if(_0x22c416===_0xb814('0xff')){var _0x36b0d0={'attributes':['id','uniqueid',_0xb814('0x3a'),_0xb814('0x109'),_0xb814('0x10a'),'callerid','starttime',_0xb814('0x10b'),_0xb814('0x10c'),'note',_0xb814('0x10d'),_0xb814('0x10e'),'userSecondDisposition',_0xb814('0x10f')],'where':{'ContactId':_0x17e8ea[_0xb814('0x99')]['id']},'include':[{'model':db['User'],'as':_0xb814('0x84'),'attributes':['id',_0xb814('0x2f'),_0xb814('0x110'),'alias']}],'order':[[_0xb814('0x10d'),'DESC']]};if(_0x17e8ea[_0xb814('0x3b')][_0xb814('0x105')]){_0x36b0d0[_0xb814('0x45')][_0xb814('0x10d')]={'$gte':_0x59d24f[_0xb814('0xa2')],'$lte':_0x59d24f['to']};}return db[_0xb814('0x111')][_0xb814('0x112')](_0x36b0d0)[_0xb814('0x2b')](function(_0x590238){_0x50a4da[_0xb814('0x88')]+=_0x590238[_0xb814('0x88')];return _[_0xb814('0x59')](_0x590238[_0xb814('0xd3')],function(_0x47e4a1){var _0x1768e7=_0x47e4a1[_0xb814('0xc1')]({'plain':!![]});_0x1768e7[_0xb814('0x101')]=_0x22c416;if(_0x1768e7['User']){_0x1768e7[_0xb814('0x84')]={'id':_0x1768e7['User']['id'],'name':_0x1768e7[_0xb814('0x84')][_0xb814('0x2f')],'fullname':_0x1768e7[_0xb814('0x84')]['fullname'],'alias':_0x1768e7['User'][_0xb814('0x9e')]};}return _0x1768e7;});});}else{var _0xd03fe4=_[_0xb814('0x113')](_0x22c416)+(_0x22c416===_0xb814('0xfa')?_0xb814('0x114'):_0xb814('0x115'));var _0x1f558e={'attributes':['id',_0xb814('0x116'),_0xb814('0x117'),'createdAt',_0xb814('0x118'),'disposition',_0xb814('0x119'),'thirdDisposition',_0xb814('0x11a'),_0xd03fe4+'Id'],'where':{'ContactId':_0x17e8ea[_0xb814('0x99')]['id']},'include':[{'model':db[_0xd03fe4],'as':'Account','attributes':['id',_0xb814('0x2f'),_0xb814('0x11b')]},{'model':db['User'],'as':_0xb814('0x11c'),'attributes':['id','name',_0xb814('0x110')]},{'model':db[_0xb814('0x56')],'as':_0xb814('0x96'),'attributes':['id','name',_0xb814('0x11d')],'through':{'attributes':[]}}],'order':[['createdAt','DESC']]};if(_0x17e8ea[_0xb814('0x3b')][_0xb814('0x105')]){_0x1f558e['where'][_0xb814('0x10d')]={'$gte':_0x59d24f[_0xb814('0xa2')],'$lte':_0x59d24f['to']};}switch(_0x22c416){case _0xb814('0xfa'):_0x1f558e[_0xb814('0x40')][_0xb814('0x97')](_0xb814('0x11e'),_0xb814('0x11f'),_0xb814('0x120'),_0xb814('0x121'),_0xb814('0x122'),_0xb814('0x123'),_0xb814('0x124'),'ratingValue',_0xb814('0x125'));break;case _0xb814('0xf9'):_0x1f558e['attributes']['push'](_0xb814('0x126'),_0xb814('0x127'));break;case _0xb814('0xfc'):_0x1f558e['attributes'][_0xb814('0x97')](_0xb814('0x128'),'threadId');break;}return db[_[_0xb814('0x113')](_0x22c416)+_0xb814('0x129')][_0xb814('0x112')](_0x1f558e)['then'](function(_0x383ded){_0x50a4da['count']+=_0x383ded[_0xb814('0x88')];return _['map'](_0x383ded[_0xb814('0xd3')],function(_0x5bc0ab){var _0x4b0d12=_0x5bc0ab['get']({'plain':!![]});_0x4b0d12['channel']=_0x22c416;if(_0x4b0d12[_0xb814('0x11c')]){_0x4b0d12['Owner']={'id':_0x4b0d12[_0xb814('0x11c')]['id'],'name':_0x4b0d12[_0xb814('0x11c')]['name'],'fullname':_0x4b0d12[_0xb814('0x11c')][_0xb814('0x110')]};}return _0x4b0d12;});});}});return Promise[_0xb814('0x37')](_0x13c9fd);})['then'](function(_0x17aa4e){return _(_0x17aa4e)['flatten']()[_0xb814('0x12a')](_0xb814('0x10d'))[_0xb814('0x12b')]()['value']();})[_0xb814('0x2b')](function(_0x644abf){_0x50a4da[_0xb814('0xd3')]=_0x140fde['limit']?_0x644abf[_0xb814('0x12c')](_0x140fde[_0xb814('0x25')],_0x140fde[_0xb814('0x25')]+_0x140fde[_0xb814('0x42')]):_0x644abf;return _0x50a4da;})[_0xb814('0x2b')](respondWithFilteredResult(_0x37b42c,_0x140fde))[_0xb814('0x9a')](handleError(_0x37b42c,null));};