Built motion from commit (unavailable).|2.5.30
[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 _0x74e6=['values','body','findAll','get','mergeWith','join','info','CmHopper','[CmContact][merge][destroy][CmHopper],\x20%s','CmHopperBlack','[CmContact][merge][destroy][CmHopperBlack],\x20%s','ChatInteraction','ChatMessage','MailInteraction','MailMessage','SmsInteraction','SmsMessage','FaxMessage','OpenchannelInteraction','OpenchannelMessage','CmHopperFinal','CmHopperHistory','ReportAgentPreview','VoiceCallReport','FaxQueueReport','MailQueueReport','SmsQueueReport','JscriptySessionReport','WhatsappInteraction','WhatsappMessage','WhatsappQueueReport','create','bulkCreate','duplicates','spread','error','show','name','color','$and','omit','cf_%d','pickBy','format','table','setFields','id\x20=\x20?','toParam','text','phone','options','getTags','setTags','getHoppers','rawAttributes','ContactId','rows','getHopperFinals','includeAll','include','getJscriptySessions','uploadCsv','No\x20ListId\x20specified','binding_keys','No\x20association\x20keys\x20specified!','binding_values','No\x20association\x20values\x20specified!','socket_timestamp','Unable\x20to\x20synchronize\x20socket,\x20no\x20timestamp\x20passed','No\x20phone\x20column\x20specified','firstName','No\x20firstName\x20column\x20specified','server/files/tmp','file','chmodSync','0777','child_process','fork','../../components/import/cm/csv','File\x20uploaded\x20correctly!','pid','upload','createReadStream','parse','meta','import','binding','../../components/import/cm/csv2','stringify','start\x20child\x20process\x20correctly!','error\x20child\x20process','mail','chat','sms','openchannel','fax','whatsapp','voice','channel','toLowerCase','range','isValid','Invalid\x20date\x20for\x20range\x20from\x20filter','Invalid\x20date\x20for\x20range\x20to\x20filter','uniqueid','source','destination','callerid','duration','note','createdAt','userSecondDisposition','UserId','fullname','findAndCountAll','alias','startCase','Website','Account','closed','closedAt','disposition','secondDisposition','key','Owner','browserName','customerIp','customerPort','deviceModel','osName','ratingMessage','ratingType','ratingValue','referer','substatus','externalUrl','Interaction','flatten','sortBy','reverse','slice','eml-format','zip-dir','fast-json-patch','moment','path','sox','ejs','fs-extra','jsforce','to-csv','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','defaults','redis','localhost','socket.io-emitter','./cmContact.socket','sendStatus','status','end','undefined','limit','offset','set','json','apply','reject','save','update','then','stack','send','index','CmContact','keys','length','startsWith','cf_','push','CmCustomField','findOne','all','fieldType','type','model','query','intersection','fields','attributes','nolimit','order','sort','where','filters','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','c.deletedAt\x20IS\x20NULL','expr','parseSearch','conditions','find','Tag','value','split','forEach','union','User','and','uc.UserId\x20=\x20?','dateOfBirth','castTo','DATE','start','hasOwnProperty','filter','isNil','Contact','isEmpty','ListId','c.ListId\x20IN\x20?','concat','CONCAT_WS(\x27\x20\x27,\x20c.firstName,\x20c.lastName,\x20c.email)\x20LIKE\x20?','\x20=\x20?','tag','isArray','CONCAT(\x27,\x27,\x20`TagIds`,\x20\x27,\x27)\x20LIKE\x20?','replace','getFullTextValue','c.id\x20LIKE\x20?','c.phone\x20LIKE\x20?','c.mobile\x20LIKE\x20?','c.fax\x20LIKE\x20?','isEmail','c.email\x20LIKE\x20?','c.firstName\x20LIKE\x20?','c.lastName\x20LIKE\x20?','group','c.id','QueryTypes','SELECT','clone','DESC','having','t.id\x20IN\x20?','resolve','user','role','some','getLists','c.ListId\x20IS\x20NULL','map','agent','toString','count','sequelize','keyBy','merge','c.firstName','c.lastName','c.phone','c.mobile','c.email','c.ListId','c.CompanyId','GROUP_CONCAT(DISTINCT\x20t.id)','TagIds','Tags','destroy','params','catch','describe','tags','columnName','displayName','custom'];(function(_0x359627,_0x27788b){var _0x4a6e73=function(_0x17af52){while(--_0x17af52){_0x359627['push'](_0x359627['shift']());}};_0x4a6e73(++_0x27788b);}(_0x74e6,0x8d));var _0x674e=function(_0x37b3df,_0x2e1535){_0x37b3df=_0x37b3df-0x0;var _0x398bd4=_0x74e6[_0x37b3df];return _0x398bd4;};'use strict';var emlformat=require(_0x674e('0x0'));var rimraf=require('rimraf');var zipdir=require(_0x674e('0x1'));var jsonpatch=require(_0x674e('0x2'));var rp=require('request-promise');var moment=require(_0x674e('0x3'));var BPromise=require('bluebird');var Mustache=require('mustache');var util=require('util');var path=require(_0x674e('0x4'));var sox=require(_0x674e('0x5'));var csv=require('to-csv');var ejs=require(_0x674e('0x6'));var fs=require('fs');var fs_extra=require(_0x674e('0x7'));var _=require('lodash');var squel=require('squel');var crypto=require('crypto');var jsforce=require(_0x674e('0x8'));var deskjs=require('desk.js');var toCsv=require(_0x674e('0x9'));var querystring=require(_0x674e('0xa'));var Papa=require(_0x674e('0xb'));var Redis=require(_0x674e('0xc'));var authService=require(_0x674e('0xd'));var qs=require(_0x674e('0xe'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0x674e('0xf'));var logger=require(_0x674e('0x10'))(_0x674e('0x11'));var utils=require(_0x674e('0x12'));var config=require(_0x674e('0x13'));var licenseUtil=require(_0x674e('0x14'));var db=require(_0x674e('0x15'))['db'];config['redis']=_[_0x674e('0x16')](config[_0x674e('0x17')],{'host':_0x674e('0x18'),'port':0x18eb});var socket=require(_0x674e('0x19'))(new Redis(config[_0x674e('0x17')]));require(_0x674e('0x1a'))['register'](socket);function respondWithStatusCode(_0x173761,_0x466d57){_0x466d57=_0x466d57||0xcc;return function(_0xc465a4){if(_0xc465a4){return _0x173761[_0x674e('0x1b')](_0x466d57);}return _0x173761[_0x674e('0x1c')](_0x466d57)[_0x674e('0x1d')]();};}function respondWithResult(_0x14ff6e,_0x4e404e){_0x4e404e=_0x4e404e||0xc8;return function(_0x4f9a7c){if(_0x4f9a7c){return _0x14ff6e[_0x674e('0x1c')](_0x4e404e)['json'](_0x4f9a7c);}};}function respondWithFilteredResult(_0x1f982f,_0x309ed7){return function(_0xf4c4d8){if(_0xf4c4d8){var _0x4d0b28=typeof _0x309ed7['offset']===_0x674e('0x1e')&&typeof _0x309ed7[_0x674e('0x1f')]===_0x674e('0x1e');var _0x435017=_0xf4c4d8['count'];var _0x2f7624=_0x4d0b28?0x0:_0x309ed7[_0x674e('0x20')];var _0x474b63=_0x4d0b28?_0xf4c4d8['count']:_0x309ed7[_0x674e('0x20')]+_0x309ed7[_0x674e('0x1f')];var _0x4a6cca;if(_0x474b63>=_0x435017){_0x474b63=_0x435017;_0x4a6cca=0xc8;}else{_0x4a6cca=0xce;}_0x1f982f[_0x674e('0x1c')](_0x4a6cca);return _0x1f982f[_0x674e('0x21')]('Content-Range',_0x2f7624+'-'+_0x474b63+'/'+_0x435017)[_0x674e('0x22')](_0xf4c4d8);}return null;};}function patchUpdates(_0x528373){return function(_0x596a1a){try{jsonpatch[_0x674e('0x23')](_0x596a1a,_0x528373,!![]);}catch(_0x3721cf){return BPromise[_0x674e('0x24')](_0x3721cf);}return _0x596a1a[_0x674e('0x25')]();};}function saveUpdates(_0x263a7e,_0x101ccd){return function(_0x462042){if(_0x462042){return _0x462042[_0x674e('0x26')](_0x263a7e)[_0x674e('0x27')](function(_0x5d5b42){return _0x5d5b42;});}return null;};}function removeEntity(_0x1eb9ed,_0x375881){return function(_0x12d177){if(_0x12d177){return _0x12d177['destroy']()[_0x674e('0x27')](function(){_0x1eb9ed[_0x674e('0x1c')](0xcc)[_0x674e('0x1d')]();});}};}function handleEntityNotFound(_0x5e12f2,_0x516ed3){return function(_0x46e1a0){if(!_0x46e1a0){_0x5e12f2[_0x674e('0x1b')](0x194);}return _0x46e1a0;};}function handleError(_0x4b0c21,_0xa43748){_0xa43748=_0xa43748||0x1f4;return function(_0x388ee8){logger['error'](_0x388ee8[_0x674e('0x28')]);if(_0x388ee8['name']){delete _0x388ee8['name'];}_0x4b0c21[_0x674e('0x1c')](_0xa43748)[_0x674e('0x29')](_0x388ee8);};}exports[_0x674e('0x2a')]=function(_0x5205ba,_0x18a4d4){var _0x58db18={},_0x2e510a={},_0x326e72={'count':0x0,'rows':[]};return db[_0x674e('0x2b')]['describe']()[_0x674e('0x27')](function(_0x1b64f6){var _0x17ec73=[];for(var _0x1160b9=0x0;_0x1160b9<Object[_0x674e('0x2c')](_0x1b64f6)[_0x674e('0x2d')];_0x1160b9++){var _0x160751=Object[_0x674e('0x2c')](_0x1b64f6)[_0x1160b9];if(_[_0x674e('0x2e')](_0x160751,_0x674e('0x2f'))){_0x17ec73[_0x674e('0x30')](db[_0x674e('0x31')][_0x674e('0x32')]({'where':{'id':_['trimStart'](_0x160751,_0x674e('0x2f'))},'raw':!![]}));}}return BPromise[_0x674e('0x33')](_0x17ec73)[_0x674e('0x27')](function(_0x4f9526){for(var _0x1ef635=0x0;_0x1ef635<_0x4f9526[_0x674e('0x2d')];_0x1ef635++){if(_0x4f9526[_0x1ef635]){var _0x1b9b86='cf_'+_0x4f9526[_0x1ef635]['id'];var _0x19de19=_0x1b64f6[_0x1b9b86];_0x19de19[_0x674e('0x34')]=_0x4f9526[_0x1ef635][_0x674e('0x35')];}}return _0x1b64f6;});})[_0x674e('0x27')](function(_0x589601){_0x2e510a[_0x674e('0x36')]=_['keys'](_0x589601);_0x2e510a[_0x674e('0x37')]=_[_0x674e('0x2c')](_0x5205ba['query']);_0x2e510a['filters']=_[_0x674e('0x38')](_0x2e510a[_0x674e('0x36')],_0x2e510a['query']);_0x58db18['attributes']=_[_0x674e('0x38')](_0x2e510a['model'],qs[_0x674e('0x39')](_0x5205ba[_0x674e('0x37')][_0x674e('0x39')]));_0x58db18['attributes']=_0x58db18['attributes']['length']?_0x58db18[_0x674e('0x3a')]:_0x2e510a[_0x674e('0x36')];if(!_0x5205ba[_0x674e('0x37')]['hasOwnProperty'](_0x674e('0x3b'))){_0x58db18[_0x674e('0x1f')]=qs[_0x674e('0x1f')](_0x5205ba[_0x674e('0x37')][_0x674e('0x1f')]);_0x58db18[_0x674e('0x20')]=qs[_0x674e('0x20')](_0x5205ba[_0x674e('0x37')]['offset']);}_0x58db18[_0x674e('0x3c')]=qs[_0x674e('0x3d')](_0x5205ba[_0x674e('0x37')][_0x674e('0x3d')]);_0x58db18[_0x674e('0x3e')]=qs[_0x674e('0x3f')](_[_0x674e('0x40')](_0x5205ba[_0x674e('0x37')],_0x2e510a[_0x674e('0x3f')]),_0x589601);var _0x3623b4=[];var _0x26d191=squel[_0x674e('0x41')]()['field']('id')[_0x674e('0x42')]('name')[_0x674e('0x42')]('color')[_0x674e('0x43')](_0x674e('0x44'));var _0x492632=squel[_0x674e('0x41')]()[_0x674e('0x43')](_0x674e('0x45'),'c')[_0x674e('0x46')](_0x674e('0x47'),'uc',_0x674e('0x48'))[_0x674e('0x46')](_0x674e('0x49'),'ct',_0x674e('0x4a'))['left_join']('tools_tags','t','t.id\x20=\x20ct.TagId')[_0x674e('0x3e')](_0x674e('0x4b'));var _0x1bdf03=squel[_0x674e('0x4c')]();var _0xc97db4=[];var _0x966b2e=squel[_0x674e('0x4c')]();var _0x3e0d25;if(_0x5205ba[_0x674e('0x37')]['search']){_0x3e0d25=as[_0x674e('0x4d')](_0x5205ba[_0x674e('0x37')]['search']);var _0x5d9430=_0x3e0d25['sqlOperator'];for(var _0x46e7fa=0x0;_0x46e7fa<_0x3e0d25[_0x674e('0x4e')][_0x674e('0x2d')];_0x46e7fa++){var _0x2398d4=_0x3e0d25['conditions'][_0x46e7fa];var _0x4da3f4='c';var _0x5b9c5d=_(_0x589601)['keys']()[_0x674e('0x4f')](function(_0x307c99){return _0x307c99===_0x2398d4[_0x674e('0x42')];});if(_0x5b9c5d)_0x5b9c5d=_0x589601[_0x2398d4[_0x674e('0x42')]];if(!_0x5b9c5d){if(_0x2398d4['field']===_0x674e('0x50')){var _0x19c063=_0x2398d4[_0x674e('0x51')][_0x674e('0x52')](',')['map'](function(_0x42404f){return Number(_0x42404f);});_0x19c063[_0x674e('0x53')](function(_0x10206c){_0x966b2e['or']('CONCAT(\x27,\x27,\x20`TagIds`,\x20\x27,\x27)\x20LIKE\x20?','%,'+_0x10206c+',%');});_0xc97db4=_[_0x674e('0x54')](_0xc97db4,_0x19c063);}else if(_0x2398d4['field']===_0x674e('0x55')){_0x1bdf03[_0x674e('0x56')](_0x674e('0x57'),_0x2398d4[_0x674e('0x51')]);}}else{if(_0x2398d4[_0x674e('0x42')]===_0x674e('0x58')||_0x5b9c5d[_0x674e('0x34')]==='datetime')_0x2398d4[_0x674e('0x59')]=_0x674e('0x5a');var _0x6355ef=as['buildExpression'](_0x4da3f4,_0x5b9c5d['type'],_0x2398d4);_0x1bdf03[_0x5d9430](_0x6355ef['text'],_0x6355ef[_0x674e('0x51')][_0x674e('0x5b')],_0x6355ef[_0x674e('0x51')][_0x674e('0x1d')]);}}}else{var _0x1fd114=_(Object[_0x674e('0x2c')](_0x5205ba[_0x674e('0x37')]))['map'](function(_0x443d43){return _0x589601[_0x674e('0x5c')](_0x443d43)?_0x443d43:undefined;})[_0x674e('0x5d')](function(_0x20272c){return!_[_0x674e('0x5e')](_0x20272c);})['value']();if(_0x5205ba[_0x674e('0x37')][_0x674e('0x5f')])_0x1fd114[_0x674e('0x30')](_0x674e('0x5f'));if(!_[_0x674e('0x60')](_0x1fd114)){_0x1fd114[_0x674e('0x53')](function(_0x5a3235){if(_0x5a3235===_0x674e('0x61')){_0x492632[_0x674e('0x3e')](_0x674e('0x62'),[][_0x674e('0x63')](_0x5205ba['query'][_0x5a3235]));}else if(_0x5a3235===_0x674e('0x5f')){var _0xd7b6cb='%'+_0x5205ba['query'][_0x5a3235]+'%';_0x492632[_0x674e('0x3e')](_0x674e('0x64'),_0xd7b6cb);}else{_0x492632['where']('c.'+_0x5a3235+_0x674e('0x65'),_0x5205ba[_0x674e('0x37')][_0x5a3235]);}});}if(_0x5205ba['query'][_0x674e('0x66')]){_0xc97db4=_[_0x674e('0x67')](_0x5205ba['query']['tag'])?_0x5205ba[_0x674e('0x37')][_0x674e('0x66')]:new Array(_0x5205ba[_0x674e('0x37')][_0x674e('0x66')]);_0xc97db4[_0x674e('0x53')](function(_0x1a158e){_0x966b2e['or'](_0x674e('0x68'),'%,'+_0x1a158e+',%');});}if(_0x5205ba[_0x674e('0x37')]['filter']){var _0x31f2f6=_0x5205ba[_0x674e('0x37')][_0x674e('0x5d')][_0x674e('0x69')]('\x5c','\x5c\x5c')[_0x674e('0x69')](/'/g,'\x27\x27');if(_0x31f2f6[_0x674e('0x52')]('\x20')[_0x674e('0x2d')]>0x1){_0x1bdf03['or']('MATCH\x20(c.firstName,\x20c.lastName,\x20c.phone,\x20c.mobile,\x20c.fax,\x20c.email)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)',qs[_0x674e('0x6a')](_0x31f2f6),null);}else{if(qs['isNumeric'](_0x31f2f6)){_0x1bdf03['or'](_0x674e('0x6b'),_0x31f2f6+'%');_0x1bdf03['or'](_0x674e('0x6c'),_0x31f2f6+'%');_0x1bdf03['or'](_0x674e('0x6d'),_0x31f2f6+'%');_0x1bdf03['or'](_0x674e('0x6e'),_0x31f2f6+'%');}else if(qs[_0x674e('0x6f')](_0x31f2f6)){_0x1bdf03['or'](_0x674e('0x70'),_0x31f2f6+'%');}else{_0x1bdf03['or'](_0x674e('0x71'),'%'+_0x31f2f6+'%');_0x1bdf03['or'](_0x674e('0x72'),'%'+_0x31f2f6+'%');_0x1bdf03['or']('c.email\x20LIKE\x20?','%'+_0x31f2f6+'%');}}}}_0x492632[_0x674e('0x3e')](_0x1bdf03);_0x492632[_0x674e('0x73')](_0x674e('0x74'));var _0x87b33e={'type':db['Sequelize'][_0x674e('0x75')][_0x674e('0x76')],'raw':!![]};var _0x270c67=_0x492632[_0x674e('0x77')]()[_0x674e('0x42')](_0x674e('0x74'));if(_0x58db18[_0x674e('0x3c')]){_0x58db18[_0x674e('0x3c')][_0x674e('0x53')](function(_0xe0cdf6){_0x492632[_0x674e('0x3c')]('c.'+_0xe0cdf6[0x0],_0xe0cdf6[0x1]===_0x674e('0x78')?![]:!![]);});}if(!_['isEmpty'](_0xc97db4)){_0x492632[_0x674e('0x79')](_0x966b2e);_0x270c67[_0x674e('0x3e')](_0x674e('0x7a'),_0xc97db4);}BPromise[_0x674e('0x7b')]()[_0x674e('0x27')](function(){if(!_0x3e0d25)return;if(_0x5205ba[_0x674e('0x7c')][_0x674e('0x7d')]!=='agent')return;if(!_[_0x674e('0x7e')](_0x3e0d25[_0x674e('0x4e')],['field','User'])){return _0x5205ba[_0x674e('0x7c')][_0x674e('0x7f')]({'attributes':['id'],'raw':!![]})[_0x674e('0x27')](function(_0x1979ad){if(_[_0x674e('0x60')](_0x1979ad)){_0x270c67[_0x674e('0x3e')](_0x674e('0x80'));_0x492632[_0x674e('0x3e')](_0x674e('0x80'));}else{_0x270c67[_0x674e('0x3e')]('c.ListId\x20IN\x20?',_[_0x674e('0x81')](_0x1979ad,'id'));_0x492632[_0x674e('0x3e')](_0x674e('0x62'),_[_0x674e('0x81')](_0x1979ad,'id'));}});}})[_0x674e('0x27')](function(){if(_0x5205ba[_0x674e('0x7c')][_0x674e('0x7d')]===_0x674e('0x82')&&!_0x3e0d25&&!_0x5205ba['query'][_0x674e('0x61')])return[];return db['sequelize'][_0x674e('0x37')](_0x270c67[_0x674e('0x83')](),_0x87b33e);})[_0x674e('0x27')](function(_0x1b14ed){_0x326e72['count']=_0x1b14ed[_0x674e('0x2d')];if(_0x326e72[_0x674e('0x84')]===0x0)return[];return db[_0x674e('0x85')][_0x674e('0x37')](_0x26d191[_0x674e('0x83')](),_0x87b33e)[_0x674e('0x27')](function(_0x31b572){_0x3623b4=_[_0x674e('0x86')](_0x31b572,'id');_0x87b33e=_[_0x674e('0x87')](_0x87b33e,{'model':db['CmContact'],'mapToModel':!![],'raw':!![],'nest':!![]});if(_0x5205ba[_0x674e('0x37')][_0x674e('0x39')]){_0x58db18[_0x674e('0x3a')][_0x674e('0x53')](function(_0x72d561){_0x492632[_0x674e('0x42')]('c.'+_0x72d561);});}else{_0x492632[_0x674e('0x42')](_0x674e('0x74'));_0x492632[_0x674e('0x42')](_0x674e('0x88'));_0x492632[_0x674e('0x42')](_0x674e('0x89'));_0x492632[_0x674e('0x42')](_0x674e('0x8a'));_0x492632[_0x674e('0x42')](_0x674e('0x8b'));_0x492632['field']('c.fax');_0x492632[_0x674e('0x42')](_0x674e('0x8c'));_0x492632[_0x674e('0x42')](_0x674e('0x8d'));_0x492632[_0x674e('0x42')]('c.createdAt');_0x492632[_0x674e('0x42')]('c.deletedAt');_0x492632[_0x674e('0x42')](_0x674e('0x8e'));_0x492632[_0x674e('0x42')](_0x674e('0x8f'),'TagIds');}if(_0x58db18[_0x674e('0x1f')])_0x492632[_0x674e('0x1f')](_0x58db18['limit']);if(_0x58db18[_0x674e('0x20')])_0x492632[_0x674e('0x20')](_0x58db18[_0x674e('0x20')]);return db[_0x674e('0x85')][_0x674e('0x37')](_0x492632[_0x674e('0x83')](),_0x87b33e);});})['then'](function(_0x56f01f){_0x56f01f[_0x674e('0x53')](function(_0x32acc3){if(_0x32acc3[_0x674e('0x90')]){_0x32acc3[_0x674e('0x91')]=[];_0x32acc3[_0x674e('0x90')][_0x674e('0x52')](',')[_0x674e('0x53')](function(_0x480ab2){_0x32acc3[_0x674e('0x91')][_0x674e('0x30')](_0x3623b4[_0x480ab2]);});}delete _0x32acc3[_0x674e('0x90')];});_0x326e72['rows']=_0x56f01f;return _0x326e72;})['then'](respondWithFilteredResult(_0x18a4d4,_0x58db18));})['catch'](handleError(_0x18a4d4,null));};exports[_0x674e('0x92')]=function(_0x2b262a,_0x2456fd){return db[_0x674e('0x2b')]['find']({'where':{'id':_0x2b262a[_0x674e('0x93')]['id']}})[_0x674e('0x27')](handleEntityNotFound(_0x2456fd,null))[_0x674e('0x27')](removeEntity(_0x2456fd,null))[_0x674e('0x94')](handleError(_0x2456fd,null));};exports[_0x674e('0x95')]=function(_0x4c50eb,_0x4cc98e){return db[_0x674e('0x2b')][_0x674e('0x95')]()[_0x674e('0x27')](function(_0x95c778){delete _0x95c778[_0x674e('0x96')];for(var _0x188564=0x0;_0x188564<Object[_0x674e('0x2c')](_0x95c778)[_0x674e('0x2d')];_0x188564++){var _0x1a78ed=Object[_0x674e('0x2c')](_0x95c778)[_0x188564];if(!_[_0x674e('0x2e')](_0x1a78ed,_0x674e('0x2f'))){_0x95c778[_0x1a78ed][_0x674e('0x97')]=_0x1a78ed;_0x95c778[_0x1a78ed][_0x674e('0x98')]=_0x1a78ed;}}return _0x95c778;})[_0x674e('0x27')](function(_0x3e3dde){var _0x5bfe2d={'where':{'$or':[{'ListId':_0x4c50eb['query']['id']},{'ListId':null}]},'raw':!![]};return db[_0x674e('0x31')]['findAll'](_0x5bfe2d)[_0x674e('0x27')](function(_0x1131c6){for(var _0x114a7e=0x0;_0x114a7e<_0x1131c6[_0x674e('0x2d')];_0x114a7e++){var _0x20b1fb='cf_'+_0x1131c6[_0x114a7e]['id'];_0x3e3dde[_0x20b1fb][_0x674e('0x97')]=_0x20b1fb;_0x3e3dde[_0x20b1fb][_0x674e('0x98')]=_0x1131c6[_0x114a7e]['alias'];_0x3e3dde[_0x20b1fb][_0x674e('0x99')]={'type':_0x1131c6[_0x114a7e][_0x674e('0x35')],'values':_0x1131c6[_0x114a7e][_0x674e('0x9a')]};}Object['keys'](_0x3e3dde)['forEach'](function(_0x10e2b7){if(!_0x3e3dde[_0x10e2b7]['hasOwnProperty'](_0x674e('0x97'))){delete _0x3e3dde[_0x10e2b7];}});return _0x3e3dde;});})[_0x674e('0x27')](respondWithResult(_0x4cc98e,null))['catch'](handleError(_0x4cc98e,null));};exports[_0x674e('0x87')]=function(_0x4123d6,_0xcec1fb){var _0x2b3970;var _0x52196c;var _0x3b1fe3;if(_0x4123d6[_0x674e('0x9b')]['id']){delete _0x4123d6[_0x674e('0x9b')]['id'];}return db[_0x674e('0x2b')][_0x674e('0x9c')]({'where':{'id':[_0x4123d6['body']['to'],_0x4123d6['body'][_0x674e('0x43')]]}})[_0x674e('0x27')](function(_0x2a5bb8){if(_0x2a5bb8){if(_0x2a5bb8[_0x674e('0x2d')]!==0x2){return null;}_0x2a5bb8[0x0]=_0x2a5bb8[0x0][_0x674e('0x9d')]({'plain':!![]});_0x2a5bb8[0x1]=_0x2a5bb8[0x1][_0x674e('0x9d')]({'plain':!![]});delete _0x2a5bb8[0x0]['id'];delete _0x2a5bb8[0x1]['id'];return _[_0x674e('0x9e')](_0x2a5bb8[0x0],_0x2a5bb8[0x1],function(_0x1b98c8,_0x561cb7){if(Array[_0x674e('0x67')](_0x561cb7)&&!_0x561cb7[_0x674e('0x2d')]){return _0x1b98c8;}else if(!_0x561cb7){return _0x1b98c8;}});}})['then'](handleEntityNotFound(_0xcec1fb,null))[_0x674e('0x27')](function(_0x59fb63){if(_0x59fb63){if(_0x59fb63[_0x674e('0x96')]&&_[_0x674e('0x67')](_0x59fb63[_0x674e('0x96')])){_0x59fb63[_0x674e('0x96')]=_0x59fb63[_0x674e('0x96')][_0x674e('0x9f')]();}logger[_0x674e('0xa0')]('[CmContact][merge]\x20to\x20%s\x20from\x20%s',_0x4123d6['body']['to'],_0x4123d6['body'][_0x674e('0x43')]);return db[_0x674e('0xa1')]['destroy']({'where':{'ContactId':[_0x4123d6[_0x674e('0x9b')]['to'],_0x4123d6[_0x674e('0x9b')][_0x674e('0x43')]]}})[_0x674e('0x27')](function(_0x3f82a2){logger[_0x674e('0xa0')](_0x674e('0xa2'),_0x3f82a2);return db[_0x674e('0xa3')]['destroy']({'where':{'ContactId':[_0x4123d6['body']['to'],_0x4123d6[_0x674e('0x9b')][_0x674e('0x43')]]}})[_0x674e('0x27')](function(_0x34a94d){logger[_0x674e('0xa0')](_0x674e('0xa4'),_0x34a94d);return db['CmContact']['create'](_0x59fb63);});});}})['then'](function(_0x116f86){if(_0x116f86){_0x2b3970=_0x116f86;_0x52196c={'ContactId':_0x2b3970['id']};_0x3b1fe3={'where':{'ContactId':[_0x4123d6[_0x674e('0x9b')]['to'],_0x4123d6[_0x674e('0x9b')][_0x674e('0x43')]]}};return db[_0x674e('0xa5')][_0x674e('0x26')](_0x52196c,_0x3b1fe3);}})[_0x674e('0x27')](function(){if(_0x2b3970){return db[_0x674e('0xa6')][_0x674e('0x26')](_0x52196c,_0x3b1fe3);}})['then'](function(){if(_0x2b3970){return db['ChatOfflineMessage']['update'](_0x52196c,_0x3b1fe3);}})[_0x674e('0x27')](function(){if(_0x2b3970){return db[_0x674e('0xa7')][_0x674e('0x26')](_0x52196c,_0x3b1fe3);}})[_0x674e('0x27')](function(){if(_0x2b3970){return db['MailMessage'][_0x674e('0x26')](_0x52196c,_0x3b1fe3);}})[_0x674e('0x27')](function(){if(_0x2b3970){return db[_0x674e('0xa7')]['update'](_0x52196c,_0x3b1fe3);}})['then'](function(){if(_0x2b3970){return db[_0x674e('0xa8')][_0x674e('0x26')](_0x52196c,_0x3b1fe3);}})[_0x674e('0x27')](function(){if(_0x2b3970){return db[_0x674e('0xa9')]['update'](_0x52196c,_0x3b1fe3);}})['then'](function(){if(_0x2b3970){return db[_0x674e('0xaa')][_0x674e('0x26')](_0x52196c,_0x3b1fe3);}})[_0x674e('0x27')](function(){if(_0x2b3970){return db['FaxInteraction'][_0x674e('0x26')](_0x52196c,_0x3b1fe3);}})[_0x674e('0x27')](function(){if(_0x2b3970){return db[_0x674e('0xab')][_0x674e('0x26')](_0x52196c,_0x3b1fe3);}})[_0x674e('0x27')](function(){if(_0x2b3970){return db[_0x674e('0xac')]['update'](_0x52196c,_0x3b1fe3);}})[_0x674e('0x27')](function(){if(_0x2b3970){return db[_0x674e('0xad')]['update'](_0x52196c,_0x3b1fe3);}})[_0x674e('0x27')](function(){if(_0x2b3970){return db[_0x674e('0xae')]['update'](_0x52196c,_0x3b1fe3);}})[_0x674e('0x27')](function(){if(_0x2b3970){return db[_0x674e('0xaf')][_0x674e('0x26')](_0x52196c,_0x3b1fe3);}})[_0x674e('0x27')](function(){if(_0x2b3970){return db[_0x674e('0xb0')]['update'](_0x52196c,_0x3b1fe3);}})['then'](function(){if(_0x2b3970){return db[_0x674e('0xb1')][_0x674e('0x26')](_0x52196c,_0x3b1fe3);}})['then'](function(){if(_0x2b3970){return db['ChatQueueReport'][_0x674e('0x26')](_0x52196c,_0x3b1fe3);}})['then'](function(){if(_0x2b3970){return db[_0x674e('0xb2')]['update'](_0x52196c,_0x3b1fe3);}})['then'](function(){if(_0x2b3970){return db[_0x674e('0xb3')][_0x674e('0x26')](_0x52196c,_0x3b1fe3);}})[_0x674e('0x27')](function(){if(_0x2b3970){return db['OpenchannelQueueReport'][_0x674e('0x26')](_0x52196c,_0x3b1fe3);}})[_0x674e('0x27')](function(){if(_0x2b3970){return db[_0x674e('0xb4')][_0x674e('0x26')](_0x52196c,_0x3b1fe3);}})[_0x674e('0x27')](function(){if(_0x2b3970){return db[_0x674e('0xb5')]['update'](_0x52196c,_0x3b1fe3);}})[_0x674e('0x27')](function(){if(_0x2b3970){return db[_0x674e('0xb6')]['update'](_0x52196c,_0x3b1fe3);}})[_0x674e('0x27')](function(){if(_0x2b3970){return db[_0x674e('0xb7')]['update'](_0x52196c,_0x3b1fe3);}})['then'](function(){if(_0x2b3970){return db[_0x674e('0xb8')]['update'](_0x52196c,_0x3b1fe3);}})[_0x674e('0x27')](function(){if(_0x2b3970){return db[_0x674e('0x2b')][_0x674e('0x92')]({'where':{'id':[_0x4123d6[_0x674e('0x9b')]['to'],_0x4123d6[_0x674e('0x9b')][_0x674e('0x43')]]}});}})[_0x674e('0x27')](function(){if(_0x2b3970){return _0x2b3970;}})[_0x674e('0x27')](respondWithResult(_0xcec1fb,null))['catch'](handleError(_0xcec1fb,null));};exports[_0x674e('0xb9')]=function(_0x448f16,_0x133969){return db['CmContact'][_0x674e('0x95')]()[_0x674e('0x27')](function(_0x53dffe){if(_0x448f16[_0x674e('0x9b')][_0x674e('0x96')]&&_[_0x674e('0x67')](_0x448f16[_0x674e('0x9b')][_0x674e('0x96')])){if(_0x448f16[_0x674e('0x9b')][_0x674e('0x96')][_0x674e('0x2d')]){_0x448f16[_0x674e('0x9b')][_0x674e('0x96')]=_0x448f16[_0x674e('0x9b')]['tags'][_0x674e('0x9f')](';')+';';}else{_0x448f16[_0x674e('0x9b')][_0x674e('0x96')]=null;}}else{_0x448f16[_0x674e('0x9b')][_0x674e('0x96')]=null;}return db[_0x674e('0x2b')][_0x674e('0xb9')](_0x448f16[_0x674e('0x9b')],{'fields':_[_0x674e('0x2c')](_0x53dffe),'raw':!![]});})[_0x674e('0x27')](respondWithResult(_0x133969,0xc9))[_0x674e('0x94')](handleError(_0x133969,null));};exports[_0x674e('0xba')]=function(_0x4a1c31,_0x147e63){var _0x244cff=[];var _0x42e65d=0x0;var _0x3dbfbe=0x0;var _0x24842a=0x0;return db[_0x674e('0x2b')]['describe']()[_0x674e('0x27')](function(_0x1ac848){return BPromise['each'](_0x4a1c31[_0x674e('0x9b')],function(_0x43724d){var _0x288bf9={'where':{'$or':[]},'defaults':_0x43724d,'fields':_[_0x674e('0x2c')](_0x1ac848),'raw':!![]};if(_0x43724d[_0x674e('0xbb')]){for(var _0x2330df=0x0;_0x2330df<_0x43724d[_0x674e('0xbb')]['length'];_0x2330df++){var _0x3f97b2={};_0x3f97b2[_0x43724d[_0x674e('0xbb')][_0x2330df]]=_0x43724d[_0x43724d[_0x674e('0xbb')][_0x2330df]];_0x288bf9[_0x674e('0x3e')]['$or'][_0x674e('0x30')](_0x3f97b2);}_0x288bf9[_0x674e('0x3e')][_0x674e('0x61')]=_0x43724d[_0x674e('0x61')];}return db[_0x674e('0x2b')]['findOrCreate'](_0x288bf9)[_0x674e('0xbc')](function(_0x24e3ca,_0x16b9f2){if(_0x16b9f2){_0x42e65d++;}else{_0x24842a++;}})[_0x674e('0x94')](function(_0x301f5d){console[_0x674e('0xbd')](_0x301f5d);_0x3dbfbe++;});});})[_0x674e('0x27')](function(_0x10521e){if(_0x10521e){return{'success':_0x42e65d,'failure':_0x3dbfbe,'duplicates':_0x24842a};}})[_0x674e('0x27')](respondWithResult(_0x147e63,0xc9))['catch'](handleError(_0x147e63,null));};exports[_0x674e('0xbe')]=function(_0x5a7ae2,_0x50031a,_0x941221){var _0x45bc33;return db[_0x674e('0x2b')][_0x674e('0x95')]()[_0x674e('0x27')](function(_0x4f5e20){return db['CmContact'][_0x674e('0x4f')]({'where':{'id':_0x5a7ae2[_0x674e('0x93')]['id']},'include':[{'model':db['Tag'],'as':'Tags','attributes':['id',_0x674e('0xbf'),_0x674e('0xc0')],'required':_0x5a7ae2[_0x674e('0x37')][_0x674e('0x66')]?!![]:![]}],'attributes':_['keys'](_0x4f5e20)});})[_0x674e('0x27')](function(_0x5de03c){_0x45bc33=_0x5de03c[_0x674e('0x9d')]({'plain':!![]});var _0x1c7969={'where':{'$and':[{'ListId':{'$ne':null}}]}};if(_0x5de03c&&_0x5de03c[_0x674e('0x61')]){if(_0x5de03c[_0x674e('0x61')]){_0x1c7969['where'][_0x674e('0xc1')][_0x674e('0x30')]({'ListId':{'$ne':_0x5de03c[_0x674e('0x61')]}});}}return db['CmCustomField'][_0x674e('0x9c')](_0x1c7969);})[_0x674e('0x27')](function(_0xa10d45){return _[_0x674e('0xc2')](_0x45bc33,_['map'](_0xa10d45,function(_0x1585ed){return util['format'](_0x674e('0xc3'),_0x1585ed['id']);}));})[_0x674e('0x27')](handleEntityNotFound(_0x50031a,null))[_0x674e('0x27')](respondWithResult(_0x50031a,null))[_0x674e('0x94')](handleError(_0x50031a,null));};exports[_0x674e('0x26')]=function(_0x4db8e8,_0x262d47){var _0x117f98;if(_0x4db8e8[_0x674e('0x9b')]['id']){delete _0x4db8e8[_0x674e('0x9b')]['id'];}return db['CmContact'][_0x674e('0x4f')]({'where':{'id':_0x4db8e8[_0x674e('0x93')]['id']}})[_0x674e('0x27')](handleEntityNotFound(_0x262d47,null))[_0x674e('0x27')](saveUpdates(_0x4db8e8['body'],null))[_0x674e('0x27')](function(_0x3b75cf){_0x117f98=_0x3b75cf;var _0x95fbd6={'where':{'$and':[{'ListId':{'$ne':null}}]}};if(_0x3b75cf&&_0x3b75cf[_0x674e('0x61')]){if(_0x3b75cf['ListId']){_0x95fbd6['where'][_0x674e('0xc1')]['push']({'ListId':{'$ne':_0x3b75cf[_0x674e('0x61')]}});}}return db[_0x674e('0x31')]['findAll'](_0x95fbd6);})['then'](function(_0x2fdad4){if(_0x2fdad4){return _[_0x674e('0xc2')](_[_0x674e('0xc4')](_0x4db8e8['body'],function(_0x4ff67f,_0xb867b5){return _[_0x674e('0x2e')](_0xb867b5,_0x674e('0x2f'));}),_[_0x674e('0x81')](_0x2fdad4,function(_0x3ded07){return util[_0x674e('0xc5')](_0x674e('0xc3'),_0x3ded07['id']);}));}})[_0x674e('0x27')](function(_0x1d0e0b){if(_0x1d0e0b&&!_[_0x674e('0x60')](_0x1d0e0b)){var _0x46ca35=squel[_0x674e('0x26')]()[_0x674e('0xc6')](_0x674e('0x45'))[_0x674e('0xc7')](_0x1d0e0b)['where'](_0x674e('0xc8'),_0x4db8e8[_0x674e('0x93')]['id'])[_0x674e('0xc9')]();return db[_0x674e('0x85')][_0x674e('0x37')](_0x46ca35[_0x674e('0xca')],{'replacements':_0x46ca35[_0x674e('0x9a')]});}})['then'](function(){if(_0x4db8e8[_0x674e('0x9b')][_0x674e('0xcb')]&&_0x117f98){return db['CmHopper'][_0x674e('0x26')]({'phone':_0x4db8e8[_0x674e('0x9b')][_0x674e('0xcb')]},{'where':{'ContactId':_0x117f98['id']}});}})['then'](function(){return _0x117f98;})[_0x674e('0x27')](respondWithResult(_0x262d47,null))['catch'](handleError(_0x262d47,null));};exports['getTags']=function(_0x4ca20a,_0x2c0db3,_0x187698){var _0x34f351={};var _0x41f681={};var _0x2a046c;var _0x51b126;return db[_0x674e('0x2b')][_0x674e('0x32')]({'where':{'id':_0x4ca20a[_0x674e('0x93')]['id']}})[_0x674e('0x27')](handleEntityNotFound(_0x2c0db3,null))[_0x674e('0x27')](function(_0x15dd45){if(_0x15dd45){_0x2a046c=_0x15dd45;_0x41f681['model']=_[_0x674e('0x2c')](db[_0x674e('0x50')]['rawAttributes']);_0x41f681['query']=_[_0x674e('0x2c')](_0x4ca20a['query']);_0x41f681[_0x674e('0x3f')]=_[_0x674e('0x38')](_0x41f681[_0x674e('0x36')],_0x41f681[_0x674e('0x37')]);_0x34f351[_0x674e('0x3a')]=_[_0x674e('0x38')](_0x41f681[_0x674e('0x36')],qs[_0x674e('0x39')](_0x4ca20a[_0x674e('0x37')]['fields']));_0x34f351[_0x674e('0x3a')]=_0x34f351['attributes']['length']?_0x34f351['attributes']:_0x41f681[_0x674e('0x36')];_0x34f351[_0x674e('0x3c')]=qs['sort'](_0x4ca20a['query']['sort']);_0x34f351[_0x674e('0x3e')]=qs[_0x674e('0x3f')](_[_0x674e('0x40')](_0x4ca20a[_0x674e('0x37')],_0x41f681[_0x674e('0x3f')]));if(_0x4ca20a[_0x674e('0x37')][_0x674e('0x5d')]){_0x34f351[_0x674e('0x3e')]=_[_0x674e('0x87')](_0x34f351[_0x674e('0x3e')],{'$or':_[_0x674e('0x81')](_0x34f351['attributes'],function(_0x20ca18){var _0x533d91={};_0x533d91[_0x20ca18]={'$like':'%'+_0x4ca20a['query']['filter']+'%'};return _0x533d91;})});}_0x34f351=_['merge']({},_0x34f351,_0x4ca20a[_0x674e('0xcc')]);return _0x2a046c[_0x674e('0xcd')](_0x34f351);}})[_0x674e('0x27')](function(_0x48e709){if(_0x48e709){_0x51b126=_0x48e709[_0x674e('0x2d')];if(!_0x4ca20a[_0x674e('0x37')][_0x674e('0x5c')](_0x674e('0x3b'))){_0x34f351[_0x674e('0x1f')]=qs[_0x674e('0x1f')](_0x4ca20a[_0x674e('0x37')][_0x674e('0x1f')]);_0x34f351[_0x674e('0x20')]=qs[_0x674e('0x20')](_0x4ca20a['query'][_0x674e('0x20')]);}return _0x2a046c[_0x674e('0xcd')](_0x34f351);}})[_0x674e('0x27')](function(_0x9869ea){if(_0x9869ea){return _0x9869ea?{'count':_0x51b126,'rows':_0x9869ea}:null;}})[_0x674e('0x27')](respondWithResult(_0x2c0db3,null))[_0x674e('0x94')](handleError(_0x2c0db3,null));};exports[_0x674e('0xce')]=function(_0x1d5592,_0x37ddac,_0x1142d6){if(_0x1d5592[_0x674e('0x9b')]['id']){delete _0x1d5592[_0x674e('0x9b')]['id'];}return db[_0x674e('0x2b')][_0x674e('0x32')]({'where':{'id':_0x1d5592[_0x674e('0x93')]['id']}})[_0x674e('0x27')](handleEntityNotFound(_0x37ddac,null))[_0x674e('0x27')](function(_0x24408a){if(_0x24408a){return _0x24408a[_0x674e('0xce')](_0x1d5592[_0x674e('0x9b')]['ids']||[]);}return null;})[_0x674e('0x27')](respondWithResult(_0x37ddac,null))[_0x674e('0x94')](handleError(_0x37ddac,null));};exports[_0x674e('0xcf')]=function(_0x132078,_0x5e1fcc,_0x4aeaf5){var _0x3da23e={'raw':![],'where':{}};var _0x1ec645={};var _0x227913={'count':0x0,'rows':[]};return db['CmContact']['findOne']({'where':{'id':_0x132078[_0x674e('0x93')]['id']}})[_0x674e('0x27')](handleEntityNotFound(_0x5e1fcc,null))['then'](function(_0x302010){if(_0x302010){_0x1ec645[_0x674e('0x36')]=_[_0x674e('0x2c')](db[_0x674e('0xa1')][_0x674e('0xd0')]);_0x1ec645[_0x674e('0x37')]=_['keys'](_0x132078[_0x674e('0x37')]);_0x1ec645[_0x674e('0x3f')]=_[_0x674e('0x38')](_0x1ec645[_0x674e('0x36')],_0x1ec645[_0x674e('0x37')]);_0x3da23e[_0x674e('0x3a')]=_[_0x674e('0x38')](_0x1ec645[_0x674e('0x36')],qs['fields'](_0x132078[_0x674e('0x37')]['fields']));_0x3da23e[_0x674e('0x3a')]=_0x3da23e[_0x674e('0x3a')][_0x674e('0x2d')]?_0x3da23e[_0x674e('0x3a')]:_0x1ec645['model'];if(!_0x132078[_0x674e('0x37')][_0x674e('0x5c')](_0x674e('0x3b'))){_0x3da23e['limit']=qs[_0x674e('0x1f')](_0x132078[_0x674e('0x37')]['limit']);_0x3da23e[_0x674e('0x20')]=qs['offset'](_0x132078[_0x674e('0x37')]['offset']);}_0x3da23e[_0x674e('0x3c')]=qs[_0x674e('0x3d')](_0x132078[_0x674e('0x37')][_0x674e('0x3d')]);_0x3da23e[_0x674e('0x3e')]=qs[_0x674e('0x3f')](_['pick'](_0x132078['query'],_0x1ec645['filters']));_0x3da23e[_0x674e('0x3e')][_0x674e('0xd1')]=_0x302010['id'];if(_0x132078['query']['filter']){_0x3da23e[_0x674e('0x3e')]=_[_0x674e('0x87')](_0x3da23e['where'],{'$or':_[_0x674e('0x81')](_0x3da23e[_0x674e('0x3a')],function(_0x5beadb){var _0x42c567={};_0x42c567[_0x5beadb]={'$like':'%'+_0x132078[_0x674e('0x37')][_0x674e('0x5d')]+'%'};return _0x42c567;})});}_0x3da23e=_['merge']({},_0x3da23e,_0x132078[_0x674e('0xcc')]);return db[_0x674e('0xa1')]['count']({'where':_0x3da23e[_0x674e('0x3e')]})['then'](function(_0xa4110a){_0x227913[_0x674e('0x84')]=_0xa4110a;if(_0x132078[_0x674e('0x37')]['includeAll']){_0x3da23e['include']=[{'all':!![]}];}return db[_0x674e('0xa1')][_0x674e('0x9c')](_0x3da23e);})['then'](function(_0x542099){_0x227913[_0x674e('0xd2')]=_0x542099;return _0x227913;});}})[_0x674e('0x27')](respondWithFilteredResult(_0x5e1fcc,_0x3da23e))[_0x674e('0x94')](handleError(_0x5e1fcc,null));};exports['getHopperHistories']=function(_0x52f33c,_0x23c62a,_0x18408a){var _0x52f632={'raw':!![],'where':{}};var _0x3aac9a={};var _0x6f0102={'count':0x0,'rows':[]};return db[_0x674e('0x2b')][_0x674e('0x32')]({'where':{'id':_0x52f33c[_0x674e('0x93')]['id']}})[_0x674e('0x27')](handleEntityNotFound(_0x23c62a,null))[_0x674e('0x27')](function(_0x412b4){if(_0x412b4){_0x3aac9a['model']=_['keys'](db['CmHopperHistory'][_0x674e('0xd0')]);_0x3aac9a['query']=_[_0x674e('0x2c')](_0x52f33c[_0x674e('0x37')]);_0x3aac9a[_0x674e('0x3f')]=_[_0x674e('0x38')](_0x3aac9a[_0x674e('0x36')],_0x3aac9a[_0x674e('0x37')]);_0x52f632[_0x674e('0x3a')]=_[_0x674e('0x38')](_0x3aac9a[_0x674e('0x36')],qs[_0x674e('0x39')](_0x52f33c[_0x674e('0x37')][_0x674e('0x39')]));_0x52f632['attributes']=_0x52f632[_0x674e('0x3a')]['length']?_0x52f632[_0x674e('0x3a')]:_0x3aac9a['model'];if(!_0x52f33c[_0x674e('0x37')][_0x674e('0x5c')]('nolimit')){_0x52f632['limit']=qs['limit'](_0x52f33c[_0x674e('0x37')][_0x674e('0x1f')]);_0x52f632[_0x674e('0x20')]=qs['offset'](_0x52f33c[_0x674e('0x37')]['offset']);}_0x52f632[_0x674e('0x3c')]=qs[_0x674e('0x3d')](_0x52f33c[_0x674e('0x37')][_0x674e('0x3d')]);_0x52f632[_0x674e('0x3e')]=qs[_0x674e('0x3f')](_[_0x674e('0x40')](_0x52f33c['query'],_0x3aac9a[_0x674e('0x3f')]));_0x52f632[_0x674e('0x3e')][_0x674e('0xd1')]=_0x412b4['id'];if(_0x52f33c[_0x674e('0x37')][_0x674e('0x5d')]){_0x52f632[_0x674e('0x3e')]=_[_0x674e('0x87')](_0x52f632[_0x674e('0x3e')],{'$or':_[_0x674e('0x81')](_0x52f632[_0x674e('0x3a')],function(_0x12ca47){var _0x336e1c={};_0x336e1c[_0x12ca47]={'$like':'%'+_0x52f33c['query'][_0x674e('0x5d')]+'%'};return _0x336e1c;})});}_0x52f632=_[_0x674e('0x87')]({},_0x52f632,_0x52f33c[_0x674e('0xcc')]);return db[_0x674e('0xaf')]['count']({'where':_0x52f632[_0x674e('0x3e')]})[_0x674e('0x27')](function(_0x1ae39c){_0x6f0102[_0x674e('0x84')]=_0x1ae39c;if(_0x52f33c[_0x674e('0x37')]['includeAll']){_0x52f632['include']=[{'all':!![]}];}return db[_0x674e('0xaf')][_0x674e('0x9c')](_0x52f632);})[_0x674e('0x27')](function(_0x3c8fab){_0x6f0102[_0x674e('0xd2')]=_0x3c8fab;return _0x6f0102;});}})[_0x674e('0x27')](respondWithFilteredResult(_0x23c62a,_0x52f632))[_0x674e('0x94')](handleError(_0x23c62a,null));};exports[_0x674e('0xd3')]=function(_0x2aa016,_0x53f67b,_0x40d9eb){var _0xa5e953={'raw':!![],'where':{}};var _0xda11cc={};var _0x2c0d4e={'count':0x0,'rows':[]};return db[_0x674e('0x2b')]['findOne']({'where':{'id':_0x2aa016['params']['id']}})['then'](handleEntityNotFound(_0x53f67b,null))[_0x674e('0x27')](function(_0x4e97aa){if(_0x4e97aa){_0xda11cc[_0x674e('0x36')]=_[_0x674e('0x2c')](db['CmHopperFinal'][_0x674e('0xd0')]);_0xda11cc[_0x674e('0x37')]=_[_0x674e('0x2c')](_0x2aa016[_0x674e('0x37')]);_0xda11cc['filters']=_['intersection'](_0xda11cc['model'],_0xda11cc[_0x674e('0x37')]);_0xa5e953[_0x674e('0x3a')]=_[_0x674e('0x38')](_0xda11cc[_0x674e('0x36')],qs[_0x674e('0x39')](_0x2aa016[_0x674e('0x37')][_0x674e('0x39')]));_0xa5e953[_0x674e('0x3a')]=_0xa5e953[_0x674e('0x3a')]['length']?_0xa5e953[_0x674e('0x3a')]:_0xda11cc[_0x674e('0x36')];if(!_0x2aa016['query']['hasOwnProperty']('nolimit')){_0xa5e953[_0x674e('0x1f')]=qs[_0x674e('0x1f')](_0x2aa016['query']['limit']);_0xa5e953[_0x674e('0x20')]=qs[_0x674e('0x20')](_0x2aa016[_0x674e('0x37')][_0x674e('0x20')]);}_0xa5e953['order']=qs['sort'](_0x2aa016[_0x674e('0x37')][_0x674e('0x3d')]);_0xa5e953[_0x674e('0x3e')]=qs[_0x674e('0x3f')](_[_0x674e('0x40')](_0x2aa016[_0x674e('0x37')],_0xda11cc[_0x674e('0x3f')]));_0xa5e953[_0x674e('0x3e')][_0x674e('0xd1')]=_0x4e97aa['id'];if(_0x2aa016[_0x674e('0x37')][_0x674e('0x5d')]){_0xa5e953['where']=_['merge'](_0xa5e953[_0x674e('0x3e')],{'$or':_[_0x674e('0x81')](_0xa5e953[_0x674e('0x3a')],function(_0x24069e){var _0x6de505={};_0x6de505[_0x24069e]={'$like':'%'+_0x2aa016[_0x674e('0x37')]['filter']+'%'};return _0x6de505;})});}_0xa5e953=_[_0x674e('0x87')]({},_0xa5e953,_0x2aa016[_0x674e('0xcc')]);return db['CmHopperFinal'][_0x674e('0x84')]({'where':_0xa5e953[_0x674e('0x3e')]})[_0x674e('0x27')](function(_0x423281){_0x2c0d4e[_0x674e('0x84')]=_0x423281;if(_0x2aa016[_0x674e('0x37')][_0x674e('0xd4')]){_0xa5e953[_0x674e('0xd5')]=[{'all':!![]}];}return db[_0x674e('0xae')][_0x674e('0x9c')](_0xa5e953);})['then'](function(_0x55d408){_0x2c0d4e[_0x674e('0xd2')]=_0x55d408;return _0x2c0d4e;});}})[_0x674e('0x27')](respondWithFilteredResult(_0x53f67b,_0xa5e953))[_0x674e('0x94')](handleError(_0x53f67b,null));};exports[_0x674e('0xd6')]=function(_0x144f88,_0x149a57,_0x4a758a){var _0xb564c6={'raw':!![],'where':{}};var _0x2f2392={};var _0x5ce578={'count':0x0,'rows':[]};return db[_0x674e('0x2b')][_0x674e('0x32')]({'where':{'id':_0x144f88[_0x674e('0x93')]['id']}})[_0x674e('0x27')](handleEntityNotFound(_0x149a57,null))[_0x674e('0x27')](function(_0x19d39d){if(_0x19d39d){_0x2f2392[_0x674e('0x36')]=_[_0x674e('0x2c')](db['JscriptySessionReport']['rawAttributes']);_0x2f2392[_0x674e('0x37')]=_[_0x674e('0x2c')](_0x144f88[_0x674e('0x37')]);_0x2f2392[_0x674e('0x3f')]=_[_0x674e('0x38')](_0x2f2392[_0x674e('0x36')],_0x2f2392[_0x674e('0x37')]);_0xb564c6[_0x674e('0x3a')]=_[_0x674e('0x38')](_0x2f2392[_0x674e('0x36')],qs['fields'](_0x144f88[_0x674e('0x37')]['fields']));_0xb564c6[_0x674e('0x3a')]=_0xb564c6[_0x674e('0x3a')][_0x674e('0x2d')]?_0xb564c6[_0x674e('0x3a')]:_0x2f2392[_0x674e('0x36')];if(!_0x144f88[_0x674e('0x37')][_0x674e('0x5c')](_0x674e('0x3b'))){_0xb564c6[_0x674e('0x1f')]=qs['limit'](_0x144f88['query'][_0x674e('0x1f')]);_0xb564c6[_0x674e('0x20')]=qs['offset'](_0x144f88[_0x674e('0x37')]['offset']);}_0xb564c6[_0x674e('0x3c')]=qs[_0x674e('0x3d')](_0x144f88['query'][_0x674e('0x3d')]);_0xb564c6['where']=qs[_0x674e('0x3f')](_['pick'](_0x144f88[_0x674e('0x37')],_0x2f2392[_0x674e('0x3f')]));_0xb564c6[_0x674e('0x3e')]['ContactId']=_0x19d39d['id'];if(_0x144f88[_0x674e('0x37')][_0x674e('0x5d')]){_0xb564c6[_0x674e('0x3e')]=_['merge'](_0xb564c6['where'],{'$or':_[_0x674e('0x81')](_0xb564c6[_0x674e('0x3a')],function(_0x40effb){var _0xefc6cc={};_0xefc6cc[_0x40effb]={'$like':'%'+_0x144f88['query']['filter']+'%'};return _0xefc6cc;})});}_0xb564c6=_[_0x674e('0x87')]({},_0xb564c6,_0x144f88['options']);return db[_0x674e('0xb5')][_0x674e('0x84')]({'where':_0xb564c6[_0x674e('0x3e')]})['then'](function(_0x3f6e9b){_0x5ce578[_0x674e('0x84')]=_0x3f6e9b;if(_0x144f88[_0x674e('0x37')][_0x674e('0xd4')]){_0xb564c6[_0x674e('0xd5')]=[{'all':!![]}];}return db[_0x674e('0xb5')][_0x674e('0x9c')](_0xb564c6);})['then'](function(_0x150d81){_0x5ce578[_0x674e('0xd2')]=_0x150d81;return _0x5ce578;});}})[_0x674e('0x27')](respondWithFilteredResult(_0x149a57,_0xb564c6))[_0x674e('0x94')](handleError(_0x149a57,null));};exports[_0x674e('0xd7')]=function(_0x471076,_0x403935,_0x121d33){try{if(!_0x471076[_0x674e('0x9b')]['ListId']){throw new Error(_0x674e('0xd8'));}if(!_0x471076[_0x674e('0x9b')][_0x674e('0xd9')]){throw new Error(_0x674e('0xda'));}if(!_0x471076[_0x674e('0x9b')][_0x674e('0xdb')]){throw new Error(_0x674e('0xdc'));}if(!_0x471076['body'][_0x674e('0xdd')]){throw new Error(_0x674e('0xde'));}var _0x236bb2=_0x471076[_0x674e('0x9b')][_0x674e('0xd9')][_0x674e('0x52')](',');var _0x32fe80=_0x471076[_0x674e('0x9b')][_0x674e('0xdb')][_0x674e('0x52')](',');if(!_0x236bb2[_0x674e('0x2d')]||!_0x32fe80[_0x674e('0x2d')]||_0x236bb2[_0x674e('0x2d')]!==_0x32fe80[_0x674e('0x2d')]){throw new Error('Incorrect\x20binding\x20parameters\x20passed!');}_0x471076[_0x674e('0x9b')]['fields']=_['zipObject'](_0x236bb2,_0x32fe80);if(!_0x471076[_0x674e('0x9b')][_0x674e('0x39')][_0x674e('0xcb')]){throw new Error(_0x674e('0xdf'));}if(!_0x471076[_0x674e('0x9b')]['fields'][_0x674e('0xe0')]){throw new Error(_0x674e('0xe1'));}var _0x4ba38a=path[_0x674e('0x9f')](config['root'],_0x674e('0xe2'),_0x471076[_0x674e('0xe3')]['filename']);fs[_0x674e('0xe4')](_0x4ba38a,parseInt(_0x674e('0xe5'),0x8));var _0x15ef08=require(_0x674e('0xe6'))[_0x674e('0xe7')](path[_0x674e('0x9f')](__dirname,_0x674e('0xe8')),[_0x4ba38a,_0x471076[_0x674e('0x9b')]['binding_keys'],_0x471076['body'][_0x674e('0xdb')],_0x471076[_0x674e('0x9b')][_0x674e('0x61')],_0x471076['body']['CompanyId'],_0x471076[_0x674e('0x9b')][_0x674e('0xbb')],_0x471076[_0x674e('0x9b')][_0x674e('0xdd')]]);return _0x403935[_0x674e('0x1c')](0xc8)[_0x674e('0x22')]({'message':_0x674e('0xe9'),'pid':_0x15ef08[_0x674e('0xea')]});}catch(_0x4d394c){return _0x403935[_0x674e('0x1c')](0x1f4)[_0x674e('0x29')](_0x4d394c);}};exports[_0x674e('0xeb')]=function(_0x3372be,_0x2a9667,_0x18522f){var _0x26c993=fs[_0x674e('0xec')](_0x3372be[_0x674e('0xe3')]['path']);Papa[_0x674e('0xed')](_0x26c993,{'header':!![],'skipEmptyLines':!![],'preview':0x1,'complete':function(_0x44cc37){return _0x2a9667[_0x674e('0x1c')](0xc8)[_0x674e('0x22')]({'file':_0x3372be[_0x674e('0xe3')],'fields':_0x44cc37[_0x674e('0xee')][_0x674e('0x39')]});}});};exports[_0x674e('0xef')]=function(_0x13f903,_0x34867f,_0x36844d){return db['User'][_0x674e('0x9c')]({'raw':!![],'attributes':['id'],'where':{'role':_0x674e('0x82')}})[_0x674e('0x27')](function(_0x17f74f){var _0x4082f3=![];if(!_0x13f903[_0x674e('0x9b')]['ListId']){throw new Error(_0x674e('0xd8'));}if(!_0x13f903[_0x674e('0x9b')][_0x674e('0xf0')][_0x674e('0xcb')]){throw new Error(_0x674e('0xdf'));}if(!_0x13f903['body']['binding'][_0x674e('0xe0')]){throw new Error(_0x674e('0xe1'));}if(!_0x13f903['body'][_0x674e('0xdd')]){throw new Error(_0x674e('0xde'));}var _0x579969=require(_0x674e('0xe6'))[_0x674e('0xe7')](path[_0x674e('0x9f')](__dirname,_0x674e('0xf1')),[_0x13f903[_0x674e('0x93')]['id'],JSON[_0x674e('0xf2')](_0x13f903[_0x674e('0x9b')]),JSON[_0x674e('0xf2')](_0x17f74f)]);_0x579969['on']('message',function(_0x2087ae){_0x4082f3=!![];return _0x34867f[_0x674e('0x1c')](0xc8)['json']({'message':_0x674e('0xf3'),'pid':_0x579969[_0x674e('0xea')]});});_0x579969['on']('exit',function(_0x2c9dfb){if(_0x2c9dfb&&!_0x4082f3){return _0x34867f[_0x674e('0x1c')](0x1f4)[_0x674e('0x22')]({'message':_0x674e('0xf4'),'pid':_0x579969[_0x674e('0xea')]});}});})[_0x674e('0x94')](handleError(_0x34867f,null));};exports['getJourney']=function(_0x167f94,_0xeb2455){var _0x3da6ef=[_0x674e('0xf5'),_0x674e('0xf6'),_0x674e('0xf7'),_0x674e('0xf8'),_0x674e('0xf9'),_0x674e('0xfa'),_0x674e('0xfb')];var _0x4d6c3f={'offset':0x0,'order':qs[_0x674e('0x3d')]('-createdAt')},_0x55dcea={'count':0x0,'rows':[]};Promise[_0x674e('0x7b')]()[_0x674e('0x27')](function(){if(_0x167f94[_0x674e('0x37')]['channel']){if(!_['includes'](_0x3da6ef,_0x167f94[_0x674e('0x37')][_0x674e('0xfc')][_0x674e('0xfd')]())){throw new Error('Invalid\x20channel');}_0x3da6ef=[_0x167f94[_0x674e('0x37')][_0x674e('0xfc')][_0x674e('0xfd')]()];}if(_0x167f94['query'][_0x674e('0xfe')]){try{var _0x1fec9b=JSON[_0x674e('0xed')](_0x167f94[_0x674e('0x37')][_0x674e('0xfe')]);if(!moment(_0x1fec9b[_0x674e('0x43')])[_0x674e('0xff')]()){throw new Error(_0x674e('0x100'));}if(!moment(_0x1fec9b['to'])[_0x674e('0xff')]()){throw new Error(_0x674e('0x101'));}}catch(_0x3c87d1){throw new Error('Invalid\x20createdAt\x20filter');}}if(!_0x167f94[_0x674e('0x37')][_0x674e('0x5c')](_0x674e('0x3b'))){_0x4d6c3f[_0x674e('0x1f')]=qs[_0x674e('0x1f')](_0x167f94[_0x674e('0x37')][_0x674e('0x1f')]||0xa);_0x4d6c3f[_0x674e('0x20')]=qs['offset'](_0x167f94[_0x674e('0x37')][_0x674e('0x20')]);}var _0x504286=_0x3da6ef[_0x674e('0x81')](function(_0x349315){if(_0x349315===_0x674e('0xfb')){var _0xccb090={'attributes':['id',_0x674e('0x102'),_0x674e('0x35'),_0x674e('0x103'),_0x674e('0x104'),_0x674e('0x105'),'starttime','endtime',_0x674e('0x106'),_0x674e('0x107'),_0x674e('0x108'),'userDisposition',_0x674e('0x109'),'userThirdDisposition',_0x674e('0x10a')],'where':{'ContactId':_0x167f94[_0x674e('0x93')]['id']},'include':[{'model':db[_0x674e('0x55')],'as':_0x674e('0x55'),'attributes':['id',_0x674e('0xbf'),_0x674e('0x10b'),'alias']}],'order':[['createdAt',_0x674e('0x78')]]};if(_0x167f94['query']['range']){_0xccb090['where'][_0x674e('0x108')]={'$gte':_0x1fec9b['from'],'$lte':_0x1fec9b['to']};}return db[_0x674e('0xb1')][_0x674e('0x10c')](_0xccb090)['then'](function(_0x418259){_0x55dcea[_0x674e('0x84')]+=_0x418259[_0x674e('0x84')];return _[_0x674e('0x81')](_0x418259[_0x674e('0xd2')],function(_0x87125){var _0x16ebc4=_0x87125['get']({'plain':!![]});_0x16ebc4[_0x674e('0xfc')]=_0x349315;if(_0x16ebc4[_0x674e('0x55')]){_0x16ebc4[_0x674e('0x55')]={'id':_0x16ebc4[_0x674e('0x55')]['id'],'name':_0x16ebc4[_0x674e('0x55')][_0x674e('0xbf')],'fullname':_0x16ebc4['User']['fullname'],'alias':_0x16ebc4[_0x674e('0x55')][_0x674e('0x10d')]};}return _0x16ebc4;});});}else{var _0x10daec=_[_0x674e('0x10e')](_0x349315)+(_0x349315===_0x674e('0xf6')?_0x674e('0x10f'):_0x674e('0x110'));var _0x22348b={'attributes':['id',_0x674e('0x111'),_0x674e('0x112'),_0x674e('0x108'),'note',_0x674e('0x113'),_0x674e('0x114'),'thirdDisposition',_0x674e('0x10a'),_0x10daec+'Id'],'where':{'ContactId':_0x167f94[_0x674e('0x93')]['id']},'include':[{'model':db[_0x10daec],'as':_0x674e('0x110'),'attributes':['id',_0x674e('0xbf'),_0x674e('0x115')]},{'model':db['User'],'as':_0x674e('0x116'),'attributes':['id',_0x674e('0xbf'),_0x674e('0x10b')]},{'model':db[_0x674e('0x50')],'as':'Tags','attributes':['id',_0x674e('0xbf'),'color'],'through':{'attributes':[]}}],'order':[[_0x674e('0x108'),'DESC']]};if(_0x167f94['query'][_0x674e('0xfe')]){_0x22348b[_0x674e('0x3e')][_0x674e('0x108')]={'$gte':_0x1fec9b[_0x674e('0x43')],'$lte':_0x1fec9b['to']};}switch(_0x349315){case _0x674e('0xf6'):_0x22348b[_0x674e('0x3a')][_0x674e('0x30')](_0x674e('0x117'),_0x674e('0x118'),_0x674e('0x119'),_0x674e('0x11a'),_0x674e('0x11b'),_0x674e('0x11c'),_0x674e('0x11d'),_0x674e('0x11e'),_0x674e('0x11f'));break;case _0x674e('0xf5'):_0x22348b['attributes']['push']('subject',_0x674e('0x120'));break;case'openchannel':_0x22348b['attributes']['push'](_0x674e('0x121'),'threadId');break;}return db[_[_0x674e('0x10e')](_0x349315)+_0x674e('0x122')][_0x674e('0x10c')](_0x22348b)[_0x674e('0x27')](function(_0x4070fd){_0x55dcea[_0x674e('0x84')]+=_0x4070fd[_0x674e('0x84')];return _[_0x674e('0x81')](_0x4070fd[_0x674e('0xd2')],function(_0x14ed41){var _0x1fdb2c=_0x14ed41[_0x674e('0x9d')]({'plain':!![]});_0x1fdb2c[_0x674e('0xfc')]=_0x349315;if(_0x1fdb2c[_0x674e('0x116')]){_0x1fdb2c[_0x674e('0x116')]={'id':_0x1fdb2c[_0x674e('0x116')]['id'],'name':_0x1fdb2c[_0x674e('0x116')][_0x674e('0xbf')],'fullname':_0x1fdb2c[_0x674e('0x116')][_0x674e('0x10b')]};}return _0x1fdb2c;});});}});return Promise[_0x674e('0x33')](_0x504286);})['then'](function(_0x5bc640){return _(_0x5bc640)[_0x674e('0x123')]()[_0x674e('0x124')](_0x674e('0x108'))[_0x674e('0x125')]()[_0x674e('0x51')]();})[_0x674e('0x27')](function(_0x102239){_0x55dcea['rows']=_0x4d6c3f[_0x674e('0x1f')]?_0x102239[_0x674e('0x126')](_0x4d6c3f[_0x674e('0x20')],_0x4d6c3f[_0x674e('0x20')]+_0x4d6c3f[_0x674e('0x1f')]):_0x102239;return _0x55dcea;})['then'](respondWithFilteredResult(_0xeb2455,_0x4d6c3f))[_0x674e('0x94')](handleError(_0xeb2455,null));};