Built motion from commit 19a84241.|2.5.34
[motion2.git] / server / api / cmHopper / cmHopper.controller.js
index ebfb033..22ecb2b 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0xd8b0=['preview','dialOrderByScheduledAt','transaction','direction','prev','hopperIds','ASC','DESC','sequelize','literal','COALESCE(CmHopper.UserId,\x200)\x20ASC','isEmpty','priority','COALESCE(CmHopper.UserId,\x200)\x20DESC','findOne','scheduledat','LOCK','UPDATE','Contact','CmCompany','CmList','List','VoiceQueue','Queue','dialActive','getOpenContacts','getVoiceQueues','isNumber','entity\x20not\x20found','html-pdf','eml-format','request-promise','moment','bluebird','mustache','util','to-csv','ejs','lodash','crypto','jsforce','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','api','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','status','end','json','count','offset','limit','set','Content-Range','apply','reject','save','destroy','then','error','name','send','index','CmHopper','type','model','query','keys','filters','$and','$or','$gt','$gte','$lt','$lte','$ne','$eq','$between','$notBetween','$notIn','$like','$notLike','$notILike','$overlap','$contains','$contained','attributes','intersection','fields','nolimit','order','sort','where','pick','map','VIRTUAL','filter','merge','include','findAll','rows','show','params','length','includeAll','options','create','body','catch','update','find','describe','CampaignId','VoiceQueueId','omit','dataValues','createdAt','updatedAt','state','statedesc','deleted','campaign','user','UserId','format','YYYY-MM-DD\x20HH:mm:ss','calleridnum','phone','campaigntype','ivr','CmContact','ContactId','lastName','isNil','calleridname','firstName','CmHopperFinal'];(function(_0x4565bf,_0x5ad9d6){var _0x5610ba=function(_0x170988){while(--_0x170988){_0x4565bf['push'](_0x4565bf['shift']());}};_0x5610ba(++_0x5ad9d6);}(_0xd8b0,0xad));var _0x0d8b=function(_0x20a584,_0xe384a5){_0x20a584=_0x20a584-0x0;var _0x4b41a8=_0xd8b0[_0x20a584];return _0x4b41a8;};'use strict';var pdf=require(_0x0d8b('0x0'));var emlformat=require(_0x0d8b('0x1'));var rimraf=require('rimraf');var zipdir=require('zip-dir');var jsonpatch=require('fast-json-patch');var rp=require(_0x0d8b('0x2'));var moment=require(_0x0d8b('0x3'));var BPromise=require(_0x0d8b('0x4'));var Mustache=require(_0x0d8b('0x5'));var util=require(_0x0d8b('0x6'));var path=require('path');var sox=require('sox');var csv=require(_0x0d8b('0x7'));var ejs=require(_0x0d8b('0x8'));var fs=require('fs');var _=require(_0x0d8b('0x9'));var squel=require('squel');var crypto=require(_0x0d8b('0xa'));var jsforce=require(_0x0d8b('0xb'));var deskjs=require('desk.js');var toCsv=require(_0x0d8b('0x7'));var querystring=require(_0x0d8b('0xc'));var Papa=require(_0x0d8b('0xd'));var Redis=require(_0x0d8b('0xe'));var authService=require(_0x0d8b('0xf'));var qs=require(_0x0d8b('0x10'));var as=require(_0x0d8b('0x11'));var hardwareService=require(_0x0d8b('0x12'));var logger=require('../../config/logger')(_0x0d8b('0x13'));var utils=require('../../config/utils');var config=require(_0x0d8b('0x14'));var licenseUtil=require(_0x0d8b('0x15'));var db=require(_0x0d8b('0x16'))['db'];function respondWithStatusCode(_0x92cdd8,_0x35a07b){_0x35a07b=_0x35a07b||0xcc;return function(_0x32bb1a){if(_0x32bb1a){return _0x92cdd8[_0x0d8b('0x17')](_0x35a07b);}return _0x92cdd8[_0x0d8b('0x18')](_0x35a07b)[_0x0d8b('0x19')]();};}function respondWithResult(_0x2ce75e,_0x5ad086){_0x5ad086=_0x5ad086||0xc8;return function(_0xe65334){if(_0xe65334){return _0x2ce75e[_0x0d8b('0x18')](_0x5ad086)[_0x0d8b('0x1a')](_0xe65334);}};}function respondWithFilteredResult(_0x4f6f21,_0x23eb7b){return function(_0xa86349){if(_0xa86349){var _0x17f7df=_0xa86349[_0x0d8b('0x1b')],_0xe2e167=_0x23eb7b[_0x0d8b('0x1c')],_0x2cb03c=_0x23eb7b[_0x0d8b('0x1c')]+_0x23eb7b[_0x0d8b('0x1d')],_0x5cd485;if(_0x2cb03c>=_0x17f7df){_0x2cb03c=_0x17f7df;_0x5cd485=0xc8;}else{_0x5cd485=0xce;}_0x4f6f21[_0x0d8b('0x18')](_0x5cd485);return _0x4f6f21[_0x0d8b('0x1e')](_0x0d8b('0x1f'),_0xe2e167+'-'+_0x2cb03c+'/'+_0x17f7df)[_0x0d8b('0x1a')](_0xa86349);}return null;};}function patchUpdates(_0x4a15bf){return function(_0x27512e){try{jsonpatch[_0x0d8b('0x20')](_0x27512e,_0x4a15bf,!![]);}catch(_0x196c0a){return BPromise[_0x0d8b('0x21')](_0x196c0a);}return _0x27512e[_0x0d8b('0x22')]();};}function saveUpdates(_0x5b709c,_0x393beb){return function(_0x352c17){if(_0x352c17){return _0x352c17['update'](_0x5b709c)['then'](function(_0x33fb87){return _0x33fb87;});}return null;};}function removeEntity(_0x54a9a7,_0x56c729){return function(_0x5527d8){if(_0x5527d8){return _0x5527d8[_0x0d8b('0x23')]()[_0x0d8b('0x24')](function(){_0x54a9a7[_0x0d8b('0x18')](0xcc)[_0x0d8b('0x19')]();});}};}function handleEntityNotFound(_0x221071,_0x2c64e2){return function(_0x30980c){if(!_0x30980c){_0x221071[_0x0d8b('0x17')](0x194);}return _0x30980c;};}function handleError(_0x27b695,_0x5e5bc3){_0x5e5bc3=_0x5e5bc3||0x1f4;return function(_0xe8bbee){logger[_0x0d8b('0x25')](_0xe8bbee['stack']);if(_0xe8bbee[_0x0d8b('0x26')]){delete _0xe8bbee['name'];}_0x27b695[_0x0d8b('0x18')](_0x5e5bc3)[_0x0d8b('0x27')](_0xe8bbee);};}exports[_0x0d8b('0x28')]=function(_0x4fe6f9,_0x59a905){var _0x28f639={},_0x3ef745={},_0x4c05ee={'count':0x0,'rows':[]};var _0xcbc4ac=_['map'](db[_0x0d8b('0x29')]['rawAttributes'],function(_0x97050a){return{'name':_0x97050a['fieldName'],'type':_0x97050a[_0x0d8b('0x2a')]['key']};});_0x3ef745[_0x0d8b('0x2b')]=_['map'](_0xcbc4ac,_0x0d8b('0x26'));_0x3ef745[_0x0d8b('0x2c')]=_[_0x0d8b('0x2d')](_0x4fe6f9['query']);_0x3ef745['filters']=_['intersection'](_0x3ef745[_0x0d8b('0x2b')],_0x3ef745['query']);_0x3ef745[_0x0d8b('0x2e')]=_['concat'](_0x3ef745['filters'],[_0x0d8b('0x2f'),_0x0d8b('0x30'),_0x0d8b('0x31'),_0x0d8b('0x32'),_0x0d8b('0x33'),_0x0d8b('0x34'),_0x0d8b('0x35'),_0x0d8b('0x36'),'$not',_0x0d8b('0x37'),_0x0d8b('0x38'),'$in',_0x0d8b('0x39'),_0x0d8b('0x3a'),_0x0d8b('0x3b'),'$iLike',_0x0d8b('0x3c'),_0x0d8b('0x3a'),_0x0d8b('0x3d'),_0x0d8b('0x3e'),_0x0d8b('0x3f'),'$any']);_0x28f639[_0x0d8b('0x40')]=_[_0x0d8b('0x41')](_0x3ef745['model'],qs[_0x0d8b('0x42')](_0x4fe6f9[_0x0d8b('0x2c')][_0x0d8b('0x42')]));_0x28f639[_0x0d8b('0x40')]=_0x28f639[_0x0d8b('0x40')]['length']?_0x28f639['attributes']:_0x3ef745[_0x0d8b('0x2b')];if(!_0x4fe6f9['query']['hasOwnProperty'](_0x0d8b('0x43'))){_0x28f639[_0x0d8b('0x1d')]=qs[_0x0d8b('0x1d')](_0x4fe6f9[_0x0d8b('0x2c')][_0x0d8b('0x1d')]);_0x28f639[_0x0d8b('0x1c')]=qs['offset'](_0x4fe6f9[_0x0d8b('0x2c')][_0x0d8b('0x1c')]);}_0x28f639[_0x0d8b('0x44')]=qs[_0x0d8b('0x45')](_0x4fe6f9[_0x0d8b('0x2c')][_0x0d8b('0x45')]);_0x28f639[_0x0d8b('0x46')]=qs['filters'](_[_0x0d8b('0x47')](_0x4fe6f9[_0x0d8b('0x2c')],_0x3ef745[_0x0d8b('0x2e')]),_0xcbc4ac);if(_0x4fe6f9[_0x0d8b('0x2c')]['filter']){_0x28f639[_0x0d8b('0x46')]=_['merge'](_0x28f639[_0x0d8b('0x46')],{'$or':_[_0x0d8b('0x48')](_0xcbc4ac,function(_0x32d7d7){if(_0x32d7d7[_0x0d8b('0x2a')]!==_0x0d8b('0x49')){var _0x3e632e={};_0x3e632e[_0x32d7d7[_0x0d8b('0x26')]]={'$like':'%'+_0x4fe6f9[_0x0d8b('0x2c')][_0x0d8b('0x4a')]+'%'};return _0x3e632e;}})});}_0x28f639=_[_0x0d8b('0x4b')]({},_0x28f639,_0x4fe6f9['options']);var _0x571acf={'where':_0x28f639['where']};return db['CmHopper']['count'](_0x571acf)[_0x0d8b('0x24')](function(_0x402fe0){_0x4c05ee[_0x0d8b('0x1b')]=_0x402fe0;if(_0x4fe6f9['query']['includeAll']){_0x28f639[_0x0d8b('0x4c')]=[{'all':!![]}];}return db[_0x0d8b('0x29')][_0x0d8b('0x4d')](_0x28f639);})['then'](function(_0x214583){_0x4c05ee[_0x0d8b('0x4e')]=_0x214583;return _0x4c05ee;})['then'](respondWithFilteredResult(_0x59a905,_0x28f639))['catch'](handleError(_0x59a905,null));};exports[_0x0d8b('0x4f')]=function(_0x495870,_0x1e22e5){var _0x5a96b1={'raw':!![],'where':{'id':_0x495870[_0x0d8b('0x50')]['id']}},_0x53f643={};_0x53f643[_0x0d8b('0x2b')]=_['keys'](db['CmHopper']['rawAttributes']);_0x53f643['query']=_[_0x0d8b('0x2d')](_0x495870[_0x0d8b('0x2c')]);_0x53f643[_0x0d8b('0x2e')]=_['intersection'](_0x53f643[_0x0d8b('0x2b')],_0x53f643[_0x0d8b('0x2c')]);_0x5a96b1[_0x0d8b('0x40')]=_[_0x0d8b('0x41')](_0x53f643[_0x0d8b('0x2b')],qs[_0x0d8b('0x42')](_0x495870[_0x0d8b('0x2c')][_0x0d8b('0x42')]));_0x5a96b1[_0x0d8b('0x40')]=_0x5a96b1[_0x0d8b('0x40')][_0x0d8b('0x51')]?_0x5a96b1[_0x0d8b('0x40')]:_0x53f643[_0x0d8b('0x2b')];if(_0x495870[_0x0d8b('0x2c')][_0x0d8b('0x52')]){_0x5a96b1[_0x0d8b('0x4c')]=[{'all':!![]}];}_0x5a96b1=_[_0x0d8b('0x4b')]({},_0x5a96b1,_0x495870[_0x0d8b('0x53')]);return db[_0x0d8b('0x29')]['find'](_0x5a96b1)[_0x0d8b('0x24')](handleEntityNotFound(_0x1e22e5,null))['then'](respondWithResult(_0x1e22e5,null))['catch'](handleError(_0x1e22e5,null));};exports[_0x0d8b('0x54')]=function(_0x113fb7,_0x3f943a){return db[_0x0d8b('0x29')]['create'](_0x113fb7[_0x0d8b('0x55')],{})[_0x0d8b('0x24')](respondWithResult(_0x3f943a,0xc9))[_0x0d8b('0x56')](handleError(_0x3f943a,null));};exports[_0x0d8b('0x57')]=function(_0x45cd22,_0x4cd85a){if(_0x45cd22['body']['id']){delete _0x45cd22['body']['id'];}return db['CmHopper'][_0x0d8b('0x58')]({'where':{'id':_0x45cd22[_0x0d8b('0x50')]['id']}})['then'](handleEntityNotFound(_0x4cd85a,null))['then'](saveUpdates(_0x45cd22[_0x0d8b('0x55')],null))[_0x0d8b('0x24')](respondWithResult(_0x4cd85a,null))['catch'](handleError(_0x4cd85a,null));};exports['describe']=function(_0x900906,_0xeeefd4){return db[_0x0d8b('0x29')][_0x0d8b('0x59')]()[_0x0d8b('0x24')](respondWithResult(_0xeeefd4,null))['catch'](handleError(_0xeeefd4,null));};exports[_0x0d8b('0x23')]=function(_0x2afe34,_0x5481fc){var _0x580580;return db[_0x0d8b('0x29')][_0x0d8b('0x58')]({'where':{'id':_0x2afe34['params']['id']}})['then'](handleEntityNotFound(_0x5481fc,null))[_0x0d8b('0x24')](function(_0x2f2462){if(_0x2f2462){return _0x2f2462[_0x0d8b('0x23')]()[_0x0d8b('0x24')](function(_0x4a2989){return _0x4a2989;});}})[_0x0d8b('0x24')](function(_0x598e03){_0x580580=_0x598e03;if(_0x598e03){if(_0x598e03['VoiceQueueId']||_0x598e03[_0x0d8b('0x5a')]){return db[_0x598e03[_0x0d8b('0x5b')]?'VoiceQueue':'Campaign'][_0x0d8b('0x58')]({'where':{'id':_0x598e03[_0x0d8b('0x5b')]?_0x598e03[_0x0d8b('0x5b')]:_0x598e03[_0x0d8b('0x5a')]},'attributes':['id',_0x0d8b('0x26')],'raw':!![]});}}})[_0x0d8b('0x24')](function(_0x3978e5){var _0x3bead7={};if(_0x3978e5){_['merge'](_0x3bead7,_[_0x0d8b('0x5c')](_0x580580[_0x0d8b('0x5d')],[_0x0d8b('0x5e'),_0x0d8b('0x5f'),'id']));_0x3bead7[_0x0d8b('0x60')]=0x15;_0x3bead7[_0x0d8b('0x61')]=_0x0d8b('0x62');_0x3bead7[_0x0d8b('0x63')]=_0x3978e5[_0x0d8b('0x26')];_0x3bead7['membername']=_0x2afe34[_0x0d8b('0x64')][_0x0d8b('0x26')];_0x3bead7[_0x0d8b('0x65')]=_0x2afe34[_0x0d8b('0x64')]['id'];_0x3bead7[_0x0d8b('0x62')]=!![];_0x3bead7['deletedat']=moment()[_0x0d8b('0x66')](_0x0d8b('0x67'));_0x3bead7[_0x0d8b('0x68')]=_0x580580[_0x0d8b('0x69')];_0x3bead7[_0x0d8b('0x6a')]=_0x580580['VoiceQueueId']?'queue':_0x0d8b('0x6b');return db[_0x0d8b('0x6c')][_0x0d8b('0x58')]({'where':{'id':_0x3bead7[_0x0d8b('0x6d')]},'attributes':['firstName',_0x0d8b('0x6e')]})[_0x0d8b('0x24')](function(_0x8c0bbe){if(!_['isNil'](_0x5481fc)&&!_[_0x0d8b('0x6f')](_0x8c0bbe['firstName'])){_0x3bead7[_0x0d8b('0x70')]=_0x8c0bbe[_0x0d8b('0x71')];if(!_[_0x0d8b('0x6f')](_0x8c0bbe[_0x0d8b('0x6e')])){_0x3bead7[_0x0d8b('0x70')]+='\x20'+_0x8c0bbe[_0x0d8b('0x6e')];}}})['finally'](function(){return db[_0x0d8b('0x72')]['create'](_0x3bead7);});}})[_0x0d8b('0x24')](function(){return _0x5481fc[_0x0d8b('0x18')](0xcc)[_0x0d8b('0x19')]();})[_0x0d8b('0x56')](handleError(_0x5481fc,null));};exports['getPreview']=function(_0x19e097,_0x34d01f,_0x1a1ba7){var _0x2332fc=[];return db[_0x0d8b('0x6c')][_0x0d8b('0x59')]()[_0x0d8b('0x24')](function(_0x2eb406){_0x2332fc=_[_0x0d8b('0x2d')](_0x2eb406);return _0x19e097[_0x0d8b('0x64')]['getVoiceQueues']({'where':{'type':'outbound','dialActive':!![],'dialMethod':_0x0d8b('0x73')},'attributes':['id',_0x0d8b('0x74')],'raw':!![]});})['then'](function(_0xb1aa96){if(_0xb1aa96&&_0xb1aa96['length']){return db['sequelize'][_0x0d8b('0x75')](function(_0x1c4e96){var _0x4f4b4d={'active':![],'recallme':![],'scheduledAt':{'$lte':moment()['format'](_0x0d8b('0x67'))},'VoiceQueueId':{'$in':_[_0x0d8b('0x48')](_0xb1aa96,'id')},'$or':[{'UserId':null},{'UserId':_0x19e097[_0x0d8b('0x64')]['id']}]};var _0x435090=[];if(_0x19e097[_0x0d8b('0x55')][_0x0d8b('0x76')]&&_0x19e097[_0x0d8b('0x55')]['direction']===_0x0d8b('0x77')){if(!_['isEmpty'](_0x19e097[_0x0d8b('0x55')][_0x0d8b('0x78')])){_0x4f4b4d['id']={'$in':_0x19e097[_0x0d8b('0x55')][_0x0d8b('0x78')]};}_0x435090=[['priority',_0x0d8b('0x79')],['scheduledAt',_0xb1aa96[0x0][_0x0d8b('0x74')]===_0x0d8b('0x79')?_0x0d8b('0x7a'):_0x0d8b('0x79')],db[_0x0d8b('0x7b')][_0x0d8b('0x7c')](_0x0d8b('0x7d')),['id',_0x0d8b('0x7a')]];}else{if(!_[_0x0d8b('0x7e')](_0x19e097[_0x0d8b('0x55')]['hopperIds'])){_0x4f4b4d['id']={'$notIn':_0x19e097[_0x0d8b('0x55')]['hopperIds']};}_0x435090=[[_0x0d8b('0x7f'),_0x0d8b('0x7a')],['scheduledAt',_0xb1aa96[0x0][_0x0d8b('0x74')]],db['sequelize'][_0x0d8b('0x7c')](_0x0d8b('0x80')),['id',_0x0d8b('0x79')]];}return db[_0x0d8b('0x29')][_0x0d8b('0x81')]({'attributes':['id',_0x0d8b('0x82')],'where':_0x4f4b4d,'order':_0x435090,'transaction':_0x1c4e96,'lock':_0x1c4e96[_0x0d8b('0x83')][_0x0d8b('0x84')],'include':[{'model':db['CmContact'],'as':_0x0d8b('0x85'),'attributes':_0x2332fc,'include':[{'model':db[_0x0d8b('0x86')],'as':'Company','attributes':['id',_0x0d8b('0x26')]}]},{'model':db[_0x0d8b('0x87')],'as':_0x0d8b('0x88'),'attributes':['id',_0x0d8b('0x26')]},{'model':db[_0x0d8b('0x89')],'as':_0x0d8b('0x8a'),'attributes':['id',_0x0d8b('0x26'),_0x0d8b('0x8b')]}]})[_0x0d8b('0x24')](function(_0x5007c0){if(_0x5007c0){return _0x5007c0[_0x0d8b('0x57')]({'UserId':_0x19e097[_0x0d8b('0x64')]['id']},{'transaction':_0x1c4e96});}});});}})['then'](handleEntityNotFound(_0x34d01f,null))[_0x0d8b('0x24')](respondWithResult(_0x34d01f,null))[_0x0d8b('0x56')](handleError(_0x34d01f,null));};exports[_0x0d8b('0x8c')]=function(_0x58525c,_0x5db3b4,_0xebca83){return _0x58525c[_0x0d8b('0x64')][_0x0d8b('0x8d')]({'where':{'type':'outbound','dialActive':!![],'dialMethod':'preview'},'attributes':['id'],'raw':!![]})[_0x0d8b('0x24')](function(_0x130159){if(_0x130159&&_0x130159[_0x0d8b('0x51')]){return db[_0x0d8b('0x29')][_0x0d8b('0x1b')]({'where':{'active':![],'recallme':![],'scheduledAt':{'$lte':moment()[_0x0d8b('0x66')](_0x0d8b('0x67'))},'VoiceQueueId':{'$in':_[_0x0d8b('0x48')](_0x130159,'id')},'$or':[{'UserId':null},{'UserId':_0x58525c[_0x0d8b('0x64')]['id']}]}});}return 0x0;})[_0x0d8b('0x24')](function(_0x195901){if(!_[_0x0d8b('0x6f')](_0x195901)&&_[_0x0d8b('0x8e')](_0x195901)){return _0x5db3b4['status'](0xc8)[_0x0d8b('0x1a')]({'contacts':_0x195901});}else{logger[_0x0d8b('0x25')]('CmHopper,\x20%s,\x20%s,\x20%s','getOpenContacts',0x194,_0x0d8b('0x8f'));_0x5db3b4[_0x0d8b('0x17')](0x194);}})[_0x0d8b('0x56')](handleError(_0x5db3b4,null));};
\ No newline at end of file
+var _0xf3b7=['preview','isNumber','json','CmHopper,\x20%s,\x20%s,\x20%s','getOpenContacts','eml-format','rimraf','fast-json-patch','mustache','util','sox','to-csv','fs-extra','lodash','squel','crypto','jsforce','desk.js','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','status','undefined','offset','count','limit','set','Content-Range','update','then','destroy','error','stack','name','send','index','map','CmHopper','fieldName','type','key','model','query','keys','intersection','filters','$and','$gt','$lt','$lte','$ne','$not','$notBetween','$in','$notIn','$notLike','$iLike','$notILike','$like','$overlap','$contains','$contained','$any','fields','attributes','hasOwnProperty','order','sort','where','pick','filter','VIRTUAL','merge','options','includeAll','include','findAll','rows','catch','params','rawAttributes','length','find','create','body','describe','CampaignId','VoiceQueueId','VoiceQueue','Campaign','omit','dataValues','createdAt','state','statedesc','membername','user','UserId','deleted','deletedat','format','YYYY-MM-DD\x20HH:mm:ss','calleridnum','phone','queue','CmContact','lastName','isNil','firstName','calleridname','finally','CmHopperFinal','end','getVoiceQueues','outbound','dialOrderByScheduledAt','sequelize','transaction','direction','prev','isEmpty','hopperIds','priority','ASC','scheduledAt','DESC','literal','COALESCE(CmHopper.UserId,\x200)\x20ASC','COALESCE(CmHopper.UserId,\x200)\x20DESC','findOne','scheduledat','CmCompany','List','Queue','dialActive'];(function(_0x35d8af,_0x14fd75){var _0x1d08b0=function(_0x36b437){while(--_0x36b437){_0x35d8af['push'](_0x35d8af['shift']());}};_0x1d08b0(++_0x14fd75);}(_0xf3b7,0x1b8));var _0x7f3b=function(_0x31bfa5,_0x2f3e0d){_0x31bfa5=_0x31bfa5-0x0;var _0x3c8286=_0xf3b7[_0x31bfa5];return _0x3c8286;};'use strict';var emlformat=require(_0x7f3b('0x0'));var rimraf=require(_0x7f3b('0x1'));var zipdir=require('zip-dir');var jsonpatch=require(_0x7f3b('0x2'));var rp=require('request-promise');var moment=require('moment');var BPromise=require('bluebird');var Mustache=require(_0x7f3b('0x3'));var util=require(_0x7f3b('0x4'));var path=require('path');var sox=require(_0x7f3b('0x5'));var csv=require(_0x7f3b('0x6'));var ejs=require('ejs');var fs=require('fs');var fs_extra=require(_0x7f3b('0x7'));var _=require(_0x7f3b('0x8'));var squel=require(_0x7f3b('0x9'));var crypto=require(_0x7f3b('0xa'));var jsforce=require(_0x7f3b('0xb'));var deskjs=require(_0x7f3b('0xc'));var toCsv=require(_0x7f3b('0x6'));var querystring=require('querystring');var Papa=require(_0x7f3b('0xd'));var Redis=require(_0x7f3b('0xe'));var authService=require(_0x7f3b('0xf'));var qs=require(_0x7f3b('0x10'));var as=require(_0x7f3b('0x11'));var hardwareService=require(_0x7f3b('0x12'));var logger=require(_0x7f3b('0x13'))(_0x7f3b('0x14'));var utils=require(_0x7f3b('0x15'));var config=require(_0x7f3b('0x16'));var licenseUtil=require(_0x7f3b('0x17'));var db=require(_0x7f3b('0x18'))['db'];function respondWithStatusCode(_0x18f59f,_0x5e3e69){_0x5e3e69=_0x5e3e69||0xcc;return function(_0x2be3a0){if(_0x2be3a0){return _0x18f59f[_0x7f3b('0x19')](_0x5e3e69);}return _0x18f59f[_0x7f3b('0x1a')](_0x5e3e69)['end']();};}function respondWithResult(_0x471730,_0xdbc3d0){_0xdbc3d0=_0xdbc3d0||0xc8;return function(_0x103aa1){if(_0x103aa1){return _0x471730['status'](_0xdbc3d0)['json'](_0x103aa1);}};}function respondWithFilteredResult(_0x41e308,_0x49644b){return function(_0x5bd555){if(_0x5bd555){var _0x1a1fb4=typeof _0x49644b['offset']==='undefined'&&typeof _0x49644b['limit']===_0x7f3b('0x1b');var _0x4b841c=_0x5bd555['count'];var _0x165ae9=_0x1a1fb4?0x0:_0x49644b[_0x7f3b('0x1c')];var _0x4b6690=_0x1a1fb4?_0x5bd555[_0x7f3b('0x1d')]:_0x49644b[_0x7f3b('0x1c')]+_0x49644b[_0x7f3b('0x1e')];var _0x5347fd;if(_0x4b6690>=_0x4b841c){_0x4b6690=_0x4b841c;_0x5347fd=0xc8;}else{_0x5347fd=0xce;}_0x41e308[_0x7f3b('0x1a')](_0x5347fd);return _0x41e308[_0x7f3b('0x1f')](_0x7f3b('0x20'),_0x165ae9+'-'+_0x4b6690+'/'+_0x4b841c)['json'](_0x5bd555);}return null;};}function patchUpdates(_0x3683cc){return function(_0x2f5f18){try{jsonpatch['apply'](_0x2f5f18,_0x3683cc,!![]);}catch(_0x5e2199){return BPromise['reject'](_0x5e2199);}return _0x2f5f18['save']();};}function saveUpdates(_0x4db5c3,_0xaf4647){return function(_0x5c25cc){if(_0x5c25cc){return _0x5c25cc[_0x7f3b('0x21')](_0x4db5c3)[_0x7f3b('0x22')](function(_0x47f6ad){return _0x47f6ad;});}return null;};}function removeEntity(_0x53e364,_0x5e4c95){return function(_0x2ea975){if(_0x2ea975){return _0x2ea975[_0x7f3b('0x23')]()[_0x7f3b('0x22')](function(){_0x53e364[_0x7f3b('0x1a')](0xcc)['end']();});}};}function handleEntityNotFound(_0x364f1f,_0x1389ee){return function(_0x1bf266){if(!_0x1bf266){_0x364f1f[_0x7f3b('0x19')](0x194);}return _0x1bf266;};}function handleError(_0x191150,_0x2a5367){_0x2a5367=_0x2a5367||0x1f4;return function(_0x3715cb){logger[_0x7f3b('0x24')](_0x3715cb[_0x7f3b('0x25')]);if(_0x3715cb[_0x7f3b('0x26')]){delete _0x3715cb[_0x7f3b('0x26')];}_0x191150[_0x7f3b('0x1a')](_0x2a5367)[_0x7f3b('0x27')](_0x3715cb);};}exports[_0x7f3b('0x28')]=function(_0x4fae43,_0x15f75b){var _0x1978d7={},_0x5d0942={},_0x5dc3e7={'count':0x0,'rows':[]};var _0x5bffa3=_[_0x7f3b('0x29')](db[_0x7f3b('0x2a')]['rawAttributes'],function(_0x120c3d){return{'name':_0x120c3d[_0x7f3b('0x2b')],'type':_0x120c3d[_0x7f3b('0x2c')][_0x7f3b('0x2d')]};});_0x5d0942[_0x7f3b('0x2e')]=_['map'](_0x5bffa3,_0x7f3b('0x26'));_0x5d0942[_0x7f3b('0x2f')]=_[_0x7f3b('0x30')](_0x4fae43[_0x7f3b('0x2f')]);_0x5d0942['filters']=_[_0x7f3b('0x31')](_0x5d0942[_0x7f3b('0x2e')],_0x5d0942[_0x7f3b('0x2f')]);_0x5d0942[_0x7f3b('0x32')]=_['concat'](_0x5d0942[_0x7f3b('0x32')],[_0x7f3b('0x33'),'$or',_0x7f3b('0x34'),'$gte',_0x7f3b('0x35'),_0x7f3b('0x36'),_0x7f3b('0x37'),'$eq',_0x7f3b('0x38'),'$between',_0x7f3b('0x39'),_0x7f3b('0x3a'),_0x7f3b('0x3b'),'$like',_0x7f3b('0x3c'),_0x7f3b('0x3d'),_0x7f3b('0x3e'),_0x7f3b('0x3f'),_0x7f3b('0x40'),_0x7f3b('0x41'),_0x7f3b('0x42'),_0x7f3b('0x43')]);_0x1978d7['attributes']=_['intersection'](_0x5d0942[_0x7f3b('0x2e')],qs[_0x7f3b('0x44')](_0x4fae43[_0x7f3b('0x2f')]['fields']));_0x1978d7[_0x7f3b('0x45')]=_0x1978d7[_0x7f3b('0x45')]['length']?_0x1978d7[_0x7f3b('0x45')]:_0x5d0942[_0x7f3b('0x2e')];if(!_0x4fae43[_0x7f3b('0x2f')][_0x7f3b('0x46')]('nolimit')){_0x1978d7[_0x7f3b('0x1e')]=qs['limit'](_0x4fae43[_0x7f3b('0x2f')][_0x7f3b('0x1e')]);_0x1978d7[_0x7f3b('0x1c')]=qs[_0x7f3b('0x1c')](_0x4fae43['query'][_0x7f3b('0x1c')]);}_0x1978d7[_0x7f3b('0x47')]=qs['sort'](_0x4fae43[_0x7f3b('0x2f')][_0x7f3b('0x48')]);_0x1978d7[_0x7f3b('0x49')]=qs[_0x7f3b('0x32')](_[_0x7f3b('0x4a')](_0x4fae43[_0x7f3b('0x2f')],_0x5d0942[_0x7f3b('0x32')]),_0x5bffa3);if(_0x4fae43['query'][_0x7f3b('0x4b')]){_0x1978d7[_0x7f3b('0x49')]=_['merge'](_0x1978d7[_0x7f3b('0x49')],{'$or':_[_0x7f3b('0x29')](_0x5bffa3,function(_0x3ccd81){if(_0x3ccd81[_0x7f3b('0x2c')]!==_0x7f3b('0x4c')){var _0x100b4b={};_0x100b4b[_0x3ccd81[_0x7f3b('0x26')]]={'$like':'%'+_0x4fae43[_0x7f3b('0x2f')]['filter']+'%'};return _0x100b4b;}})});}_0x1978d7=_[_0x7f3b('0x4d')]({},_0x1978d7,_0x4fae43[_0x7f3b('0x4e')]);var _0x400f40={'where':_0x1978d7[_0x7f3b('0x49')]};return db[_0x7f3b('0x2a')][_0x7f3b('0x1d')](_0x400f40)[_0x7f3b('0x22')](function(_0x76c801){_0x5dc3e7['count']=_0x76c801;if(_0x4fae43[_0x7f3b('0x2f')][_0x7f3b('0x4f')]){_0x1978d7[_0x7f3b('0x50')]=[{'all':!![]}];}return db[_0x7f3b('0x2a')][_0x7f3b('0x51')](_0x1978d7);})[_0x7f3b('0x22')](function(_0x511a3d){_0x5dc3e7[_0x7f3b('0x52')]=_0x511a3d;return _0x5dc3e7;})['then'](respondWithFilteredResult(_0x15f75b,_0x1978d7))[_0x7f3b('0x53')](handleError(_0x15f75b,null));};exports['show']=function(_0x46e559,_0x2b919d){var _0x1c4c75={'raw':!![],'where':{'id':_0x46e559[_0x7f3b('0x54')]['id']}},_0x59de11={};_0x59de11[_0x7f3b('0x2e')]=_[_0x7f3b('0x30')](db['CmHopper'][_0x7f3b('0x55')]);_0x59de11[_0x7f3b('0x2f')]=_[_0x7f3b('0x30')](_0x46e559[_0x7f3b('0x2f')]);_0x59de11[_0x7f3b('0x32')]=_[_0x7f3b('0x31')](_0x59de11[_0x7f3b('0x2e')],_0x59de11[_0x7f3b('0x2f')]);_0x1c4c75['attributes']=_[_0x7f3b('0x31')](_0x59de11[_0x7f3b('0x2e')],qs['fields'](_0x46e559[_0x7f3b('0x2f')][_0x7f3b('0x44')]));_0x1c4c75['attributes']=_0x1c4c75[_0x7f3b('0x45')][_0x7f3b('0x56')]?_0x1c4c75[_0x7f3b('0x45')]:_0x59de11[_0x7f3b('0x2e')];if(_0x46e559[_0x7f3b('0x2f')][_0x7f3b('0x4f')]){_0x1c4c75[_0x7f3b('0x50')]=[{'all':!![]}];}_0x1c4c75=_[_0x7f3b('0x4d')]({},_0x1c4c75,_0x46e559[_0x7f3b('0x4e')]);return db[_0x7f3b('0x2a')][_0x7f3b('0x57')](_0x1c4c75)['then'](handleEntityNotFound(_0x2b919d,null))[_0x7f3b('0x22')](respondWithResult(_0x2b919d,null))[_0x7f3b('0x53')](handleError(_0x2b919d,null));};exports[_0x7f3b('0x58')]=function(_0x5bb1b6,_0x542d3b){return db[_0x7f3b('0x2a')][_0x7f3b('0x58')](_0x5bb1b6[_0x7f3b('0x59')],{})['then'](respondWithResult(_0x542d3b,0xc9))['catch'](handleError(_0x542d3b,null));};exports[_0x7f3b('0x21')]=function(_0x306543,_0x5e4e44){if(_0x306543[_0x7f3b('0x59')]['id']){delete _0x306543[_0x7f3b('0x59')]['id'];}return db[_0x7f3b('0x2a')][_0x7f3b('0x57')]({'where':{'id':_0x306543[_0x7f3b('0x54')]['id']}})['then'](handleEntityNotFound(_0x5e4e44,null))[_0x7f3b('0x22')](saveUpdates(_0x306543['body'],null))['then'](respondWithResult(_0x5e4e44,null))['catch'](handleError(_0x5e4e44,null));};exports[_0x7f3b('0x5a')]=function(_0x4d2af4,_0x2d90f2){return db['CmHopper'][_0x7f3b('0x5a')]()[_0x7f3b('0x22')](respondWithResult(_0x2d90f2,null))[_0x7f3b('0x53')](handleError(_0x2d90f2,null));};exports['destroy']=function(_0x2038cc,_0x435c20){var _0x5c029f;return db[_0x7f3b('0x2a')]['find']({'where':{'id':_0x2038cc['params']['id']}})[_0x7f3b('0x22')](handleEntityNotFound(_0x435c20,null))['then'](function(_0x365037){if(_0x365037){return _0x365037[_0x7f3b('0x23')]()[_0x7f3b('0x22')](function(_0x253939){return _0x253939;});}})[_0x7f3b('0x22')](function(_0x2c5691){_0x5c029f=_0x2c5691;if(_0x2c5691){if(_0x2c5691['VoiceQueueId']||_0x2c5691[_0x7f3b('0x5b')]){return db[_0x2c5691[_0x7f3b('0x5c')]?_0x7f3b('0x5d'):_0x7f3b('0x5e')]['find']({'where':{'id':_0x2c5691[_0x7f3b('0x5c')]?_0x2c5691[_0x7f3b('0x5c')]:_0x2c5691[_0x7f3b('0x5b')]},'attributes':['id',_0x7f3b('0x26')],'raw':!![]});}}})['then'](function(_0x2908a1){var _0x4528ff={};if(_0x2908a1){_[_0x7f3b('0x4d')](_0x4528ff,_[_0x7f3b('0x5f')](_0x5c029f[_0x7f3b('0x60')],[_0x7f3b('0x61'),'updatedAt','id']));_0x4528ff[_0x7f3b('0x62')]=0x15;_0x4528ff[_0x7f3b('0x63')]='deleted';_0x4528ff['campaign']=_0x2908a1['name'];_0x4528ff[_0x7f3b('0x64')]=_0x2038cc[_0x7f3b('0x65')][_0x7f3b('0x26')];_0x4528ff[_0x7f3b('0x66')]=_0x2038cc[_0x7f3b('0x65')]['id'];_0x4528ff[_0x7f3b('0x67')]=!![];_0x4528ff[_0x7f3b('0x68')]=moment()[_0x7f3b('0x69')](_0x7f3b('0x6a'));_0x4528ff[_0x7f3b('0x6b')]=_0x5c029f[_0x7f3b('0x6c')];_0x4528ff['campaigntype']=_0x5c029f[_0x7f3b('0x5c')]?_0x7f3b('0x6d'):'ivr';return db[_0x7f3b('0x6e')][_0x7f3b('0x57')]({'where':{'id':_0x4528ff['ContactId']},'attributes':['firstName',_0x7f3b('0x6f')]})[_0x7f3b('0x22')](function(_0x4fc83f){if(!_[_0x7f3b('0x70')](_0x435c20)&&!_[_0x7f3b('0x70')](_0x4fc83f[_0x7f3b('0x71')])){_0x4528ff[_0x7f3b('0x72')]=_0x4fc83f[_0x7f3b('0x71')];if(!_['isNil'](_0x4fc83f[_0x7f3b('0x6f')])){_0x4528ff[_0x7f3b('0x72')]+='\x20'+_0x4fc83f[_0x7f3b('0x6f')];}}})[_0x7f3b('0x73')](function(){return db[_0x7f3b('0x74')][_0x7f3b('0x58')](_0x4528ff);});}})['then'](function(){return _0x435c20[_0x7f3b('0x1a')](0xcc)[_0x7f3b('0x75')]();})[_0x7f3b('0x53')](handleError(_0x435c20,null));};exports['getPreview']=function(_0x59a0a1,_0x1ff380,_0xd457c0){var _0xdef642=[];return db[_0x7f3b('0x6e')]['describe']()[_0x7f3b('0x22')](function(_0x131ef0){_0xdef642=_['keys'](_0x131ef0);return _0x59a0a1['user'][_0x7f3b('0x76')]({'where':{'type':_0x7f3b('0x77'),'dialActive':!![],'dialMethod':'preview'},'attributes':['id',_0x7f3b('0x78')],'raw':!![]});})[_0x7f3b('0x22')](function(_0x4f27b2){if(_0x4f27b2&&_0x4f27b2[_0x7f3b('0x56')]){return db[_0x7f3b('0x79')][_0x7f3b('0x7a')](function(_0x1d91fd){var _0x1173a7={'active':![],'recallme':![],'scheduledAt':{'$lte':moment()[_0x7f3b('0x69')](_0x7f3b('0x6a'))},'VoiceQueueId':{'$in':_[_0x7f3b('0x29')](_0x4f27b2,'id')},'$or':[{'UserId':null},{'UserId':_0x59a0a1[_0x7f3b('0x65')]['id']}]};var _0x246eed=[];if(_0x59a0a1[_0x7f3b('0x59')][_0x7f3b('0x7b')]&&_0x59a0a1[_0x7f3b('0x59')]['direction']===_0x7f3b('0x7c')){if(!_[_0x7f3b('0x7d')](_0x59a0a1[_0x7f3b('0x59')][_0x7f3b('0x7e')])){_0x1173a7['id']={'$in':_0x59a0a1[_0x7f3b('0x59')][_0x7f3b('0x7e')]};}_0x246eed=[[_0x7f3b('0x7f'),_0x7f3b('0x80')],[_0x7f3b('0x81'),_0x4f27b2[0x0][_0x7f3b('0x78')]===_0x7f3b('0x80')?_0x7f3b('0x82'):_0x7f3b('0x80')],db[_0x7f3b('0x79')][_0x7f3b('0x83')](_0x7f3b('0x84')),['id',_0x7f3b('0x82')]];}else{if(!_[_0x7f3b('0x7d')](_0x59a0a1['body']['hopperIds'])){_0x1173a7['id']={'$notIn':_0x59a0a1[_0x7f3b('0x59')]['hopperIds']};}_0x246eed=[['priority',_0x7f3b('0x82')],[_0x7f3b('0x81'),_0x4f27b2[0x0][_0x7f3b('0x78')]],db['sequelize']['literal'](_0x7f3b('0x85')),['id',_0x7f3b('0x80')]];}return db['CmHopper'][_0x7f3b('0x86')]({'attributes':['id',_0x7f3b('0x87')],'where':_0x1173a7,'order':_0x246eed,'transaction':_0x1d91fd,'lock':_0x1d91fd['LOCK']['UPDATE'],'include':[{'model':db[_0x7f3b('0x6e')],'as':'Contact','attributes':_0xdef642,'include':[{'model':db[_0x7f3b('0x88')],'as':'Company','attributes':['id',_0x7f3b('0x26')]}]},{'model':db['CmList'],'as':_0x7f3b('0x89'),'attributes':['id','name']},{'model':db['VoiceQueue'],'as':_0x7f3b('0x8a'),'attributes':['id',_0x7f3b('0x26'),_0x7f3b('0x8b')]}]})['then'](function(_0x478371){if(_0x478371){return _0x478371['update']({'UserId':_0x59a0a1[_0x7f3b('0x65')]['id']},{'transaction':_0x1d91fd});}});});}})['then'](handleEntityNotFound(_0x1ff380,null))['then'](respondWithResult(_0x1ff380,null))[_0x7f3b('0x53')](handleError(_0x1ff380,null));};exports['getOpenContacts']=function(_0x39596e,_0x4464e2,_0x37797f){return _0x39596e['user']['getVoiceQueues']({'where':{'type':_0x7f3b('0x77'),'dialActive':!![],'dialMethod':_0x7f3b('0x8c')},'attributes':['id'],'raw':!![]})[_0x7f3b('0x22')](function(_0x490623){if(_0x490623&&_0x490623[_0x7f3b('0x56')]){return db[_0x7f3b('0x2a')][_0x7f3b('0x1d')]({'where':{'active':![],'recallme':![],'scheduledAt':{'$lte':moment()[_0x7f3b('0x69')]('YYYY-MM-DD\x20HH:mm:ss')},'VoiceQueueId':{'$in':_['map'](_0x490623,'id')},'$or':[{'UserId':null},{'UserId':_0x39596e['user']['id']}]}});}return 0x0;})['then'](function(_0x304446){if(!_[_0x7f3b('0x70')](_0x304446)&&_[_0x7f3b('0x8d')](_0x304446)){return _0x4464e2['status'](0xc8)[_0x7f3b('0x8e')]({'contacts':_0x304446});}else{logger['error'](_0x7f3b('0x8f'),_0x7f3b('0x90'),0x194,'entity\x20not\x20found');_0x4464e2[_0x7f3b('0x19')](0x194);}})[_0x7f3b('0x53')](handleError(_0x4464e2,null));};
\ No newline at end of file