Built motion from commit 092f8824.|2.5.49
[motion2.git] / server / api / cmHopper / cmHopper.controller.js
index 65412f9..dddee6f 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0xcb8d=['catch','show','params','rawAttributes','length','includeAll','include','find','create','body','describe','destroy','VoiceQueueId','VoiceQueue','CampaignId','omit','dataValues','createdAt','updatedAt','state','statedesc','deleted','campaign','user','deletedat','format','YYYY-MM-DD\x20HH:mm:ss','calleridnum','phone','campaigntype','queue','ivr','ContactId','firstName','isNil','calleridname','lastName','finally','CmHopperFinal','getPreview','getVoiceQueues','preview','dialOrderByScheduledAt','sequelize','transaction','direction','prev','isEmpty','hopperIds','priority','ASC','scheduledAt','DESC','literal','COALESCE(CmHopper.UserId,\x200)\x20ASC','COALESCE(CmHopper.UserId,\x200)\x20DESC','findOne','scheduledat','CmContact','CmCompany','List','Queue','dialActive','outbound','isNumber','CmHopper,\x20%s,\x20%s,\x20%s','getOpenContacts','html-pdf','eml-format','rimraf','zip-dir','fast-json-patch','mustache','util','path','sox','to-csv','ejs','lodash','squel','crypto','desk.js','querystring','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/logger','../../config/environment','../../mysqldb','sendStatus','status','end','count','limit','Content-Range','json','apply','reject','save','update','then','error','stack','name','send','index','map','CmHopper','type','key','query','keys','filters','model','concat','$gte','$lt','$lte','$eq','$between','$notBetween','$in','$notIn','$like','$notLike','$iLike','$overlap','$contains','$contained','attributes','intersection','fields','offset','order','sort','where','pick','filter','VIRTUAL','merge','options','rows'];(function(_0x20187f,_0xbf67c9){var _0x398db5=function(_0x3b7ac2){while(--_0x3b7ac2){_0x20187f['push'](_0x20187f['shift']());}};_0x398db5(++_0xbf67c9);}(_0xcb8d,0xd2));var _0xdcb8=function(_0x420d8d,_0x78b67f){_0x420d8d=_0x420d8d-0x0;var _0x4865d7=_0xcb8d[_0x420d8d];return _0x4865d7;};'use strict';var pdf=require(_0xdcb8('0x0'));var emlformat=require(_0xdcb8('0x1'));var rimraf=require(_0xdcb8('0x2'));var zipdir=require(_0xdcb8('0x3'));var jsonpatch=require(_0xdcb8('0x4'));var rp=require('request-promise');var moment=require('moment');var BPromise=require('bluebird');var Mustache=require(_0xdcb8('0x5'));var util=require(_0xdcb8('0x6'));var path=require(_0xdcb8('0x7'));var sox=require(_0xdcb8('0x8'));var csv=require(_0xdcb8('0x9'));var ejs=require(_0xdcb8('0xa'));var fs=require('fs');var _=require(_0xdcb8('0xb'));var squel=require(_0xdcb8('0xc'));var crypto=require(_0xdcb8('0xd'));var jsforce=require('jsforce');var deskjs=require(_0xdcb8('0xe'));var toCsv=require('to-csv');var querystring=require(_0xdcb8('0xf'));var Papa=require('papaparse');var Redis=require(_0xdcb8('0x10'));var authService=require(_0xdcb8('0x11'));var qs=require(_0xdcb8('0x12'));var as=require(_0xdcb8('0x13'));var hardwareService=require('../../config/license/hardware');var logger=require(_0xdcb8('0x14'))('api');var utils=require('../../config/utils');var config=require(_0xdcb8('0x15'));var db=require(_0xdcb8('0x16'))['db'];function respondWithStatusCode(_0x277cf8,_0x5a4d48){_0x5a4d48=_0x5a4d48||0xcc;return function(_0x2f1c6e){if(_0x2f1c6e){return _0x277cf8[_0xdcb8('0x17')](_0x5a4d48);}return _0x277cf8[_0xdcb8('0x18')](_0x5a4d48)[_0xdcb8('0x19')]();};}function respondWithResult(_0x50a0f0,_0x945b9c){_0x945b9c=_0x945b9c||0xc8;return function(_0x1f1c43){if(_0x1f1c43){return _0x50a0f0['status'](_0x945b9c)['json'](_0x1f1c43);}};}function respondWithFilteredResult(_0x2d5b5a,_0x54fd7b){return function(_0x408d38){if(_0x408d38){var _0x523e79=_0x408d38[_0xdcb8('0x1a')],_0x397dcf=_0x54fd7b['offset'],_0x1ecc9a=_0x54fd7b['offset']+_0x54fd7b[_0xdcb8('0x1b')],_0xa44021;if(_0x1ecc9a>=_0x523e79){_0x1ecc9a=_0x523e79;_0xa44021=0xc8;}else{_0xa44021=0xce;}_0x2d5b5a[_0xdcb8('0x18')](_0xa44021);return _0x2d5b5a['set'](_0xdcb8('0x1c'),_0x397dcf+'-'+_0x1ecc9a+'/'+_0x523e79)[_0xdcb8('0x1d')](_0x408d38);}return null;};}function patchUpdates(_0x517997){return function(_0xfb63ac){try{jsonpatch[_0xdcb8('0x1e')](_0xfb63ac,_0x517997,!![]);}catch(_0x1d13fe){return BPromise[_0xdcb8('0x1f')](_0x1d13fe);}return _0xfb63ac[_0xdcb8('0x20')]();};}function saveUpdates(_0x31f094,_0x15b37b){return function(_0x1a4f98){if(_0x1a4f98){return _0x1a4f98[_0xdcb8('0x21')](_0x31f094)[_0xdcb8('0x22')](function(_0x4987ab){return _0x4987ab;});}return null;};}function removeEntity(_0x4e11a9,_0x20a8be){return function(_0x27936e){if(_0x27936e){return _0x27936e['destroy']()['then'](function(){_0x4e11a9[_0xdcb8('0x18')](0xcc)[_0xdcb8('0x19')]();});}};}function handleEntityNotFound(_0x2c958c,_0x534889){return function(_0x26794f){if(!_0x26794f){_0x2c958c[_0xdcb8('0x17')](0x194);}return _0x26794f;};}function handleError(_0x3a9efc,_0x393d44){_0x393d44=_0x393d44||0x1f4;return function(_0x140dfd){logger[_0xdcb8('0x23')](_0x140dfd[_0xdcb8('0x24')]);if(_0x140dfd[_0xdcb8('0x25')]){delete _0x140dfd[_0xdcb8('0x25')];}_0x3a9efc[_0xdcb8('0x18')](_0x393d44)[_0xdcb8('0x26')](_0x140dfd);};}exports[_0xdcb8('0x27')]=function(_0x5619fc,_0x3b3ac1){var _0x53b989={},_0x5cb50a={},_0x25ffd9={'count':0x0,'rows':[]};var _0x4b6225=_[_0xdcb8('0x28')](db[_0xdcb8('0x29')]['rawAttributes'],function(_0x2bceab){return{'name':_0x2bceab['fieldName'],'type':_0x2bceab[_0xdcb8('0x2a')][_0xdcb8('0x2b')]};});_0x5cb50a['model']=_[_0xdcb8('0x28')](_0x4b6225,_0xdcb8('0x25'));_0x5cb50a[_0xdcb8('0x2c')]=_[_0xdcb8('0x2d')](_0x5619fc['query']);_0x5cb50a[_0xdcb8('0x2e')]=_['intersection'](_0x5cb50a[_0xdcb8('0x2f')],_0x5cb50a['query']);_0x5cb50a[_0xdcb8('0x2e')]=_[_0xdcb8('0x30')](_0x5cb50a[_0xdcb8('0x2e')],['$and','$or','$gt',_0xdcb8('0x31'),_0xdcb8('0x32'),_0xdcb8('0x33'),'$ne',_0xdcb8('0x34'),'$not',_0xdcb8('0x35'),_0xdcb8('0x36'),_0xdcb8('0x37'),_0xdcb8('0x38'),_0xdcb8('0x39'),_0xdcb8('0x3a'),_0xdcb8('0x3b'),'$notILike',_0xdcb8('0x39'),_0xdcb8('0x3c'),_0xdcb8('0x3d'),_0xdcb8('0x3e'),'$any']);_0x53b989[_0xdcb8('0x3f')]=_[_0xdcb8('0x40')](_0x5cb50a[_0xdcb8('0x2f')],qs[_0xdcb8('0x41')](_0x5619fc[_0xdcb8('0x2c')][_0xdcb8('0x41')]));_0x53b989[_0xdcb8('0x3f')]=_0x53b989['attributes']['length']?_0x53b989['attributes']:_0x5cb50a[_0xdcb8('0x2f')];if(!_0x5619fc['query']['hasOwnProperty']('nolimit')){_0x53b989[_0xdcb8('0x1b')]=qs[_0xdcb8('0x1b')](_0x5619fc[_0xdcb8('0x2c')]['limit']);_0x53b989['offset']=qs[_0xdcb8('0x42')](_0x5619fc[_0xdcb8('0x2c')]['offset']);}_0x53b989[_0xdcb8('0x43')]=qs[_0xdcb8('0x44')](_0x5619fc[_0xdcb8('0x2c')][_0xdcb8('0x44')]);_0x53b989[_0xdcb8('0x45')]=qs[_0xdcb8('0x2e')](_[_0xdcb8('0x46')](_0x5619fc[_0xdcb8('0x2c')],_0x5cb50a['filters']));if(_0x5619fc[_0xdcb8('0x2c')][_0xdcb8('0x47')]){_0x53b989[_0xdcb8('0x45')]=_['merge'](_0x53b989[_0xdcb8('0x45')],{'$or':_[_0xdcb8('0x28')](_0x4b6225,function(_0xa65f36){if(_0xa65f36[_0xdcb8('0x2a')]!==_0xdcb8('0x48')){var _0x15a17a={};_0x15a17a[_0xa65f36[_0xdcb8('0x25')]]={'$like':'%'+_0x5619fc[_0xdcb8('0x2c')]['filter']+'%'};return _0x15a17a;}})});}_0x53b989=_[_0xdcb8('0x49')]({},_0x53b989,_0x5619fc[_0xdcb8('0x4a')]);var _0x342fba={'where':_0x53b989[_0xdcb8('0x45')]};return db[_0xdcb8('0x29')][_0xdcb8('0x1a')](_0x342fba)[_0xdcb8('0x22')](function(_0x387ace){_0x25ffd9['count']=_0x387ace;if(_0x5619fc[_0xdcb8('0x2c')]['includeAll']){_0x53b989['include']=[{'all':!![]}];}return db[_0xdcb8('0x29')]['findAll'](_0x53b989);})[_0xdcb8('0x22')](function(_0x2eddf1){_0x25ffd9[_0xdcb8('0x4b')]=_0x2eddf1;return _0x25ffd9;})[_0xdcb8('0x22')](respondWithFilteredResult(_0x3b3ac1,_0x53b989))[_0xdcb8('0x4c')](handleError(_0x3b3ac1,null));};exports[_0xdcb8('0x4d')]=function(_0x844d66,_0x46bff1){var _0x403071={'raw':!![],'where':{'id':_0x844d66[_0xdcb8('0x4e')]['id']}},_0x5d83f3={};_0x5d83f3['model']=_[_0xdcb8('0x2d')](db[_0xdcb8('0x29')][_0xdcb8('0x4f')]);_0x5d83f3[_0xdcb8('0x2c')]=_['keys'](_0x844d66['query']);_0x5d83f3[_0xdcb8('0x2e')]=_['intersection'](_0x5d83f3['model'],_0x5d83f3['query']);_0x403071[_0xdcb8('0x3f')]=_[_0xdcb8('0x40')](_0x5d83f3['model'],qs['fields'](_0x844d66[_0xdcb8('0x2c')][_0xdcb8('0x41')]));_0x403071[_0xdcb8('0x3f')]=_0x403071[_0xdcb8('0x3f')][_0xdcb8('0x50')]?_0x403071['attributes']:_0x5d83f3['model'];if(_0x844d66[_0xdcb8('0x2c')][_0xdcb8('0x51')]){_0x403071[_0xdcb8('0x52')]=[{'all':!![]}];}_0x403071=_[_0xdcb8('0x49')]({},_0x403071,_0x844d66[_0xdcb8('0x4a')]);return db['CmHopper'][_0xdcb8('0x53')](_0x403071)['then'](handleEntityNotFound(_0x46bff1,null))[_0xdcb8('0x22')](respondWithResult(_0x46bff1,null))['catch'](handleError(_0x46bff1,null));};exports['create']=function(_0x7b74c6,_0x33d2c2){return db[_0xdcb8('0x29')][_0xdcb8('0x54')](_0x7b74c6['body'],{})[_0xdcb8('0x22')](respondWithResult(_0x33d2c2,0xc9))['catch'](handleError(_0x33d2c2,null));};exports[_0xdcb8('0x21')]=function(_0x211aff,_0x4617dc){if(_0x211aff[_0xdcb8('0x55')]['id']){delete _0x211aff[_0xdcb8('0x55')]['id'];}return db[_0xdcb8('0x29')][_0xdcb8('0x53')]({'where':{'id':_0x211aff[_0xdcb8('0x4e')]['id']}})['then'](handleEntityNotFound(_0x4617dc,null))['then'](saveUpdates(_0x211aff[_0xdcb8('0x55')],null))['then'](respondWithResult(_0x4617dc,null))[_0xdcb8('0x4c')](handleError(_0x4617dc,null));};exports[_0xdcb8('0x56')]=function(_0x5f156f,_0x36dc31){return db[_0xdcb8('0x29')]['describe']()[_0xdcb8('0x22')](respondWithResult(_0x36dc31,null))['catch'](handleError(_0x36dc31,null));};exports[_0xdcb8('0x57')]=function(_0x3f4436,_0x23b73d){var _0x47ed9a;return db['CmHopper']['find']({'where':{'id':_0x3f4436[_0xdcb8('0x4e')]['id']}})[_0xdcb8('0x22')](handleEntityNotFound(_0x23b73d,null))[_0xdcb8('0x22')](function(_0x4d6309){if(_0x4d6309){return _0x4d6309[_0xdcb8('0x57')]()['then'](function(_0xcd0fdb){return _0xcd0fdb;});}})[_0xdcb8('0x22')](function(_0x5246e4){_0x47ed9a=_0x5246e4;if(_0x5246e4){if(_0x5246e4[_0xdcb8('0x58')]||_0x5246e4['CampaignId']){return db[_0x5246e4[_0xdcb8('0x58')]?_0xdcb8('0x59'):'Campaign']['find']({'where':{'id':_0x5246e4['VoiceQueueId']?_0x5246e4[_0xdcb8('0x58')]:_0x5246e4[_0xdcb8('0x5a')]},'attributes':['id',_0xdcb8('0x25')],'raw':!![]});}}})[_0xdcb8('0x22')](function(_0x26cb46){var _0x2680ff={};if(_0x26cb46){_[_0xdcb8('0x49')](_0x2680ff,_[_0xdcb8('0x5b')](_0x47ed9a[_0xdcb8('0x5c')],[_0xdcb8('0x5d'),_0xdcb8('0x5e'),'id']));_0x2680ff[_0xdcb8('0x5f')]=0x15;_0x2680ff[_0xdcb8('0x60')]=_0xdcb8('0x61');_0x2680ff[_0xdcb8('0x62')]=_0x26cb46['name'];_0x2680ff['membername']=_0x3f4436[_0xdcb8('0x63')]['name'];_0x2680ff['UserId']=_0x3f4436[_0xdcb8('0x63')]['id'];_0x2680ff[_0xdcb8('0x61')]=!![];_0x2680ff[_0xdcb8('0x64')]=moment()[_0xdcb8('0x65')](_0xdcb8('0x66'));_0x2680ff[_0xdcb8('0x67')]=_0x47ed9a[_0xdcb8('0x68')];_0x2680ff[_0xdcb8('0x69')]=_0x47ed9a[_0xdcb8('0x58')]?_0xdcb8('0x6a'):_0xdcb8('0x6b');return db['CmContact'][_0xdcb8('0x53')]({'where':{'id':_0x2680ff[_0xdcb8('0x6c')]},'attributes':[_0xdcb8('0x6d'),'lastName']})[_0xdcb8('0x22')](function(_0x332afd){if(!_['isNil'](_0x23b73d)&&!_[_0xdcb8('0x6e')](_0x332afd[_0xdcb8('0x6d')])){_0x2680ff[_0xdcb8('0x6f')]=_0x332afd[_0xdcb8('0x6d')];if(!_[_0xdcb8('0x6e')](_0x332afd[_0xdcb8('0x70')])){_0x2680ff[_0xdcb8('0x6f')]+='\x20'+_0x332afd['lastName'];}}})[_0xdcb8('0x71')](function(){return db[_0xdcb8('0x72')]['create'](_0x2680ff);});}})[_0xdcb8('0x22')](function(){return _0x23b73d[_0xdcb8('0x18')](0xcc)['end']();})[_0xdcb8('0x4c')](handleError(_0x23b73d,null));};exports[_0xdcb8('0x73')]=function(_0x3729b5,_0x3c2dca,_0x514076){var _0x491e1e=[];return db['CmContact'][_0xdcb8('0x56')]()[_0xdcb8('0x22')](function(_0x53de79){_0x491e1e=_['keys'](_0x53de79);return _0x3729b5[_0xdcb8('0x63')][_0xdcb8('0x74')]({'where':{'type':'outbound','dialActive':!![],'dialMethod':_0xdcb8('0x75')},'attributes':['id',_0xdcb8('0x76')],'raw':!![]});})[_0xdcb8('0x22')](function(_0x3519bf){if(_0x3519bf&&_0x3519bf['length']){return db[_0xdcb8('0x77')][_0xdcb8('0x78')](function(_0x574d90){var _0x2a4fff={'active':![],'recallme':![],'scheduledAt':{'$lte':moment()[_0xdcb8('0x65')](_0xdcb8('0x66'))},'VoiceQueueId':{'$in':_[_0xdcb8('0x28')](_0x3519bf,'id')},'$or':[{'UserId':null},{'UserId':_0x3729b5[_0xdcb8('0x63')]['id']}]};var _0x51656d=[];if(_0x3729b5[_0xdcb8('0x55')]['direction']&&_0x3729b5['body'][_0xdcb8('0x79')]===_0xdcb8('0x7a')){if(!_[_0xdcb8('0x7b')](_0x3729b5[_0xdcb8('0x55')][_0xdcb8('0x7c')])){_0x2a4fff['id']={'$in':_0x3729b5[_0xdcb8('0x55')]['hopperIds']};}_0x51656d=[[_0xdcb8('0x7d'),_0xdcb8('0x7e')],[_0xdcb8('0x7f'),_0x3519bf[0x0]['dialOrderByScheduledAt']===_0xdcb8('0x7e')?_0xdcb8('0x80'):_0xdcb8('0x7e')],db[_0xdcb8('0x77')][_0xdcb8('0x81')](_0xdcb8('0x82')),['id',_0xdcb8('0x80')]];}else{if(!_[_0xdcb8('0x7b')](_0x3729b5[_0xdcb8('0x55')][_0xdcb8('0x7c')])){_0x2a4fff['id']={'$notIn':_0x3729b5[_0xdcb8('0x55')][_0xdcb8('0x7c')]};}_0x51656d=[[_0xdcb8('0x7d'),_0xdcb8('0x80')],['scheduledAt',_0x3519bf[0x0][_0xdcb8('0x76')]],db[_0xdcb8('0x77')][_0xdcb8('0x81')](_0xdcb8('0x83')),['id',_0xdcb8('0x7e')]];}return db[_0xdcb8('0x29')][_0xdcb8('0x84')]({'attributes':['id',_0xdcb8('0x85')],'where':_0x2a4fff,'order':_0x51656d,'transaction':_0x574d90,'lock':_0x574d90['LOCK']['UPDATE'],'include':[{'model':db[_0xdcb8('0x86')],'as':'Contact','attributes':_0x491e1e,'include':[{'model':db[_0xdcb8('0x87')],'as':'Company','attributes':['id',_0xdcb8('0x25')]}]},{'model':db['CmList'],'as':_0xdcb8('0x88'),'attributes':['id',_0xdcb8('0x25')]},{'model':db[_0xdcb8('0x59')],'as':_0xdcb8('0x89'),'attributes':['id',_0xdcb8('0x25'),_0xdcb8('0x8a')]}]})[_0xdcb8('0x22')](function(_0x4d5ca5){if(_0x4d5ca5){return _0x4d5ca5[_0xdcb8('0x21')]({'UserId':_0x3729b5[_0xdcb8('0x63')]['id']},{'transaction':_0x574d90});}});});}})[_0xdcb8('0x22')](handleEntityNotFound(_0x3c2dca,null))[_0xdcb8('0x22')](respondWithResult(_0x3c2dca,null))[_0xdcb8('0x4c')](handleError(_0x3c2dca,null));};exports['getOpenContacts']=function(_0x170724,_0x5ec869,_0x58c19c){return _0x170724[_0xdcb8('0x63')][_0xdcb8('0x74')]({'where':{'type':_0xdcb8('0x8b'),'dialActive':!![],'dialMethod':_0xdcb8('0x75')},'attributes':['id'],'raw':!![]})[_0xdcb8('0x22')](function(_0x3dd609){if(_0x3dd609&&_0x3dd609[_0xdcb8('0x50')]){return db[_0xdcb8('0x29')]['count']({'where':{'active':![],'recallme':![],'scheduledAt':{'$lte':moment()[_0xdcb8('0x65')]('YYYY-MM-DD\x20HH:mm:ss')},'VoiceQueueId':{'$in':_[_0xdcb8('0x28')](_0x3dd609,'id')},'$or':[{'UserId':null},{'UserId':_0x170724[_0xdcb8('0x63')]['id']}]}});}return 0x0;})[_0xdcb8('0x22')](function(_0x5316c3){if(!_[_0xdcb8('0x6e')](_0x5316c3)&&_[_0xdcb8('0x8c')](_0x5316c3)){return _0x5ec869[_0xdcb8('0x18')](0xc8)[_0xdcb8('0x1d')]({'contacts':_0x5316c3});}else{logger[_0xdcb8('0x23')](_0xdcb8('0x8d'),_0xdcb8('0x8e'),0x194,'entity\x20not\x20found');_0x5ec869[_0xdcb8('0x17')](0x194);}})[_0xdcb8('0x4c')](handleError(_0x5ec869,null));};
\ No newline at end of file
+var _0xdafa=['error','name','send','index','map','CmHopper','rawAttributes','fieldName','type','key','keys','query','filters','concat','$and','$gt','$gte','$lt','$lte','$eq','$between','$notBetween','$notIn','$like','$notLike','$iLike','$notILike','$overlap','$contains','$contained','$any','attributes','intersection','length','model','hasOwnProperty','sort','filter','where','options','includeAll','include','rows','catch','params','fields','merge','find','body','describe','VoiceQueueId','CampaignId','VoiceQueue','Campaign','omit','dataValues','createdAt','updatedAt','state','statedesc','membername','user','deleted','deletedat','format','YYYY-MM-DD\x20HH:mm:ss','calleridnum','phone','campaigntype','queue','ivr','CmContact','firstName','lastName','isNil','calleridname','finally','CmHopperFinal','getPreview','getVoiceQueues','outbound','preview','dialOrderByScheduledAt','dialPreviewAutoRecallMe','sequelize','transaction','value','direction','prev','isEmpty','priority','ASC','scheduledAt','DESC','COALESCE(CmHopper.UserId,\x200)\x20ASC','hopperIds','literal','COALESCE(CmHopper.UserId,\x200)\x20DESC','findOne','scheduledat','recallme','LOCK','CmCompany','CmList','List','Queue','dialActive','hopperId','UPDATE','Contact','Company','isNumber','CmHopper,\x20%s,\x20%s,\x20%s','getTimezones','timezones','push','getTimezone','rimraf','zip-dir','fast-json-patch','moment','bluebird','mustache','util','path','sox','to-csv','ejs','lodash','squel','crypto','jsforce','desk.js','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../config/license/hardware','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','end','status','json','undefined','limit','count','offset','set','apply','reject','save','update','then','destroy'];(function(_0x10b4ba,_0x1c4e22){var _0x5669fa=function(_0x2bc0db){while(--_0x2bc0db){_0x10b4ba['push'](_0x10b4ba['shift']());}};_0x5669fa(++_0x1c4e22);}(_0xdafa,0x113));var _0xadaf=function(_0x287fb1,_0x248689){_0x287fb1=_0x287fb1-0x0;var _0x235ac7=_0xdafa[_0x287fb1];return _0x235ac7;};'use strict';var emlformat=require('eml-format');var rimraf=require(_0xadaf('0x0'));var zipdir=require(_0xadaf('0x1'));var jsonpatch=require(_0xadaf('0x2'));var rp=require('request-promise');var moment=require(_0xadaf('0x3'));var BPromise=require(_0xadaf('0x4'));var Mustache=require(_0xadaf('0x5'));var util=require(_0xadaf('0x6'));var path=require(_0xadaf('0x7'));var sox=require(_0xadaf('0x8'));var csv=require(_0xadaf('0x9'));var ejs=require(_0xadaf('0xa'));var fs=require('fs');var fs_extra=require('fs-extra');var _=require(_0xadaf('0xb'));var squel=require(_0xadaf('0xc'));var crypto=require(_0xadaf('0xd'));var jsforce=require(_0xadaf('0xe'));var deskjs=require(_0xadaf('0xf'));var toCsv=require(_0xadaf('0x9'));var querystring=require('querystring');var Papa=require(_0xadaf('0x10'));var Redis=require(_0xadaf('0x11'));var authService=require(_0xadaf('0x12'));var qs=require(_0xadaf('0x13'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0xadaf('0x14'));var logger=require('../../config/logger')(_0xadaf('0x15'));var utils=require(_0xadaf('0x16'));var config=require(_0xadaf('0x17'));var shared=require('../../config/environment');var licenseUtil=require(_0xadaf('0x18'));var db=require(_0xadaf('0x19'))['db'];function respondWithStatusCode(_0x3d90b5,_0x7211e5){_0x7211e5=_0x7211e5||0xcc;return function(_0x3e7230){if(_0x3e7230){return _0x3d90b5[_0xadaf('0x1a')](_0x7211e5);}return _0x3d90b5['status'](_0x7211e5)[_0xadaf('0x1b')]();};}function respondWithResult(_0x1957bc,_0x5d6069){_0x5d6069=_0x5d6069||0xc8;return function(_0xb135d7){if(_0xb135d7){return _0x1957bc[_0xadaf('0x1c')](_0x5d6069)[_0xadaf('0x1d')](_0xb135d7);}};}function respondWithFilteredResult(_0x519550,_0x3dbcdc){return function(_0xf7112d){if(_0xf7112d){var _0x533f6f=typeof _0x3dbcdc['offset']===_0xadaf('0x1e')&&typeof _0x3dbcdc[_0xadaf('0x1f')]===_0xadaf('0x1e');var _0x2fadb4=_0xf7112d[_0xadaf('0x20')];var _0x435358=_0x533f6f?0x0:_0x3dbcdc[_0xadaf('0x21')];var _0x17ed9f=_0x533f6f?_0xf7112d[_0xadaf('0x20')]:_0x3dbcdc[_0xadaf('0x21')]+_0x3dbcdc[_0xadaf('0x1f')];var _0x804291;if(_0x17ed9f>=_0x2fadb4){_0x17ed9f=_0x2fadb4;_0x804291=0xc8;}else{_0x804291=0xce;}_0x519550['status'](_0x804291);return _0x519550[_0xadaf('0x22')]('Content-Range',_0x435358+'-'+_0x17ed9f+'/'+_0x2fadb4)[_0xadaf('0x1d')](_0xf7112d);}return null;};}function patchUpdates(_0x2111d3){return function(_0x53f17f){try{jsonpatch[_0xadaf('0x23')](_0x53f17f,_0x2111d3,!![]);}catch(_0x7ca036){return BPromise[_0xadaf('0x24')](_0x7ca036);}return _0x53f17f[_0xadaf('0x25')]();};}function saveUpdates(_0x796cb9,_0x2902b0){return function(_0x7961cd){if(_0x7961cd){return _0x7961cd[_0xadaf('0x26')](_0x796cb9)[_0xadaf('0x27')](function(_0x17e523){return _0x17e523;});}return null;};}function removeEntity(_0x2c7c41,_0x1d34a0){return function(_0x2ac7ae){if(_0x2ac7ae){return _0x2ac7ae[_0xadaf('0x28')]()[_0xadaf('0x27')](function(){_0x2c7c41[_0xadaf('0x1c')](0xcc)[_0xadaf('0x1b')]();});}};}function handleEntityNotFound(_0x3f8150,_0x3c56b9){return function(_0x45fde5){if(!_0x45fde5){_0x3f8150['sendStatus'](0x194);}return _0x45fde5;};}function handleError(_0x449c73,_0x2e011b){_0x2e011b=_0x2e011b||0x1f4;return function(_0x1af757){logger[_0xadaf('0x29')](_0x1af757['stack']);if(_0x1af757[_0xadaf('0x2a')]){delete _0x1af757[_0xadaf('0x2a')];}_0x449c73[_0xadaf('0x1c')](_0x2e011b)[_0xadaf('0x2b')](_0x1af757);};}exports[_0xadaf('0x2c')]=function(_0x56ab14,_0x4b9bc9){var _0x4487a5={},_0x29893c={},_0xb673a5={'count':0x0,'rows':[]};var _0x5d584f=_[_0xadaf('0x2d')](db[_0xadaf('0x2e')][_0xadaf('0x2f')],function(_0x2082d3){return{'name':_0x2082d3[_0xadaf('0x30')],'type':_0x2082d3[_0xadaf('0x31')][_0xadaf('0x32')]};});_0x29893c['model']=_[_0xadaf('0x2d')](_0x5d584f,'name');_0x29893c['query']=_[_0xadaf('0x33')](_0x56ab14[_0xadaf('0x34')]);_0x29893c[_0xadaf('0x35')]=_['intersection'](_0x29893c['model'],_0x29893c['query']);_0x29893c[_0xadaf('0x35')]=_[_0xadaf('0x36')](_0x29893c[_0xadaf('0x35')],[_0xadaf('0x37'),'$or',_0xadaf('0x38'),_0xadaf('0x39'),_0xadaf('0x3a'),_0xadaf('0x3b'),'$ne',_0xadaf('0x3c'),'$not',_0xadaf('0x3d'),_0xadaf('0x3e'),'$in',_0xadaf('0x3f'),_0xadaf('0x40'),_0xadaf('0x41'),_0xadaf('0x42'),_0xadaf('0x43'),_0xadaf('0x40'),_0xadaf('0x44'),_0xadaf('0x45'),_0xadaf('0x46'),_0xadaf('0x47')]);_0x4487a5[_0xadaf('0x48')]=_[_0xadaf('0x49')](_0x29893c['model'],qs['fields'](_0x56ab14[_0xadaf('0x34')]['fields']));_0x4487a5['attributes']=_0x4487a5['attributes'][_0xadaf('0x4a')]?_0x4487a5['attributes']:_0x29893c[_0xadaf('0x4b')];if(!_0x56ab14['query'][_0xadaf('0x4c')]('nolimit')){_0x4487a5[_0xadaf('0x1f')]=qs[_0xadaf('0x1f')](_0x56ab14[_0xadaf('0x34')]['limit']);_0x4487a5['offset']=qs[_0xadaf('0x21')](_0x56ab14[_0xadaf('0x34')][_0xadaf('0x21')]);}_0x4487a5['order']=qs[_0xadaf('0x4d')](_0x56ab14[_0xadaf('0x34')]['sort']);_0x4487a5['where']=qs[_0xadaf('0x35')](_['pick'](_0x56ab14[_0xadaf('0x34')],_0x29893c[_0xadaf('0x35')]),_0x5d584f);if(_0x56ab14[_0xadaf('0x34')][_0xadaf('0x4e')]){_0x4487a5[_0xadaf('0x4f')]=_['merge'](_0x4487a5['where'],{'$or':_[_0xadaf('0x2d')](_0x5d584f,function(_0x15805f){if(_0x15805f['type']!=='VIRTUAL'){var _0x3bb297={};_0x3bb297[_0x15805f[_0xadaf('0x2a')]]={'$like':'%'+_0x56ab14[_0xadaf('0x34')][_0xadaf('0x4e')]+'%'};return _0x3bb297;}})});}_0x4487a5=_['merge']({},_0x4487a5,_0x56ab14[_0xadaf('0x50')]);var _0x147e1d={'where':_0x4487a5[_0xadaf('0x4f')]};return db[_0xadaf('0x2e')]['count'](_0x147e1d)[_0xadaf('0x27')](function(_0x3f97e8){_0xb673a5[_0xadaf('0x20')]=_0x3f97e8;if(_0x56ab14[_0xadaf('0x34')][_0xadaf('0x51')]){_0x4487a5[_0xadaf('0x52')]=[{'all':!![]}];}return db['CmHopper']['findAll'](_0x4487a5);})[_0xadaf('0x27')](function(_0x70c63d){_0xb673a5[_0xadaf('0x53')]=_0x70c63d;return _0xb673a5;})['then'](respondWithFilteredResult(_0x4b9bc9,_0x4487a5))[_0xadaf('0x54')](handleError(_0x4b9bc9,null));};exports['show']=function(_0x2fc33f,_0x535861){var _0x374e8c={'raw':!![],'where':{'id':_0x2fc33f[_0xadaf('0x55')]['id']}},_0x23f4b1={};_0x23f4b1[_0xadaf('0x4b')]=_[_0xadaf('0x33')](db[_0xadaf('0x2e')][_0xadaf('0x2f')]);_0x23f4b1['query']=_[_0xadaf('0x33')](_0x2fc33f[_0xadaf('0x34')]);_0x23f4b1[_0xadaf('0x35')]=_['intersection'](_0x23f4b1['model'],_0x23f4b1[_0xadaf('0x34')]);_0x374e8c[_0xadaf('0x48')]=_[_0xadaf('0x49')](_0x23f4b1['model'],qs[_0xadaf('0x56')](_0x2fc33f[_0xadaf('0x34')][_0xadaf('0x56')]));_0x374e8c['attributes']=_0x374e8c[_0xadaf('0x48')][_0xadaf('0x4a')]?_0x374e8c['attributes']:_0x23f4b1['model'];if(_0x2fc33f[_0xadaf('0x34')][_0xadaf('0x51')]){_0x374e8c[_0xadaf('0x52')]=[{'all':!![]}];}_0x374e8c=_[_0xadaf('0x57')]({},_0x374e8c,_0x2fc33f['options']);return db[_0xadaf('0x2e')][_0xadaf('0x58')](_0x374e8c)['then'](handleEntityNotFound(_0x535861,null))['then'](respondWithResult(_0x535861,null))[_0xadaf('0x54')](handleError(_0x535861,null));};exports['create']=function(_0x1e8ee4,_0x13e74d){return db['CmHopper']['create'](_0x1e8ee4[_0xadaf('0x59')],{})[_0xadaf('0x27')](respondWithResult(_0x13e74d,0xc9))[_0xadaf('0x54')](handleError(_0x13e74d,null));};exports[_0xadaf('0x26')]=function(_0x38591c,_0x3f196f){if(_0x38591c[_0xadaf('0x59')]['id']){delete _0x38591c['body']['id'];}return db[_0xadaf('0x2e')][_0xadaf('0x58')]({'where':{'id':_0x38591c[_0xadaf('0x55')]['id']}})['then'](handleEntityNotFound(_0x3f196f,null))[_0xadaf('0x27')](saveUpdates(_0x38591c[_0xadaf('0x59')],null))[_0xadaf('0x27')](respondWithResult(_0x3f196f,null))[_0xadaf('0x54')](handleError(_0x3f196f,null));};exports[_0xadaf('0x5a')]=function(_0x58e792,_0x1180c2){return db[_0xadaf('0x2e')]['describe']()['then'](respondWithResult(_0x1180c2,null))[_0xadaf('0x54')](handleError(_0x1180c2,null));};exports['destroy']=function(_0x3b14af,_0x80d59f){var _0x39c2bc;return db[_0xadaf('0x2e')]['find']({'where':{'id':_0x3b14af[_0xadaf('0x55')]['id']}})['then'](handleEntityNotFound(_0x80d59f,null))[_0xadaf('0x27')](function(_0x41ffd6){if(_0x41ffd6){return _0x41ffd6[_0xadaf('0x28')]()[_0xadaf('0x27')](function(_0xeaebf5){return _0xeaebf5;});}})[_0xadaf('0x27')](function(_0x4260ab){_0x39c2bc=_0x4260ab;if(_0x4260ab){if(_0x4260ab[_0xadaf('0x5b')]||_0x4260ab[_0xadaf('0x5c')]){return db[_0x4260ab[_0xadaf('0x5b')]?_0xadaf('0x5d'):_0xadaf('0x5e')]['find']({'where':{'id':_0x4260ab[_0xadaf('0x5b')]?_0x4260ab['VoiceQueueId']:_0x4260ab[_0xadaf('0x5c')]},'attributes':['id',_0xadaf('0x2a')],'raw':!![]});}}})[_0xadaf('0x27')](function(_0x1d9bb9){var _0x10a415={};if(_0x1d9bb9){_[_0xadaf('0x57')](_0x10a415,_[_0xadaf('0x5f')](_0x39c2bc[_0xadaf('0x60')],[_0xadaf('0x61'),_0xadaf('0x62'),'id']));_0x10a415[_0xadaf('0x63')]=0x15;_0x10a415[_0xadaf('0x64')]='deleted';_0x10a415['campaign']=_0x1d9bb9[_0xadaf('0x2a')];_0x10a415[_0xadaf('0x65')]=_0x3b14af['user']['name'];_0x10a415['UserId']=_0x3b14af[_0xadaf('0x66')]['id'];_0x10a415[_0xadaf('0x67')]=!![];_0x10a415[_0xadaf('0x68')]=moment()[_0xadaf('0x69')](_0xadaf('0x6a'));_0x10a415[_0xadaf('0x6b')]=_0x39c2bc[_0xadaf('0x6c')];_0x10a415[_0xadaf('0x6d')]=_0x39c2bc[_0xadaf('0x5b')]?_0xadaf('0x6e'):_0xadaf('0x6f');return db[_0xadaf('0x70')][_0xadaf('0x58')]({'where':{'id':_0x10a415['ContactId']},'attributes':[_0xadaf('0x71'),_0xadaf('0x72')]})[_0xadaf('0x27')](function(_0x3091ca){if(!_[_0xadaf('0x73')](_0x80d59f)&&!_[_0xadaf('0x73')](_0x3091ca[_0xadaf('0x71')])){_0x10a415[_0xadaf('0x74')]=_0x3091ca[_0xadaf('0x71')];if(!_[_0xadaf('0x73')](_0x3091ca[_0xadaf('0x72')])){_0x10a415[_0xadaf('0x74')]+='\x20'+_0x3091ca[_0xadaf('0x72')];}}})[_0xadaf('0x75')](function(){return db[_0xadaf('0x76')]['create'](_0x10a415);});}})[_0xadaf('0x27')](function(){return _0x80d59f[_0xadaf('0x1c')](0xcc)[_0xadaf('0x1b')]();})[_0xadaf('0x54')](handleError(_0x80d59f,null));};exports[_0xadaf('0x77')]=function(_0x24e5d5,_0x102035,_0x161c19){var _0x4d5fbd=[];return db[_0xadaf('0x70')][_0xadaf('0x5a')]()[_0xadaf('0x27')](function(_0x36780d){_0x4d5fbd=_[_0xadaf('0x33')](_0x36780d);return _0x24e5d5['user'][_0xadaf('0x78')]({'where':{'type':_0xadaf('0x79'),'dialActive':!![],'dialMethod':_0xadaf('0x7a')},'attributes':['id',_0xadaf('0x7b'),_0xadaf('0x7c')],'raw':!![]});})[_0xadaf('0x27')](function(_0x56196a){if(_0x56196a&&_0x56196a[_0xadaf('0x4a')]){return db[_0xadaf('0x7d')][_0xadaf('0x7e')](function(_0xf5939e){var _0x53384e={'active':![],'recallme':![],'scheduledAt':{'$lte':moment()['format'](_0xadaf('0x6a'))},'VoiceQueueId':{'$in':_[_0xadaf('0x2d')](_0x56196a,'id')},'$or':[{'UserId':null},{'UserId':_0x24e5d5['user']['id']}]};var _0x47ab68={'active':![],'recallme':!![],'VoiceQueueId':{'$in':_(_0x56196a)[_0xadaf('0x4e')]([_0xadaf('0x7c'),0x0])['map']('id')[_0xadaf('0x7f')]()},'$or':[{'UserId':null},{'UserId':_0x24e5d5['user']['id']}]};var _0x4b1f87={'$or':[_0x53384e,_0x47ab68]};var _0x1a2302=[];if(_0x24e5d5[_0xadaf('0x59')]['direction']&&_0x24e5d5['body'][_0xadaf('0x80')]===_0xadaf('0x81')){if(!_[_0xadaf('0x82')](_0x24e5d5[_0xadaf('0x59')]['hopperIds'])){_0x4b1f87['id']={'$in':_0x24e5d5[_0xadaf('0x59')]['hopperIds']};}_0x1a2302=[[_0xadaf('0x83'),_0xadaf('0x84')],[_0xadaf('0x85'),_0x56196a[0x0][_0xadaf('0x7b')]==='ASC'?_0xadaf('0x86'):_0xadaf('0x84')],db[_0xadaf('0x7d')]['literal'](_0xadaf('0x87')),['id','DESC']];}else{if(!_['isEmpty'](_0x24e5d5[_0xadaf('0x59')][_0xadaf('0x88')])){_0x4b1f87['id']={'$notIn':_0x24e5d5[_0xadaf('0x59')][_0xadaf('0x88')]};}_0x1a2302=[['priority',_0xadaf('0x86')],['scheduledAt',_0x56196a[0x0]['dialOrderByScheduledAt']],db[_0xadaf('0x7d')][_0xadaf('0x89')](_0xadaf('0x8a')),['id',_0xadaf('0x84')]];}return db[_0xadaf('0x2e')][_0xadaf('0x8b')]({'attributes':['id',_0xadaf('0x8c'),_0xadaf('0x8d')],'where':_0x4b1f87,'order':_0x1a2302,'transaction':_0xf5939e,'lock':_0xf5939e[_0xadaf('0x8e')]['UPDATE'],'include':[{'model':db[_0xadaf('0x70')],'as':'Contact','attributes':_0x4d5fbd,'include':[{'model':db[_0xadaf('0x8f')],'as':'Company','attributes':['id',_0xadaf('0x2a')]}]},{'model':db[_0xadaf('0x90')],'as':_0xadaf('0x91'),'attributes':['id','name']},{'model':db[_0xadaf('0x5d')],'as':_0xadaf('0x92'),'attributes':['id','name',_0xadaf('0x93')]}]})[_0xadaf('0x27')](function(_0x397131){if(_0x397131){return _0x397131[_0xadaf('0x26')]({'UserId':_0x24e5d5[_0xadaf('0x66')]['id']},{'transaction':_0xf5939e});}});});}})['then'](handleEntityNotFound(_0x102035,null))['then'](respondWithResult(_0x102035,null))[_0xadaf('0x54')](handleError(_0x102035,null));};exports['getPreviewRecall']=function(_0xcbdb51,_0x55be33,_0x10f6df){var _0x1cafa5=[];return db[_0xadaf('0x70')][_0xadaf('0x5a')]()[_0xadaf('0x27')](function(_0x5a3c6c){_0x1cafa5=_[_0xadaf('0x33')](_0x5a3c6c);return _0xcbdb51[_0xadaf('0x66')][_0xadaf('0x78')]({'where':{'type':_0xadaf('0x79'),'dialActive':!![],'dialMethod':'preview'},'attributes':['id','dialOrderByScheduledAt','dialPreviewAutoRecallMe'],'raw':!![]});})[_0xadaf('0x27')](function(_0x491918){if(_0x491918&&_0x491918[_0xadaf('0x4a')]){return db[_0xadaf('0x7d')][_0xadaf('0x7e')](function(_0x562c78){var _0x3e7b2b={'active':![],'recallme':!![],'id':_0xcbdb51[_0xadaf('0x59')][_0xadaf('0x94')]};return db['CmHopper'][_0xadaf('0x8b')]({'attributes':['id',_0xadaf('0x8c'),'recallme'],'where':_0x3e7b2b,'transaction':_0x562c78,'lock':_0x562c78[_0xadaf('0x8e')][_0xadaf('0x95')],'include':[{'model':db[_0xadaf('0x70')],'as':_0xadaf('0x96'),'attributes':_0x1cafa5,'include':[{'model':db[_0xadaf('0x8f')],'as':_0xadaf('0x97'),'attributes':['id',_0xadaf('0x2a')]}]},{'model':db[_0xadaf('0x90')],'as':'List','attributes':['id',_0xadaf('0x2a')]},{'model':db[_0xadaf('0x5d')],'as':_0xadaf('0x92'),'attributes':['id',_0xadaf('0x2a'),_0xadaf('0x93')]}]})[_0xadaf('0x27')](function(_0x526ffc){if(_0x526ffc){return _0x526ffc[_0xadaf('0x26')]({'UserId':_0xcbdb51[_0xadaf('0x66')]['id']},{'transaction':_0x562c78});}});});}})['then'](handleEntityNotFound(_0x55be33,null))[_0xadaf('0x27')](respondWithResult(_0x55be33,null))[_0xadaf('0x54')](handleError(_0x55be33,null));};exports['getOpenContacts']=function(_0x327fb5,_0x466b90,_0x5a639c){return _0x327fb5['user'][_0xadaf('0x78')]({'where':{'type':'outbound','dialActive':!![],'dialMethod':_0xadaf('0x7a')},'attributes':['id'],'raw':!![]})[_0xadaf('0x27')](function(_0x451983){if(_0x451983&&_0x451983[_0xadaf('0x4a')]){return db[_0xadaf('0x2e')][_0xadaf('0x20')]({'where':{'active':![],'recallme':![],'scheduledAt':{'$lte':moment()[_0xadaf('0x69')](_0xadaf('0x6a'))},'VoiceQueueId':{'$in':_[_0xadaf('0x2d')](_0x451983,'id')},'$or':[{'UserId':null},{'UserId':_0x327fb5['user']['id']}]}});}return 0x0;})[_0xadaf('0x27')](function(_0x2269c9){if(!_[_0xadaf('0x73')](_0x2269c9)&&_[_0xadaf('0x98')](_0x2269c9)){return _0x466b90['status'](0xc8)['json']({'contacts':_0x2269c9});}else{logger[_0xadaf('0x29')](_0xadaf('0x99'),'getOpenContacts',0x194,'entity\x20not\x20found');_0x466b90[_0xadaf('0x1a')](0x194);}})[_0xadaf('0x54')](handleError(_0x466b90,null));};exports[_0xadaf('0x9a')]=function(_0x1880de,_0x4e2f22,_0x533101){var _0x55bcf7=shared[_0xadaf('0x9b')];var _0x1c8121=[];_['map'](_0x55bcf7,function(_0x235f62){_0x1c8121[_0xadaf('0x9c')]({'id':_0x235f62['name'],'name':_0x235f62[_0xadaf('0x2a')],'utcOffset':_0x235f62['utcOffset']});});return _0x4e2f22[_0xadaf('0x1c')](0xc8)['json']({'tz':_0x1c8121});};exports[_0xadaf('0x9d')]=function(_0x53a1ee,_0x4b4a10,_0x4514eb){var _0x302511=shared[_0xadaf('0x9b')];var _0x107547={};if(!_[_0xadaf('0x73')](_0x302511[_0x53a1ee[_0xadaf('0x59')]['id']]))_0x107547=_0x302511[_0x53a1ee[_0xadaf('0x59')]['id']];return _0x4b4a10['status'](0xc8)[_0xadaf('0x1d')](_0x107547);};
\ No newline at end of file