Built motion from commit (unavailable).|2.5.31
[motion2.git] / server / components / import / cm / csv2.js
index 7c0a224..8e6b83e 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x191e=['.dialCheckDuplicateType\x20IN\x20(','cm_contacts.phone','cm_contacts.scheduledat','cm_contacts.id','cm_contacts.ListId','cm_contacts.createdAt','cm_contacts.UserId','insert','into','cm_hopper','fromQuery','scheduledat','ContactId','createdAt','updatedAt','priority','UserId','recallme','select','fields','cm_contacts','.CmListId','.CmListId\x20=\x20?','\x22onlyIfOpen\x22','cm_contacts.phone\x20NOT\x20IN\x20(?)','toString','cm_contacts.updatedAt','cm_hopper_black','ListId','cm_contacts.ListId\x20=\x20','ListId\x20=\x20?','\x20=\x20?','concat','keys','CompanyId',')\x20NOT\x20IN\x20?','deletedAt\x20IS\x20NULL','id\x20IN\x20?','MIN(id)','min_id','group','info','Received\x20SIGINT','error','errors','push','message','sequelize','query','catch','main','send','socket_timestamp','server/files/tmp','.csv','header','writeFileSync','parse','createReadStream','rows','data','hasOwnProperty','isValid','scheduledat\x20wrong\x20format\x20(YYYY-MM-DD\x20HH:mm:ss)','isNaN','isNumber','agent\x20not\x20exists','email\x20wrong\x20format','dateOfBirth','YYYY-MM-DD','dateOfBirth\x20wrong\x20format\x20(YYYY-MM-DD)','\x20not\x20specified','length','appendFileSync','emit','abort','SystemError','step','duplicates','LOAD\x20DATA\x20LOCAL\x20INFILE\x20\x27%s\x27\x20INTO\x20TABLE\x20%s\x20CHARACTER\x20SET\x20UTF8\x20FIELDS\x20TERMINATED\x20BY\x20\x27,\x27\x20ENCLOSED\x20BY\x20\x27\x22\x27\x20LINES\x20TERMINATED\x20BY\x20\x27\x0a\x27\x20IGNORE\x201\x20ROWS\x20(%s)\x20SET\x20id\x20=\x20NULL,\x20ListId\x20=\x20%s,\x20CompanyId\x20=\x20%s,\x20createdAt\x20=\x20\x27%s\x27,\x20updatedAt\x20=\x20\x27%s\x27',',\x20scheduledAt\x20=\x20NOW()','DROP\x20TABLE\x20','voice_queues_has_cm_lists','voice_queues','VoiceQueueId','campaigns_has_cm_lists','campaigns','CampaignId','then','finish','affectedRows','contact:import:','unlink','exit','argv','arguments\x20<filename>\x20<parameters>\x20<agents>','root','existsSync','file\x20doesn\x27t\x20exists','binding\x20doesn\x27t\x20exists','binding','phone\x20is\x20mandatory','firstName','firstName\x20is\x20mandatory','ListId\x20is\x20mandatory','map','uncaughtException','bluebird','moment','squel','ioredis','../../../mysqldb','../../../config/environment','../../../config/logger','defaults','socket.io-emitter','redis','format','YYYY-MM-DD\x20HH:mm:ss','test','field','phone','from','join','.id\x20=\x20','where','\x20=\x20'];(function(_0x1db341,_0x4b939f){var _0x586b89=function(_0x271fba){while(--_0x271fba){_0x1db341['push'](_0x1db341['shift']());}};_0x586b89(++_0x4b939f);}(_0x191e,0x6b));var _0xe191=function(_0x32888a,_0x4687cc){_0x32888a=_0x32888a-0x0;var _0x31ee3f=_0x191e[_0x32888a];return _0x31ee3f;};'use strict';var fs=require('fs');var path=require('path');var _=require('lodash');var Papa=require('papaparse');var util=require('util');var BPromise=require(_0xe191('0x0'));var moment=require(_0xe191('0x1'));var squel=require(_0xe191('0x2'));var Redis=require(_0xe191('0x3'));var db=require(_0xe191('0x4'))['db'];var config=require(_0xe191('0x5'));var logger=require(_0xe191('0x6'))('import');config['redis']=_[_0xe191('0x7')](config['redis'],{'host':'localhost','port':0x18eb});var socket=require(_0xe191('0x8'))(new Redis(config[_0xe191('0x9')]));var stats={'finish':![],'errors':[],'rows':0x0,'affectedRows':0x0};var results=[];var stopped=![];var NOW=moment()[_0xe191('0xa')](_0xe191('0xb'));function isEmail(_0x192110){return/^([^\x00-\x20\x22\x28\x29\x2c\x2e\x3a-\x3c\x3e\x40\x5b-\x5d\x7f-\xff]+|\x22([^\x0d\x22\x5c\x80-\xff]|\x5c[\x00-\x7f])*\x22)(\x2e([^\x00-\x20\x22\x28\x29\x2c\x2e\x3a-\x3c\x3e\x40\x5b-\x5d\x7f-\xff]+|\x22([^\x0d\x22\x5c\x80-\xff]|\x5c[\x00-\x7f])*\x22))*\x40([^\x00-\x20\x22\x28\x29\x2c\x2e\x3a-\x3c\x3e\x40\x5b-\x5d\x7f-\xff]+|\x5b([^\x0d\x5b-\x5d\x80-\xff]|\x5c[\x00-\x7f])*\x5d)(\x2e([^\x00-\x20\x22\x28\x29\x2c\x2e\x3a-\x3c\x3e\x40\x5b-\x5d\x7f-\xff]+|\x5b([^\x0d\x5b-\x5d\x80-\xff]|\x5c[\x00-\x7f])*\x5d))*$/[_0xe191('0xc')](_0x192110);}function selectNotIn(_0x1d7c2c,_0x185680,_0x1ac726,_0x3868fa,_0x5c9232){return squel['select']()[_0xe191('0xd')](_0xe191('0xe'))[_0xe191('0xf')](_0x3868fa)[_0xe191('0x10')](_0x185680,null,_0x185680+_0xe191('0x11')+_0x3868fa+'.'+_0x1ac726)[_0xe191('0x12')](_0x3868fa+'.'+_0x1ac726+_0xe191('0x13')+_0x1d7c2c+'.'+_0x1ac726)['where'](_0x185680+_0xe191('0x14')+_0x5c9232[_0xe191('0x10')]()+')');}function insertCmHopper(_0x2df7bc,_0x321a1e,_0xf18daf,_0x1b9c4e,_0x51810e){var _0x231402=[_0xe191('0x15'),_0xe191('0x16'),_0xe191('0x17'),_0xe191('0x18'),_0x321a1e+'.'+_0x1b9c4e,_0xe191('0x19'),'cm_contacts.updatedAt','cm_contacts.priority',_0xe191('0x1a'),'\x22'+_0x51810e+'\x22'];return squel[_0xe191('0x1b')]()[_0xe191('0x1c')](_0xe191('0x1d'))[_0xe191('0x1e')]([_0xe191('0xe'),_0xe191('0x1f'),_0xe191('0x20'),'ListId',_0x1b9c4e,_0xe191('0x21'),_0xe191('0x22'),_0xe191('0x23'),_0xe191('0x24'),_0xe191('0x25')],squel[_0xe191('0x26')]()[_0xe191('0x27')](_0x231402)[_0xe191('0xf')](_0x321a1e)[_0xe191('0x10')](_0xe191('0x28'),null,'cm_contacts.ListId\x20=\x20'+_0x321a1e+_0xe191('0x29'))['join'](_0xf18daf,null,_0xf18daf+_0xe191('0x11')+_0x321a1e+'.'+_0x1b9c4e)[_0xe191('0x12')](_0x321a1e+_0xe191('0x2a'),_0x2df7bc)['where']('cm_contacts.createdAt\x20=\x20?',NOW)[_0xe191('0x12')]('cm_contacts.phone\x20NOT\x20IN\x20(?)',selectNotIn(_0x321a1e,_0xf18daf,_0x1b9c4e,_0xe191('0x1d'),['\x22always\x22',_0xe191('0x2b')]))[_0xe191('0x12')](_0xe191('0x2c'),selectNotIn(_0x321a1e,_0xf18daf,_0x1b9c4e,_0xe191('0x1d'),['\x22always\x22'])))[_0xe191('0x2d')]();}function insertCmHopperBlack(_0xbc6910,_0x22540e,_0xf0519c,_0x3494c0){var _0x270a34=['cm_contacts.phone','cm_contacts.id',_0xe191('0x18'),_0x22540e+'.'+_0x3494c0,'cm_contacts.createdAt',_0xe191('0x2e')];return squel[_0xe191('0x1b')]()[_0xe191('0x1c')](_0xe191('0x2f'))[_0xe191('0x1e')](['phone',_0xe191('0x20'),_0xe191('0x30'),_0x3494c0,_0xe191('0x21'),_0xe191('0x22')],squel[_0xe191('0x26')]()[_0xe191('0x27')](_0x270a34)['from'](_0x22540e)[_0xe191('0x10')]('cm_contacts',null,_0xe191('0x31')+_0x22540e+_0xe191('0x29'))['join'](_0xf0519c,null,_0xf0519c+_0xe191('0x11')+_0x22540e+'.'+_0x3494c0)[_0xe191('0x12')](_0x22540e+_0xe191('0x2a'),_0xbc6910)[_0xe191('0x12')]('cm_contacts.createdAt\x20=\x20?',NOW)[_0xe191('0x12')](_0xe191('0x2c'),squel['select']()[_0xe191('0xd')](_0xe191('0xe'))[_0xe191('0xf')](_0xe191('0x2f'))[_0xe191('0x12')](_0xe191('0x32'),_0xbc6910)[_0xe191('0x12')](_0x3494c0+_0xe191('0x33'),_0x22540e+'.'+_0x3494c0)))['toString']();}function insertCmContact(_0x44fa30,_0xa300bf,_0x214070,_0x4d7f4b){var _0x309c90=_[_0xe191('0x34')](_[_0xe191('0x35')](_0x4d7f4b),['ListId',_0xe191('0x36'),'createdAt','updatedAt']);return squel[_0xe191('0x1b')]()['into']('cm_contacts')[_0xe191('0x1e')](_0x309c90,squel[_0xe191('0x26')]()[_0xe191('0x27')](_0x309c90)['from'](_0xa300bf)['where']('('+_0x214070[_0xe191('0x10')](',')+_0xe191('0x37'),squel['select']()[_0xe191('0x27')](_0x214070)['from'](_0xe191('0x28'))[_0xe191('0x12')](_0xe191('0x32'),_0x44fa30)[_0xe191('0x12')](_0xe191('0x38')))[_0xe191('0x12')](_0xe191('0x39'),squel[_0xe191('0x26')]()['field'](_0xe191('0x3a'),_0xe191('0x3b'))[_0xe191('0xf')](_0xa300bf)[_0xe191('0x3c')](_0x214070[_0xe191('0x10')](','))))[_0xe191('0x2d')]();}function handleStop(){logger[_0xe191('0x3d')](_0xe191('0x3e'));stopped=!![];}function handleUncaughtException(_0x5c461d){logger[_0xe191('0x3f')](_0x5c461d['message']);process['exit'](0x1);}function handleError(_0x4bef51,_0x130384){stats[_0xe191('0x40')][_0xe191('0x41')]({'name':_0x130384['code'],'message':_0x130384[_0xe191('0x42')],'row':_0x4bef51});}function handleQuery(_0x61906b){logger[_0xe191('0x3d')](_0x61906b);return db[_0xe191('0x43')][_0xe191('0x44')](_0x61906b)['spread'](function(_0x35f3b4){results[_0xe191('0x41')](_0x35f3b4);})[_0xe191('0x45')](function(_0x378bbc){logger[_0xe191('0x3f')](_0x378bbc[_0xe191('0x42')]);});}function main(_0xcbf2dd,_0x2a5396,_0x33d360,_0x596c33){logger[_0xe191('0x3d')](_0xe191('0x46'),_0xcbf2dd,JSON['stringify'](_0x2a5396));process[_0xe191('0x47')]('start');var _0x440133=_0x2a5396['binding'];var _0x560e85=_0x2a5396[_0xe191('0x48')];var _0x529165=path['join'](config['root'],_0xe191('0x49'),_0x560e85+_0xe191('0x4a'));var _0x48d453=_[_0xe191('0x35')](_0x440133)[_0xe191('0x10')]();logger[_0xe191('0x3d')](_0xe191('0x4b'),_0x48d453);fs[_0xe191('0x4c')](_0x529165,_0x48d453+'\x0a');Papa[_0xe191('0x4d')](fs[_0xe191('0x4e')](_0xcbf2dd),{'header':!![],'skipEmptyLines':!![],'step':function(_0x3dce11,_0x5a41a3){try{for(var _0x4b370c=0x0,_0x5e48bb=[];_0x4b370c<_0x3dce11['data']['length'];_0x4b370c++){stats[_0xe191('0x4f')]+=0x1;if(_0x3dce11[_0xe191('0x40')][_0x4b370c]){handleError(_0x3dce11[_0xe191('0x50')][_0x4b370c],_0x3dce11[_0xe191('0x40')][_0x4b370c]);}else{var _0xf08ef6=[];for(var _0x1556fb in _0x440133){if(_0x440133[_0xe191('0x51')](_0x1556fb)){if(_0x3dce11[_0xe191('0x50')][_0x4b370c][_0x440133[_0x1556fb]]){var _0x503cf8=_['trim'](_0x3dce11[_0xe191('0x50')][_0x4b370c][_0x440133[_0x1556fb]]['replace'](/"/g,'\x27'));switch(_0x1556fb){case _0xe191('0x1f'):var _0x3c758c=moment(_0x503cf8,'YYYY-MM-DD\x20HH:mm:ss',!![]);if(_0x3c758c[_0xe191('0x52')]()){_0x5e48bb['push']('\x22'+_0x503cf8+'\x22');}else{_0xf08ef6[_0xe191('0x41')](_0xe191('0x53'));}break;case _0xe191('0x23'):var _0x4d1ee1=parseInt(_0x503cf8);_0x503cf8=_[_0xe191('0x54')](_0x4d1ee1)||_0x4d1ee1<0x0||_0x4d1ee1>0x4?_0x596c33?0x3:0x2:_0x4d1ee1;_0x5e48bb[_0xe191('0x41')]('\x22'+_0x503cf8+'\x22');break;case _0xe191('0x24'):var _0x4ab96d=parseInt(_0x503cf8);if(_[_0xe191('0x55')](_0x4ab96d)&&_['includes'](_0x33d360,_0x4ab96d)){_0x5e48bb[_0xe191('0x41')]('\x22'+_0x4ab96d+'\x22');}else{_0xf08ef6['push'](_0xe191('0x56'));}break;case'email':if(isEmail(_0x503cf8)){_0x5e48bb['push']('\x22'+_0x503cf8+'\x22');}else{_0xf08ef6[_0xe191('0x41')](_0xe191('0x57'));}break;case _0xe191('0x58'):var _0x389c04=moment(_0x503cf8,_0xe191('0x59'),!![]);if(_0x389c04[_0xe191('0x52')]()){_0x5e48bb['push']('\x22'+_0x503cf8+'\x22');}else{_0xf08ef6[_0xe191('0x41')](_0xe191('0x5a'));}break;default:_0x5e48bb[_0xe191('0x41')]('\x22'+_0x503cf8+'\x22');}}else{switch(_0x1556fb){case'firstName':case'phone':_0xf08ef6['push'](_0x1556fb+_0xe191('0x5b'));break;default:_0x5e48bb[_0xe191('0x41')]('\x22\x22');}}}}if(_0xf08ef6[_0xe191('0x5c')]){handleError(_0x3dce11[_0xe191('0x50')][_0x4b370c],{'code':'SystemRow','message':_0xf08ef6['join']()});}else{fs[_0xe191('0x5d')](_0x529165,_0x5e48bb[_0xe191('0x10')]()+'\x0a');}_0x5e48bb=[];}if(!(stats[_0xe191('0x4f')]%0xc8)){socket[_0xe191('0x5e')]('contact:import:'+_0x560e85,stats);stats[_0xe191('0x40')]=[];}}if(stopped){logger[_0xe191('0x3d')]('Abort\x20parser');_0x5a41a3[_0xe191('0x5f')]();}}catch(_0xc9cea8){handleError(_0x3dce11['data'][_0x4b370c],{'code':_0xe191('0x60'),'message':_0xc9cea8[_0xe191('0x42')]});logger[_0xe191('0x3f')](_0xe191('0x61'),_0xc9cea8[_0xe191('0x42')]);}},'complete':function(){try{var _0x4625f6=[];var _0x46d345='cm_contacts';if(_0x2a5396[_0xe191('0x62')]&&_0x2a5396[_0xe191('0x62')]['length']){_0x46d345='cm_contacts_'+_0x560e85;_0x4625f6[_0xe191('0x41')]('CREATE\x20TABLE\x20'+_0x46d345+'\x20LIKE\x20cm_contacts;');}var _0x2cb831=util[_0xe191('0xa')](_0xe191('0x63'),_0x529165,_0x46d345,_0x48d453,_0x2a5396[_0xe191('0x30')],_0x2a5396[_0xe191('0x36')]||null,NOW,NOW);if(_['isNil'](_0x440133[_0xe191('0x1f')])){_0x2cb831+=_0xe191('0x64');}_0x4625f6['push'](_0x2cb831);if(_0x2a5396[_0xe191('0x62')]&&_0x2a5396[_0xe191('0x62')][_0xe191('0x5c')]){_0x4625f6[_0xe191('0x41')](insertCmContact(_0x2a5396[_0xe191('0x30')],_0x46d345,_0x2a5396['duplicates'],_0x440133));_0x4625f6['push'](_0xe191('0x65')+_0x46d345+';');}_0x4625f6[_0xe191('0x41')](insertCmHopper(_0x2a5396['ListId'],_0xe191('0x66'),_0xe191('0x67'),_0xe191('0x68'),_0x596c33));_0x4625f6[_0xe191('0x41')](insertCmHopperBlack(_0x2a5396[_0xe191('0x30')],'voice_queues_has_cm_blacklists',_0xe191('0x67'),'VoiceQueueId'));_0x4625f6[_0xe191('0x41')](insertCmHopper(_0x2a5396[_0xe191('0x30')],_0xe191('0x69'),_0xe191('0x6a'),'CampaignId',_0x596c33));_0x4625f6[_0xe191('0x41')](insertCmHopperBlack(_0x2a5396[_0xe191('0x30')],'campaigns_has_cm_blacklists','campaigns',_0xe191('0x6b')));BPromise['each'](_0x4625f6,handleQuery)[_0xe191('0x6c')](function(_0x2328b2){stats[_0xe191('0x6d')]=!![];stats[_0xe191('0x6e')]=_0x2a5396[_0xe191('0x62')]&&_0x2a5396[_0xe191('0x62')][_0xe191('0x5c')]?results[0x2][_0xe191('0x6e')]:results[0x0][_0xe191('0x6e')];socket['emit'](_0xe191('0x6f')+_0x560e85,stats);fs[_0xe191('0x70')](_0xcbf2dd);fs[_0xe191('0x70')](_0x529165);process[_0xe191('0x71')](0x0);})[_0xe191('0x45')](function(_0x2e62b2){logger[_0xe191('0x3f')](_0x2e62b2[_0xe191('0x42')]);process[_0xe191('0x71')](0x1);});}catch(_0x36f5c4){logger[_0xe191('0x3f')]('complete',_0x36f5c4[_0xe191('0x42')]);process[_0xe191('0x71')](0x1);}},'error':function(_0x332c25,_0x3c0f1e,_0x55b559,_0x2531b5){throw new Error(_0x2531b5);}});}function validate(){if(process[_0xe191('0x72')]&&process[_0xe191('0x72')][_0xe191('0x5c')]<0x4){throw new Error(_0xe191('0x73'));}var _0x49a7e1=path[_0xe191('0x10')](config[_0xe191('0x74')],'server/files/tmp',process[_0xe191('0x72')][0x2]);if(!fs[_0xe191('0x75')](_0x49a7e1)){throw new Error(_0xe191('0x76'));}var _0x9df162={};try{_0x9df162=JSON[_0xe191('0x4d')](process[_0xe191('0x72')][0x3]);if(!_0x9df162['binding']){throw new Error(_0xe191('0x77'));}if(!_0x9df162[_0xe191('0x78')][_0xe191('0xe')]){throw new Error(_0xe191('0x79'));}if(!_0x9df162[_0xe191('0x78')][_0xe191('0x7a')]){throw new Error(_0xe191('0x7b'));}var _0x18547b=0x0;if(_0x9df162[_0xe191('0x78')][_0xe191('0x24')]){_0x18547b=0x1;}if(!_0x9df162[_0xe191('0x30')]){throw new Error(_0xe191('0x7c'));}}catch(_0x51a046){throw new Error('body\x20id\x20mandatory');}var _0x2f8cb3=[];try{_0x2f8cb3=_[_0xe191('0x7d')](JSON[_0xe191('0x4d')](process[_0xe191('0x72')][0x4]),'id');}catch(_0x42c065){logger['info']('No\x20agent\x20available');}main(_0x49a7e1,_0x9df162,_0x2f8cb3,_0x18547b);}validate();process['on']('SIGINT',handleStop);process['on'](_0xe191('0x7e'),handleUncaughtException);
\ No newline at end of file
+var _0xdd58=['\x20=\x20','.dialCheckDuplicateType\x20IN\x20(','cm_contacts.scheduledat','cm_contacts.id','cm_contacts.ListId','cm_contacts.createdAt','cm_contacts.updatedAt','cm_contacts.priority','insert','cm_hopper','fromQuery','scheduledat','ContactId','ListId','createdAt','updatedAt','priority','UserId','recallme','cm_contacts.ListId\x20=\x20','.CmListId\x20=\x20?','cm_contacts.phone\x20NOT\x20IN\x20(?)','\x22always\x22','toString','into','fields','cm_contacts','.CmListId','cm_contacts.createdAt\x20=\x20?','cm_hopper_black','keys','deletedAt\x20IS\x20NULL','id\x20IN\x20?','group','info','Received\x20SIGINT','error','message','push','code','sequelize','catch','main','start','binding','root','server/files/tmp','.csv','header','writeFileSync','parse','createReadStream','data','length','errors','trim','replace','isValid','scheduledat\x20wrong\x20format\x20(YYYY-MM-DD\x20HH:mm:ss)','isNumber','agent\x20not\x20exists','email','email\x20wrong\x20format','YYYY-MM-DD','dateOfBirth\x20wrong\x20format\x20(YYYY-MM-DD)','firstName','SystemRow','appendFileSync','rows','emit','contact:import:','Abort\x20parser','abort','SystemError','step','duplicates','CREATE\x20TABLE\x20','CompanyId',',\x20scheduledAt\x20=\x20NOW()','DROP\x20TABLE\x20','voice_queues_has_cm_lists','voice_queues','VoiceQueueId','campaigns_has_cm_lists','CampaignId','campaigns','then','finish','affectedRows','unlink','exit','complete','arguments\x20<filename>\x20<parameters>\x20<agents>','file\x20doesn\x27t\x20exists','argv','firstName\x20is\x20mandatory','body\x20id\x20mandatory','map','No\x20agent\x20available','SIGINT','path','lodash','papaparse','util','moment','ioredis','../../../config/environment','../../../config/logger','import','redis','defaults','localhost','socket.io-emitter','format','YYYY-MM-DD\x20HH:mm:ss','test','select','field','phone','from','join','.id\x20=\x20','where'];(function(_0x1b3102,_0x3bb84c){var _0xfdf224=function(_0x5b9290){while(--_0x5b9290){_0x1b3102['push'](_0x1b3102['shift']());}};_0xfdf224(++_0x3bb84c);}(_0xdd58,0x64));var _0x8dd5=function(_0x55eedf,_0x343e2d){_0x55eedf=_0x55eedf-0x0;var _0x27c2a0=_0xdd58[_0x55eedf];return _0x27c2a0;};'use strict';var fs=require('fs');var path=require(_0x8dd5('0x0'));var _=require(_0x8dd5('0x1'));var Papa=require(_0x8dd5('0x2'));var util=require(_0x8dd5('0x3'));var BPromise=require('bluebird');var moment=require(_0x8dd5('0x4'));var squel=require('squel');var Redis=require(_0x8dd5('0x5'));var db=require('../../../mysqldb')['db'];var config=require(_0x8dd5('0x6'));var logger=require(_0x8dd5('0x7'))(_0x8dd5('0x8'));config[_0x8dd5('0x9')]=_[_0x8dd5('0xa')](config[_0x8dd5('0x9')],{'host':_0x8dd5('0xb'),'port':0x18eb});var socket=require(_0x8dd5('0xc'))(new Redis(config[_0x8dd5('0x9')]));var stats={'finish':![],'errors':[],'rows':0x0,'affectedRows':0x0};var results=[];var stopped=![];var NOW=moment()[_0x8dd5('0xd')](_0x8dd5('0xe'));function isEmail(_0x27286d){return/^([^\x00-\x20\x22\x28\x29\x2c\x2e\x3a-\x3c\x3e\x40\x5b-\x5d\x7f-\xff]+|\x22([^\x0d\x22\x5c\x80-\xff]|\x5c[\x00-\x7f])*\x22)(\x2e([^\x00-\x20\x22\x28\x29\x2c\x2e\x3a-\x3c\x3e\x40\x5b-\x5d\x7f-\xff]+|\x22([^\x0d\x22\x5c\x80-\xff]|\x5c[\x00-\x7f])*\x22))*\x40([^\x00-\x20\x22\x28\x29\x2c\x2e\x3a-\x3c\x3e\x40\x5b-\x5d\x7f-\xff]+|\x5b([^\x0d\x5b-\x5d\x80-\xff]|\x5c[\x00-\x7f])*\x5d)(\x2e([^\x00-\x20\x22\x28\x29\x2c\x2e\x3a-\x3c\x3e\x40\x5b-\x5d\x7f-\xff]+|\x5b([^\x0d\x5b-\x5d\x80-\xff]|\x5c[\x00-\x7f])*\x5d))*$/[_0x8dd5('0xf')](_0x27286d);}function selectNotIn(_0x5b36bb,_0x33cb97,_0x2fc671,_0x1b0c65,_0x12b027){return squel[_0x8dd5('0x10')]()[_0x8dd5('0x11')](_0x8dd5('0x12'))[_0x8dd5('0x13')](_0x1b0c65)[_0x8dd5('0x14')](_0x33cb97,null,_0x33cb97+_0x8dd5('0x15')+_0x1b0c65+'.'+_0x2fc671)[_0x8dd5('0x16')](_0x1b0c65+'.'+_0x2fc671+_0x8dd5('0x17')+_0x5b36bb+'.'+_0x2fc671)[_0x8dd5('0x16')](_0x33cb97+_0x8dd5('0x18')+_0x12b027[_0x8dd5('0x14')]()+')');}function insertCmHopper(_0x87d747,_0x9b497,_0x44b187,_0x1c8418,_0x13cae0){var _0x1950b1=['cm_contacts.phone',_0x8dd5('0x19'),_0x8dd5('0x1a'),_0x8dd5('0x1b'),_0x9b497+'.'+_0x1c8418,_0x8dd5('0x1c'),_0x8dd5('0x1d'),_0x8dd5('0x1e'),'cm_contacts.UserId','\x22'+_0x13cae0+'\x22'];return squel[_0x8dd5('0x1f')]()['into'](_0x8dd5('0x20'))[_0x8dd5('0x21')]([_0x8dd5('0x12'),_0x8dd5('0x22'),_0x8dd5('0x23'),_0x8dd5('0x24'),_0x1c8418,_0x8dd5('0x25'),_0x8dd5('0x26'),_0x8dd5('0x27'),_0x8dd5('0x28'),_0x8dd5('0x29')],squel[_0x8dd5('0x10')]()['fields'](_0x1950b1)[_0x8dd5('0x13')](_0x9b497)['join']('cm_contacts',null,_0x8dd5('0x2a')+_0x9b497+'.CmListId')[_0x8dd5('0x14')](_0x44b187,null,_0x44b187+_0x8dd5('0x15')+_0x9b497+'.'+_0x1c8418)['where'](_0x9b497+_0x8dd5('0x2b'),_0x87d747)[_0x8dd5('0x16')]('cm_contacts.createdAt\x20=\x20?',NOW)[_0x8dd5('0x16')](_0x8dd5('0x2c'),selectNotIn(_0x9b497,_0x44b187,_0x1c8418,_0x8dd5('0x20'),[_0x8dd5('0x2d'),'\x22onlyIfOpen\x22']))[_0x8dd5('0x16')](_0x8dd5('0x2c'),selectNotIn(_0x9b497,_0x44b187,_0x1c8418,_0x8dd5('0x20'),[_0x8dd5('0x2d')])))[_0x8dd5('0x2e')]();}function insertCmHopperBlack(_0xde1f25,_0x19048f,_0x3557ae,_0x5f32e4){var _0x2cca03=['cm_contacts.phone',_0x8dd5('0x1a'),'cm_contacts.ListId',_0x19048f+'.'+_0x5f32e4,_0x8dd5('0x1c'),_0x8dd5('0x1d')];return squel[_0x8dd5('0x1f')]()[_0x8dd5('0x2f')]('cm_hopper_black')[_0x8dd5('0x21')](['phone',_0x8dd5('0x23'),'ListId',_0x5f32e4,_0x8dd5('0x25'),_0x8dd5('0x26')],squel[_0x8dd5('0x10')]()[_0x8dd5('0x30')](_0x2cca03)[_0x8dd5('0x13')](_0x19048f)[_0x8dd5('0x14')](_0x8dd5('0x31'),null,'cm_contacts.ListId\x20=\x20'+_0x19048f+_0x8dd5('0x32'))[_0x8dd5('0x14')](_0x3557ae,null,_0x3557ae+'.id\x20=\x20'+_0x19048f+'.'+_0x5f32e4)['where'](_0x19048f+'.CmListId\x20=\x20?',_0xde1f25)['where'](_0x8dd5('0x33'),NOW)[_0x8dd5('0x16')](_0x8dd5('0x2c'),squel['select']()[_0x8dd5('0x11')](_0x8dd5('0x12'))[_0x8dd5('0x13')](_0x8dd5('0x34'))[_0x8dd5('0x16')]('ListId\x20=\x20?',_0xde1f25)['where'](_0x5f32e4+'\x20=\x20?',_0x19048f+'.'+_0x5f32e4)))[_0x8dd5('0x2e')]();}function insertCmContact(_0x580323,_0x136296,_0xfb8ad5,_0x2cdea5){var _0x34e012=_['concat'](_[_0x8dd5('0x35')](_0x2cdea5),[_0x8dd5('0x24'),'CompanyId','createdAt','updatedAt']);return squel[_0x8dd5('0x1f')]()[_0x8dd5('0x2f')](_0x8dd5('0x31'))[_0x8dd5('0x21')](_0x34e012,squel[_0x8dd5('0x10')]()[_0x8dd5('0x30')](_0x34e012)[_0x8dd5('0x13')](_0x136296)['where']('('+_0xfb8ad5[_0x8dd5('0x14')](',')+')\x20NOT\x20IN\x20?',squel[_0x8dd5('0x10')]()[_0x8dd5('0x30')](_0xfb8ad5)[_0x8dd5('0x13')](_0x8dd5('0x31'))[_0x8dd5('0x16')]('ListId\x20=\x20?',_0x580323)[_0x8dd5('0x16')](_0x8dd5('0x36')))[_0x8dd5('0x16')](_0x8dd5('0x37'),squel[_0x8dd5('0x10')]()['field']('MIN(id)','min_id')[_0x8dd5('0x13')](_0x136296)[_0x8dd5('0x38')](_0xfb8ad5[_0x8dd5('0x14')](','))))[_0x8dd5('0x2e')]();}function handleStop(){logger[_0x8dd5('0x39')](_0x8dd5('0x3a'));stopped=!![];}function handleUncaughtException(_0x570fcd){logger[_0x8dd5('0x3b')](_0x570fcd[_0x8dd5('0x3c')]);process['exit'](0x1);}function handleError(_0x179420,_0x390c50){stats['errors'][_0x8dd5('0x3d')]({'name':_0x390c50[_0x8dd5('0x3e')],'message':_0x390c50[_0x8dd5('0x3c')],'row':_0x179420});}function handleQuery(_0x3b103a){logger['info'](_0x3b103a);return db[_0x8dd5('0x3f')]['query'](_0x3b103a)['spread'](function(_0x587ab9){results['push'](_0x587ab9);})[_0x8dd5('0x40')](function(_0x22fc1b){logger[_0x8dd5('0x3b')](_0x22fc1b['message']);});}function main(_0x5e5ebd,_0x15c103,_0x4a41ea,_0x58de78){logger[_0x8dd5('0x39')](_0x8dd5('0x41'),_0x5e5ebd,JSON['stringify'](_0x15c103));process['send'](_0x8dd5('0x42'));var _0x508ec1=_0x15c103[_0x8dd5('0x43')];var _0x1b9f86=_0x15c103['socket_timestamp'];var _0x2f34be=path[_0x8dd5('0x14')](config[_0x8dd5('0x44')],_0x8dd5('0x45'),_0x1b9f86+_0x8dd5('0x46'));var _0x13b970=_[_0x8dd5('0x35')](_0x508ec1)[_0x8dd5('0x14')]();logger[_0x8dd5('0x39')](_0x8dd5('0x47'),_0x13b970);fs[_0x8dd5('0x48')](_0x2f34be,_0x13b970+'\x0a');Papa[_0x8dd5('0x49')](fs[_0x8dd5('0x4a')](_0x5e5ebd),{'header':!![],'skipEmptyLines':!![],'step':function(_0x545ea1,_0x19964c){try{for(var _0x102a17=0x0,_0x3fdce1=[];_0x102a17<_0x545ea1[_0x8dd5('0x4b')][_0x8dd5('0x4c')];_0x102a17++){stats['rows']+=0x1;if(_0x545ea1['errors'][_0x102a17]){handleError(_0x545ea1[_0x8dd5('0x4b')][_0x102a17],_0x545ea1[_0x8dd5('0x4d')][_0x102a17]);}else{var _0x4fc98a=[];for(var _0x3b100d in _0x508ec1){if(_0x508ec1['hasOwnProperty'](_0x3b100d)){if(_0x545ea1['data'][_0x102a17][_0x508ec1[_0x3b100d]]){var _0x5b1028=_[_0x8dd5('0x4e')](_0x545ea1[_0x8dd5('0x4b')][_0x102a17][_0x508ec1[_0x3b100d]][_0x8dd5('0x4f')](/"/g,'\x27'));switch(_0x3b100d){case _0x8dd5('0x22'):var _0x4b02ae=moment(_0x5b1028,_0x8dd5('0xe'),!![]);if(_0x4b02ae[_0x8dd5('0x50')]()){_0x3fdce1['push']('\x22'+_0x5b1028+'\x22');}else{_0x4fc98a[_0x8dd5('0x3d')](_0x8dd5('0x51'));}break;case _0x8dd5('0x27'):var _0x485f04=parseInt(_0x5b1028);_0x5b1028=_['isNaN'](_0x485f04)||_0x485f04<0x0||_0x485f04>0x4?_0x58de78?0x3:0x2:_0x485f04;_0x3fdce1[_0x8dd5('0x3d')]('\x22'+_0x5b1028+'\x22');break;case _0x8dd5('0x28'):var _0x4fce45=parseInt(_0x5b1028);if(_[_0x8dd5('0x52')](_0x4fce45)&&_['includes'](_0x4a41ea,_0x4fce45)){_0x3fdce1[_0x8dd5('0x3d')]('\x22'+_0x4fce45+'\x22');}else{_0x4fc98a['push'](_0x8dd5('0x53'));}break;case _0x8dd5('0x54'):if(isEmail(_0x5b1028)){_0x3fdce1['push']('\x22'+_0x5b1028+'\x22');}else{_0x4fc98a['push'](_0x8dd5('0x55'));}break;case'dateOfBirth':var _0xe4a6c=moment(_0x5b1028,_0x8dd5('0x56'),!![]);if(_0xe4a6c[_0x8dd5('0x50')]()){_0x3fdce1['push']('\x22'+_0x5b1028+'\x22');}else{_0x4fc98a[_0x8dd5('0x3d')](_0x8dd5('0x57'));}break;default:_0x3fdce1[_0x8dd5('0x3d')]('\x22'+_0x5b1028+'\x22');}}else{switch(_0x3b100d){case _0x8dd5('0x58'):case _0x8dd5('0x12'):_0x4fc98a[_0x8dd5('0x3d')](_0x3b100d+'\x20not\x20specified');break;default:_0x3fdce1[_0x8dd5('0x3d')]('\x22\x22');}}}}if(_0x4fc98a['length']){handleError(_0x545ea1[_0x8dd5('0x4b')][_0x102a17],{'code':_0x8dd5('0x59'),'message':_0x4fc98a[_0x8dd5('0x14')]()});}else{fs[_0x8dd5('0x5a')](_0x2f34be,_0x3fdce1[_0x8dd5('0x14')]()+'\x0a');}_0x3fdce1=[];}if(!(stats[_0x8dd5('0x5b')]%0xc8)){socket[_0x8dd5('0x5c')](_0x8dd5('0x5d')+_0x1b9f86,stats);stats[_0x8dd5('0x4d')]=[];}}if(stopped){logger[_0x8dd5('0x39')](_0x8dd5('0x5e'));_0x19964c[_0x8dd5('0x5f')]();}}catch(_0x29c23b){handleError(_0x545ea1[_0x8dd5('0x4b')][_0x102a17],{'code':_0x8dd5('0x60'),'message':_0x29c23b[_0x8dd5('0x3c')]});logger[_0x8dd5('0x3b')](_0x8dd5('0x61'),_0x29c23b[_0x8dd5('0x3c')]);}},'complete':function(){try{var _0xd1a9d=[];var _0x44b0e6=_0x8dd5('0x31');if(_0x15c103[_0x8dd5('0x62')]&&_0x15c103[_0x8dd5('0x62')]['length']){_0x44b0e6='cm_contacts_'+_0x1b9f86;_0xd1a9d[_0x8dd5('0x3d')](_0x8dd5('0x63')+_0x44b0e6+'\x20LIKE\x20cm_contacts;');}var _0x21d887=util[_0x8dd5('0xd')]('LOAD\x20DATA\x20LOCAL\x20INFILE\x20\x27%s\x27\x20INTO\x20TABLE\x20%s\x20CHARACTER\x20SET\x20UTF8\x20FIELDS\x20TERMINATED\x20BY\x20\x27,\x27\x20ENCLOSED\x20BY\x20\x27\x22\x27\x20LINES\x20TERMINATED\x20BY\x20\x27\x0a\x27\x20IGNORE\x201\x20ROWS\x20(%s)\x20SET\x20id\x20=\x20NULL,\x20ListId\x20=\x20%s,\x20CompanyId\x20=\x20%s,\x20createdAt\x20=\x20\x27%s\x27,\x20updatedAt\x20=\x20\x27%s\x27',_0x2f34be,_0x44b0e6,_0x13b970,_0x15c103['ListId'],_0x15c103[_0x8dd5('0x64')]||null,NOW,NOW);if(_['isNil'](_0x508ec1[_0x8dd5('0x22')])){_0x21d887+=_0x8dd5('0x65');}_0xd1a9d[_0x8dd5('0x3d')](_0x21d887);if(_0x15c103[_0x8dd5('0x62')]&&_0x15c103[_0x8dd5('0x62')][_0x8dd5('0x4c')]){_0xd1a9d[_0x8dd5('0x3d')](insertCmContact(_0x15c103[_0x8dd5('0x24')],_0x44b0e6,_0x15c103[_0x8dd5('0x62')],_0x508ec1));_0xd1a9d['push'](_0x8dd5('0x66')+_0x44b0e6+';');}_0xd1a9d[_0x8dd5('0x3d')](insertCmHopper(_0x15c103[_0x8dd5('0x24')],_0x8dd5('0x67'),_0x8dd5('0x68'),_0x8dd5('0x69'),_0x58de78));_0xd1a9d['push'](insertCmHopperBlack(_0x15c103['ListId'],'voice_queues_has_cm_blacklists',_0x8dd5('0x68'),_0x8dd5('0x69')));_0xd1a9d[_0x8dd5('0x3d')](insertCmHopper(_0x15c103[_0x8dd5('0x24')],_0x8dd5('0x6a'),'campaigns',_0x8dd5('0x6b'),_0x58de78));_0xd1a9d[_0x8dd5('0x3d')](insertCmHopperBlack(_0x15c103[_0x8dd5('0x24')],'campaigns_has_cm_blacklists',_0x8dd5('0x6c'),_0x8dd5('0x6b')));BPromise['each'](_0xd1a9d,handleQuery)[_0x8dd5('0x6d')](function(_0x1d4403){stats[_0x8dd5('0x6e')]=!![];stats[_0x8dd5('0x6f')]=_0x15c103['duplicates']&&_0x15c103[_0x8dd5('0x62')][_0x8dd5('0x4c')]?results[0x2][_0x8dd5('0x6f')]:results[0x0]['affectedRows'];socket[_0x8dd5('0x5c')](_0x8dd5('0x5d')+_0x1b9f86,stats);fs[_0x8dd5('0x70')](_0x5e5ebd);fs['unlink'](_0x2f34be);process[_0x8dd5('0x71')](0x0);})[_0x8dd5('0x40')](function(_0x5813d5){logger['error'](_0x5813d5[_0x8dd5('0x3c')]);process[_0x8dd5('0x71')](0x1);});}catch(_0x2480f5){logger[_0x8dd5('0x3b')](_0x8dd5('0x72'),_0x2480f5[_0x8dd5('0x3c')]);process[_0x8dd5('0x71')](0x1);}},'error':function(_0x20a220,_0x53171f,_0x8a02ac,_0x165528){throw new Error(_0x165528);}});}function validate(){if(process['argv']&&process['argv'][_0x8dd5('0x4c')]<0x4){throw new Error(_0x8dd5('0x73'));}var _0x16f56f=path[_0x8dd5('0x14')](config[_0x8dd5('0x44')],_0x8dd5('0x45'),process['argv'][0x2]);if(!fs['existsSync'](_0x16f56f)){throw new Error(_0x8dd5('0x74'));}var _0x790421={};try{_0x790421=JSON[_0x8dd5('0x49')](process[_0x8dd5('0x75')][0x3]);if(!_0x790421['binding']){throw new Error('binding\x20doesn\x27t\x20exists');}if(!_0x790421[_0x8dd5('0x43')]['phone']){throw new Error('phone\x20is\x20mandatory');}if(!_0x790421[_0x8dd5('0x43')]['firstName']){throw new Error(_0x8dd5('0x76'));}var _0x15e8e3=0x0;if(_0x790421['binding']['UserId']){_0x15e8e3=0x1;}if(!_0x790421[_0x8dd5('0x24')]){throw new Error('ListId\x20is\x20mandatory');}}catch(_0x26dda7){throw new Error(_0x8dd5('0x77'));}var _0x3bd130=[];try{_0x3bd130=_[_0x8dd5('0x78')](JSON['parse'](process[_0x8dd5('0x75')][0x4]),'id');}catch(_0x65f228){logger[_0x8dd5('0x39')](_0x8dd5('0x79'));}main(_0x16f56f,_0x790421,_0x3bd130,_0x15e8e3);}validate();process['on'](_0x8dd5('0x7a'),handleStop);process['on']('uncaughtException',handleUncaughtException);
\ No newline at end of file