Built motion from commit (unavailable).|2.5.21
[motion2.git] / server / components / import / cm / csv2.js
index 23c6826..a3cf8b3 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0xccd4=['field','phone','from','.id\x20=\x20','where','join','cm_contacts.phone','cm_contacts.ListId','cm_contacts.createdAt','cm_contacts.updatedAt','insert','into','cm_hopper','fromQuery','scheduledat','ContactId','ListId','createdAt','updatedAt','recallme','fields','cm_contacts','cm_contacts.ListId\x20=\x20','.CmListId','.CmListId\x20=\x20?','cm_contacts.createdAt\x20=\x20?','cm_contacts.phone\x20NOT\x20IN\x20(?)','\x22onlyIfOpen\x22','toString','cm_hopper_black','\x20=\x20?','keys','CompanyId','ListId\x20=\x20?','deletedAt\x20IS\x20NULL','id\x20IN\x20?','MIN(id)','info','Received\x20SIGINT','error','message','exit','errors','push','spread','catch','stringify','send','start','socket_timestamp','root','server/files/tmp','header','writeFileSync','data','rows','hasOwnProperty','trim','replace','YYYY-MM-DD\x20HH:mm:ss','isValid','scheduledat\x20wrong\x20format\x20(YYYY-MM-DD\x20HH:mm:ss)','priority','isNaN','UserId','isNumber','includes','agent\x20not\x20exists','email','email\x20wrong\x20format','YYYY-MM-DD','dateOfBirth\x20wrong\x20format\x20(YYYY-MM-DD)','firstName','\x20not\x20specified','length','SystemRow','appendFileSync','contact:import:','abort','SystemError','step','duplicates','CREATE\x20TABLE\x20','\x20LIKE\x20cm_contacts;','isNil',',\x20scheduledAt\x20=\x20NOW()','DROP\x20TABLE\x20','voice_queues_has_cm_lists','voice_queues','voice_queues_has_cm_blacklists','VoiceQueueId','CampaignId','campaigns_has_cm_blacklists','finish','affectedRows','unlink','complete','argv','existsSync','file\x20doesn\x27t\x20exists','parse','binding\x20doesn\x27t\x20exists','binding','phone\x20is\x20mandatory','body\x20id\x20mandatory','map','SIGINT','uncaughtException','lodash','papaparse','util','bluebird','moment','squel','ioredis','../../../mysqldb','../../../config/environment','../../../config/logger','import','redis','defaults','socket.io-emitter','format','test','select'];(function(_0xa464c9,_0x7c86d8){var _0x3d73c4=function(_0x5c2056){while(--_0x5c2056){_0xa464c9['push'](_0xa464c9['shift']());}};_0x3d73c4(++_0x7c86d8);}(_0xccd4,0xe9));var _0x4ccd=function(_0x487b0c,_0x14ff74){_0x487b0c=_0x487b0c-0x0;var _0x1adbdc=_0xccd4[_0x487b0c];return _0x1adbdc;};'use strict';var fs=require('fs');var path=require('path');var _=require(_0x4ccd('0x0'));var Papa=require(_0x4ccd('0x1'));var util=require(_0x4ccd('0x2'));var BPromise=require(_0x4ccd('0x3'));var moment=require(_0x4ccd('0x4'));var squel=require(_0x4ccd('0x5'));var Redis=require(_0x4ccd('0x6'));var db=require(_0x4ccd('0x7'))['db'];var config=require(_0x4ccd('0x8'));var logger=require(_0x4ccd('0x9'))(_0x4ccd('0xa'));config[_0x4ccd('0xb')]=_[_0x4ccd('0xc')](config['redis'],{'host':'localhost','port':0x18eb});var socket=require(_0x4ccd('0xd'))(new Redis(config['redis']));var stats={'finish':![],'errors':[],'rows':0x0,'affectedRows':0x0};var results=[];var stopped=![];var NOW=moment()[_0x4ccd('0xe')]('YYYY-MM-DD\x20HH:mm:ss');function isEmail(_0x9ccf8){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))*$/[_0x4ccd('0xf')](_0x9ccf8);}function selectNotIn(_0x378711,_0x566d6a,_0x3ebd46,_0x42bd24,_0x2678a5){return squel[_0x4ccd('0x10')]()[_0x4ccd('0x11')](_0x4ccd('0x12'))[_0x4ccd('0x13')](_0x42bd24)['join'](_0x566d6a,null,_0x566d6a+_0x4ccd('0x14')+_0x42bd24+'.'+_0x3ebd46)[_0x4ccd('0x15')](_0x42bd24+'.'+_0x3ebd46+'\x20=\x20'+_0x378711+'.'+_0x3ebd46)['where'](_0x566d6a+'.dialCheckDuplicateType\x20IN\x20('+_0x2678a5[_0x4ccd('0x16')]()+')');}function insertCmHopper(_0x2b8c58,_0xa2e937,_0x3d467c,_0x42c649,_0x4e4c82){var _0x368665=[_0x4ccd('0x17'),'cm_contacts.scheduledat','cm_contacts.id',_0x4ccd('0x18'),_0xa2e937+'.'+_0x42c649,_0x4ccd('0x19'),_0x4ccd('0x1a'),'cm_contacts.priority','cm_contacts.UserId','\x22'+_0x4e4c82+'\x22'];return squel[_0x4ccd('0x1b')]()[_0x4ccd('0x1c')](_0x4ccd('0x1d'))[_0x4ccd('0x1e')]([_0x4ccd('0x12'),_0x4ccd('0x1f'),_0x4ccd('0x20'),_0x4ccd('0x21'),_0x42c649,_0x4ccd('0x22'),_0x4ccd('0x23'),'priority','UserId',_0x4ccd('0x24')],squel[_0x4ccd('0x10')]()[_0x4ccd('0x25')](_0x368665)[_0x4ccd('0x13')](_0xa2e937)[_0x4ccd('0x16')](_0x4ccd('0x26'),null,_0x4ccd('0x27')+_0xa2e937+_0x4ccd('0x28'))[_0x4ccd('0x16')](_0x3d467c,null,_0x3d467c+_0x4ccd('0x14')+_0xa2e937+'.'+_0x42c649)[_0x4ccd('0x15')](_0xa2e937+_0x4ccd('0x29'),_0x2b8c58)[_0x4ccd('0x15')](_0x4ccd('0x2a'),NOW)['where'](_0x4ccd('0x2b'),selectNotIn(_0xa2e937,_0x3d467c,_0x42c649,_0x4ccd('0x1d'),['\x22always\x22',_0x4ccd('0x2c')]))['where'](_0x4ccd('0x2b'),selectNotIn(_0xa2e937,_0x3d467c,_0x42c649,_0x4ccd('0x1d'),['\x22always\x22'])))[_0x4ccd('0x2d')]();}function insertCmHopperBlack(_0x29adba,_0x4a5aa6,_0x4c9308,_0x298fce){var _0x19365f=[_0x4ccd('0x17'),'cm_contacts.id','cm_contacts.ListId',_0x4a5aa6+'.'+_0x298fce,'cm_contacts.createdAt',_0x4ccd('0x1a')];return squel[_0x4ccd('0x1b')]()[_0x4ccd('0x1c')](_0x4ccd('0x2e'))['fromQuery'](['phone',_0x4ccd('0x20'),_0x4ccd('0x21'),_0x298fce,_0x4ccd('0x22'),_0x4ccd('0x23')],squel['select']()[_0x4ccd('0x25')](_0x19365f)[_0x4ccd('0x13')](_0x4a5aa6)[_0x4ccd('0x16')](_0x4ccd('0x26'),null,_0x4ccd('0x27')+_0x4a5aa6+_0x4ccd('0x28'))[_0x4ccd('0x16')](_0x4c9308,null,_0x4c9308+'.id\x20=\x20'+_0x4a5aa6+'.'+_0x298fce)['where'](_0x4a5aa6+_0x4ccd('0x29'),_0x29adba)[_0x4ccd('0x15')]('cm_contacts.createdAt\x20=\x20?',NOW)[_0x4ccd('0x15')](_0x4ccd('0x2b'),squel[_0x4ccd('0x10')]()['field']('phone')[_0x4ccd('0x13')]('cm_hopper_black')[_0x4ccd('0x15')]('ListId\x20=\x20?',_0x29adba)[_0x4ccd('0x15')](_0x298fce+_0x4ccd('0x2f'),_0x4a5aa6+'.'+_0x298fce)))[_0x4ccd('0x2d')]();}function insertCmContact(_0x115100,_0x49e5cc,_0x3aa2b9,_0x474ab5){var _0xf08ef6=_['concat'](_[_0x4ccd('0x30')](_0x474ab5),['ListId',_0x4ccd('0x31'),_0x4ccd('0x22'),'updatedAt']);return squel['insert']()['into'](_0x4ccd('0x26'))['fromQuery'](_0xf08ef6,squel['select']()['fields'](_0xf08ef6)[_0x4ccd('0x13')](_0x49e5cc)[_0x4ccd('0x15')]('('+_0x3aa2b9[_0x4ccd('0x16')](',')+')\x20NOT\x20IN\x20?',squel[_0x4ccd('0x10')]()[_0x4ccd('0x25')](_0x3aa2b9)[_0x4ccd('0x13')](_0x4ccd('0x26'))[_0x4ccd('0x15')](_0x4ccd('0x32'),_0x115100)[_0x4ccd('0x15')](_0x4ccd('0x33')))['where'](_0x4ccd('0x34'),squel[_0x4ccd('0x10')]()[_0x4ccd('0x11')](_0x4ccd('0x35'),'min_id')[_0x4ccd('0x13')](_0x49e5cc)['group'](_0x3aa2b9[_0x4ccd('0x16')](','))))[_0x4ccd('0x2d')]();}function handleStop(){logger[_0x4ccd('0x36')](_0x4ccd('0x37'));stopped=!![];}function handleUncaughtException(_0x1ff62e){logger[_0x4ccd('0x38')](_0x1ff62e[_0x4ccd('0x39')]);process[_0x4ccd('0x3a')](0x1);}function handleError(_0x38f423,_0x5c68ad){stats[_0x4ccd('0x3b')][_0x4ccd('0x3c')]({'name':_0x5c68ad['code'],'message':_0x5c68ad[_0x4ccd('0x39')],'row':_0x38f423});}function handleQuery(_0x2a8433){logger[_0x4ccd('0x36')](_0x2a8433);return db['sequelize']['query'](_0x2a8433)[_0x4ccd('0x3d')](function(_0x43d9f3){results[_0x4ccd('0x3c')](_0x43d9f3);})[_0x4ccd('0x3e')](function(_0x530eae){logger[_0x4ccd('0x38')](_0x530eae[_0x4ccd('0x39')]);});}function main(_0x2ae817,_0x3d7bc7,_0x4aa1e8,_0x4eb013){logger[_0x4ccd('0x36')]('main',_0x2ae817,JSON[_0x4ccd('0x3f')](_0x3d7bc7));process[_0x4ccd('0x40')](_0x4ccd('0x41'));var _0x3381f2=_0x3d7bc7['binding'];var _0x191820=_0x3d7bc7[_0x4ccd('0x42')];var _0x1c1895=path[_0x4ccd('0x16')](config[_0x4ccd('0x43')],_0x4ccd('0x44'),_0x191820+'.csv');var _0x1558cc=_[_0x4ccd('0x30')](_0x3381f2)['join']();logger[_0x4ccd('0x36')](_0x4ccd('0x45'),_0x1558cc);fs[_0x4ccd('0x46')](_0x1c1895,_0x1558cc+'\x0a');Papa['parse'](fs['createReadStream'](_0x2ae817),{'header':!![],'skipEmptyLines':!![],'step':function(_0x368deb,_0x33300b){try{for(var _0x1a07b5=0x0,_0xb0720a=[];_0x1a07b5<_0x368deb[_0x4ccd('0x47')]['length'];_0x1a07b5++){stats[_0x4ccd('0x48')]+=0x1;if(_0x368deb[_0x4ccd('0x3b')][_0x1a07b5]){handleError(_0x368deb[_0x4ccd('0x47')][_0x1a07b5],_0x368deb['errors'][_0x1a07b5]);}else{var _0x270606=[];for(var _0x1b06c1 in _0x3381f2){if(_0x3381f2[_0x4ccd('0x49')](_0x1b06c1)){if(_0x368deb['data'][_0x1a07b5][_0x3381f2[_0x1b06c1]]){var _0x266d26=_[_0x4ccd('0x4a')](_0x368deb[_0x4ccd('0x47')][_0x1a07b5][_0x3381f2[_0x1b06c1]][_0x4ccd('0x4b')](/"/g,'\x27'));switch(_0x1b06c1){case _0x4ccd('0x1f'):var _0x11d4a1=moment(_0x266d26,_0x4ccd('0x4c'),!![]);if(_0x11d4a1[_0x4ccd('0x4d')]()){_0xb0720a[_0x4ccd('0x3c')]('\x22'+_0x266d26+'\x22');}else{_0x270606['push'](_0x4ccd('0x4e'));}break;case _0x4ccd('0x4f'):var _0xe35b1d=parseInt(_0x266d26);_0x266d26=_[_0x4ccd('0x50')](_0xe35b1d)||_0xe35b1d<0x0||_0xe35b1d>0x4?_0x4eb013?0x3:0x2:_0xe35b1d;_0xb0720a[_0x4ccd('0x3c')]('\x22'+_0x266d26+'\x22');break;case _0x4ccd('0x51'):var _0x2706fb=parseInt(_0x266d26);if(_[_0x4ccd('0x52')](_0x2706fb)&&_[_0x4ccd('0x53')](_0x4aa1e8,_0x2706fb)){_0xb0720a['push']('\x22'+_0x2706fb+'\x22');}else{_0x270606[_0x4ccd('0x3c')](_0x4ccd('0x54'));}break;case _0x4ccd('0x55'):if(isEmail(_0x266d26)){_0xb0720a['push']('\x22'+_0x266d26+'\x22');}else{_0x270606['push'](_0x4ccd('0x56'));}break;case'dateOfBirth':var _0x52a209=moment(_0x266d26,_0x4ccd('0x57'),!![]);if(_0x52a209[_0x4ccd('0x4d')]()){_0xb0720a[_0x4ccd('0x3c')]('\x22'+_0x266d26+'\x22');}else{_0x270606[_0x4ccd('0x3c')](_0x4ccd('0x58'));}break;default:_0xb0720a[_0x4ccd('0x3c')]('\x22'+_0x266d26+'\x22');}}else{switch(_0x1b06c1){case _0x4ccd('0x59'):case _0x4ccd('0x12'):_0x270606['push'](_0x1b06c1+_0x4ccd('0x5a'));break;default:_0xb0720a[_0x4ccd('0x3c')]('\x22\x22');}}}}if(_0x270606[_0x4ccd('0x5b')]){handleError(_0x368deb[_0x4ccd('0x47')][_0x1a07b5],{'code':_0x4ccd('0x5c'),'message':_0x270606[_0x4ccd('0x16')]()});}else{fs[_0x4ccd('0x5d')](_0x1c1895,_0xb0720a['join']()+'\x0a');}_0xb0720a=[];}if(!(stats['rows']%0xc8)){socket['emit'](_0x4ccd('0x5e')+_0x191820,stats);stats[_0x4ccd('0x3b')]=[];}}if(stopped){logger[_0x4ccd('0x36')]('Abort\x20parser');_0x33300b[_0x4ccd('0x5f')]();}}catch(_0x35bb99){handleError(_0x368deb[_0x4ccd('0x47')][_0x1a07b5],{'code':_0x4ccd('0x60'),'message':_0x35bb99[_0x4ccd('0x39')]});logger['error'](_0x4ccd('0x61'),_0x35bb99['message']);}},'complete':function(){try{var _0x3a39fb=[];var _0x208134='cm_contacts';if(_0x3d7bc7[_0x4ccd('0x62')]&&_0x3d7bc7[_0x4ccd('0x62')][_0x4ccd('0x5b')]){_0x208134='cm_contacts_'+_0x191820;_0x3a39fb[_0x4ccd('0x3c')](_0x4ccd('0x63')+_0x208134+_0x4ccd('0x64'));}var _0x50d88b=util[_0x4ccd('0xe')]('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',_0x1c1895,_0x208134,_0x1558cc,_0x3d7bc7[_0x4ccd('0x21')],_0x3d7bc7[_0x4ccd('0x31')]||null,NOW,NOW);if(_[_0x4ccd('0x65')](_0x3381f2[_0x4ccd('0x1f')])){_0x50d88b+=_0x4ccd('0x66');}_0x3a39fb[_0x4ccd('0x3c')](_0x50d88b);if(_0x3d7bc7['duplicates']&&_0x3d7bc7[_0x4ccd('0x62')][_0x4ccd('0x5b')]){_0x3a39fb[_0x4ccd('0x3c')](insertCmContact(_0x3d7bc7[_0x4ccd('0x21')],_0x208134,_0x3d7bc7[_0x4ccd('0x62')],_0x3381f2));_0x3a39fb[_0x4ccd('0x3c')](_0x4ccd('0x67')+_0x208134+';');}_0x3a39fb['push'](insertCmHopper(_0x3d7bc7[_0x4ccd('0x21')],_0x4ccd('0x68'),_0x4ccd('0x69'),'VoiceQueueId',_0x4eb013));_0x3a39fb[_0x4ccd('0x3c')](insertCmHopperBlack(_0x3d7bc7[_0x4ccd('0x21')],_0x4ccd('0x6a'),_0x4ccd('0x69'),_0x4ccd('0x6b')));_0x3a39fb[_0x4ccd('0x3c')](insertCmHopper(_0x3d7bc7[_0x4ccd('0x21')],'campaigns_has_cm_lists','campaigns',_0x4ccd('0x6c'),_0x4eb013));_0x3a39fb[_0x4ccd('0x3c')](insertCmHopperBlack(_0x3d7bc7['ListId'],_0x4ccd('0x6d'),'campaigns',_0x4ccd('0x6c')));BPromise['each'](_0x3a39fb,handleQuery)['then'](function(_0x257b19){stats[_0x4ccd('0x6e')]=!![];stats[_0x4ccd('0x6f')]=_0x3d7bc7[_0x4ccd('0x62')]&&_0x3d7bc7['duplicates'][_0x4ccd('0x5b')]?results[0x2][_0x4ccd('0x6f')]:results[0x0][_0x4ccd('0x6f')];socket['emit'](_0x4ccd('0x5e')+_0x191820,stats);fs[_0x4ccd('0x70')](_0x2ae817);fs['unlink'](_0x1c1895);process[_0x4ccd('0x3a')](0x0);})[_0x4ccd('0x3e')](function(_0x258487){logger[_0x4ccd('0x38')](_0x258487[_0x4ccd('0x39')]);process[_0x4ccd('0x3a')](0x1);});}catch(_0x3390a1){logger[_0x4ccd('0x38')](_0x4ccd('0x71'),_0x3390a1['message']);process[_0x4ccd('0x3a')](0x1);}},'error':function(_0x927bcb,_0x37b7ff,_0x1ef1cb,_0x12b07c){throw new Error(_0x12b07c);}});}function validate(){if(process[_0x4ccd('0x72')]&&process[_0x4ccd('0x72')]['length']<0x4){throw new Error('arguments\x20<filename>\x20<parameters>\x20<agents>');}var _0x12ea49=path['join'](config['root'],_0x4ccd('0x44'),process[_0x4ccd('0x72')][0x2]);if(!fs[_0x4ccd('0x73')](_0x12ea49)){throw new Error(_0x4ccd('0x74'));}var _0xfbc250={};try{_0xfbc250=JSON[_0x4ccd('0x75')](process[_0x4ccd('0x72')][0x3]);if(!_0xfbc250['binding']){throw new Error(_0x4ccd('0x76'));}if(!_0xfbc250[_0x4ccd('0x77')][_0x4ccd('0x12')]){throw new Error(_0x4ccd('0x78'));}if(!_0xfbc250[_0x4ccd('0x77')]['firstName']){throw new Error('firstName\x20is\x20mandatory');}var _0x366b76=0x0;if(_0xfbc250[_0x4ccd('0x77')][_0x4ccd('0x51')]){_0x366b76=0x1;}if(!_0xfbc250[_0x4ccd('0x21')]){throw new Error('ListId\x20is\x20mandatory');}}catch(_0x4ea535){throw new Error(_0x4ccd('0x79'));}var _0x1f41f2=[];try{_0x1f41f2=_[_0x4ccd('0x7a')](JSON[_0x4ccd('0x75')](process[_0x4ccd('0x72')][0x4]),'id');}catch(_0x2c1a77){logger['info']('No\x20agent\x20available');}main(_0x12ea49,_0xfbc250,_0x1f41f2,_0x366b76);}validate();process['on'](_0x4ccd('0x7b'),handleStop);process['on'](_0x4ccd('0x7c'),handleUncaughtException);
\ No newline at end of file
+var _0x5015=['cm_contacts','field','ListId\x20=\x20?','\x20=\x20?','concat','keys','CompanyId','select','fields',')\x20NOT\x20IN\x20?','deletedAt\x20IS\x20NULL','MIN(id)','min_id','info','Received\x20SIGINT','error','message','exit','errors','sequelize','spread','push','catch','stringify','send','start','root','server/files/tmp','.csv','writeFileSync','parse','createReadStream','data','length','rows','hasOwnProperty','trim','replace','isValid','scheduledat\x20wrong\x20format\x20(YYYY-MM-DD\x20HH:mm:ss)','priority','isNaN','isNumber','includes','agent\x20not\x20exists','email','email\x20wrong\x20format','dateOfBirth','YYYY-MM-DD','firstName','\x20not\x20specified','appendFileSync','emit','contact:import:','step','duplicates','cm_contacts_','format','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','isNil','DROP\x20TABLE\x20','voice_queues','voice_queues_has_cm_blacklists','VoiceQueueId','campaigns_has_cm_lists','campaigns','CampaignId','campaigns_has_cm_blacklists','each','finish','affectedRows','unlink','complete','argv','existsSync','file\x20doesn\x27t\x20exists','binding','binding\x20doesn\x27t\x20exists','phone\x20is\x20mandatory','firstName\x20is\x20mandatory','body\x20id\x20mandatory','map','No\x20agent\x20available','SIGINT','path','papaparse','bluebird','squel','ioredis','../../../mysqldb','../../../config/environment','../../../config/logger','redis','defaults','socket.io-emitter','YYYY-MM-DD\x20HH:mm:ss','test','phone','from','join','where','\x20=\x20','.dialCheckDuplicateType\x20IN\x20(','cm_contacts.scheduledat','cm_contacts.ListId','cm_contacts.updatedAt','cm_contacts.priority','insert','into','cm_hopper','scheduledat','ContactId','ListId','createdAt','updatedAt','UserId','recallme','cm_contacts.ListId\x20=\x20','.CmListId','.id\x20=\x20','.CmListId\x20=\x20?','cm_contacts.createdAt\x20=\x20?','cm_contacts.phone\x20NOT\x20IN\x20(?)','\x22always\x22','\x22onlyIfOpen\x22','toString','cm_contacts.phone','cm_contacts.id','cm_contacts.createdAt','cm_hopper_black','fromQuery'];(function(_0x2cfc62,_0x400529){var _0x4226d1=function(_0x4ecea2){while(--_0x4ecea2){_0x2cfc62['push'](_0x2cfc62['shift']());}};_0x4226d1(++_0x400529);}(_0x5015,0x1dd));var _0x5501=function(_0x28757e,_0x36da7f){_0x28757e=_0x28757e-0x0;var _0x37dcaa=_0x5015[_0x28757e];return _0x37dcaa;};'use strict';var fs=require('fs');var path=require(_0x5501('0x0'));var _=require('lodash');var Papa=require(_0x5501('0x1'));var util=require('util');var BPromise=require(_0x5501('0x2'));var moment=require('moment');var squel=require(_0x5501('0x3'));var Redis=require(_0x5501('0x4'));var db=require(_0x5501('0x5'))['db'];var config=require(_0x5501('0x6'));var logger=require(_0x5501('0x7'))('import');config[_0x5501('0x8')]=_[_0x5501('0x9')](config[_0x5501('0x8')],{'host':'localhost','port':0x18eb});var socket=require(_0x5501('0xa'))(new Redis(config['redis']));var stats={'finish':![],'errors':[],'rows':0x0,'affectedRows':0x0};var results=[];var stopped=![];var NOW=moment()['format'](_0x5501('0xb'));function isEmail(_0x22fe56){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))*$/[_0x5501('0xc')](_0x22fe56);}function selectNotIn(_0x51ebcb,_0x20d5bf,_0x55012c,_0x2b4490,_0x2b2861){return squel['select']()['field'](_0x5501('0xd'))[_0x5501('0xe')](_0x2b4490)[_0x5501('0xf')](_0x20d5bf,null,_0x20d5bf+'.id\x20=\x20'+_0x2b4490+'.'+_0x55012c)[_0x5501('0x10')](_0x2b4490+'.'+_0x55012c+_0x5501('0x11')+_0x51ebcb+'.'+_0x55012c)[_0x5501('0x10')](_0x20d5bf+_0x5501('0x12')+_0x2b2861[_0x5501('0xf')]()+')');}function insertCmHopper(_0x79e80e,_0x9693c6,_0x3e4294,_0x2334d9,_0x4c6690){var _0x5cd4a7=['cm_contacts.phone',_0x5501('0x13'),'cm_contacts.id',_0x5501('0x14'),_0x9693c6+'.'+_0x2334d9,'cm_contacts.createdAt',_0x5501('0x15'),_0x5501('0x16'),'cm_contacts.UserId','\x22'+_0x4c6690+'\x22'];return squel[_0x5501('0x17')]()[_0x5501('0x18')](_0x5501('0x19'))['fromQuery']([_0x5501('0xd'),_0x5501('0x1a'),_0x5501('0x1b'),_0x5501('0x1c'),_0x2334d9,_0x5501('0x1d'),_0x5501('0x1e'),'priority',_0x5501('0x1f'),_0x5501('0x20')],squel['select']()['fields'](_0x5cd4a7)[_0x5501('0xe')](_0x9693c6)[_0x5501('0xf')]('cm_contacts',null,_0x5501('0x21')+_0x9693c6+_0x5501('0x22'))[_0x5501('0xf')](_0x3e4294,null,_0x3e4294+_0x5501('0x23')+_0x9693c6+'.'+_0x2334d9)[_0x5501('0x10')](_0x9693c6+_0x5501('0x24'),_0x79e80e)[_0x5501('0x10')](_0x5501('0x25'),NOW)[_0x5501('0x10')](_0x5501('0x26'),selectNotIn(_0x9693c6,_0x3e4294,_0x2334d9,_0x5501('0x19'),[_0x5501('0x27'),_0x5501('0x28')]))['where'](_0x5501('0x26'),selectNotIn(_0x9693c6,_0x3e4294,_0x2334d9,'cm_hopper',[_0x5501('0x27')])))[_0x5501('0x29')]();}function insertCmHopperBlack(_0x160d81,_0x1f61ff,_0x30e8a6,_0x170d88){var _0x14853b=[_0x5501('0x2a'),_0x5501('0x2b'),_0x5501('0x14'),_0x1f61ff+'.'+_0x170d88,_0x5501('0x2c'),_0x5501('0x15')];return squel[_0x5501('0x17')]()[_0x5501('0x18')](_0x5501('0x2d'))[_0x5501('0x2e')]([_0x5501('0xd'),_0x5501('0x1b'),_0x5501('0x1c'),_0x170d88,'createdAt',_0x5501('0x1e')],squel['select']()['fields'](_0x14853b)[_0x5501('0xe')](_0x1f61ff)[_0x5501('0xf')](_0x5501('0x2f'),null,_0x5501('0x21')+_0x1f61ff+_0x5501('0x22'))['join'](_0x30e8a6,null,_0x30e8a6+_0x5501('0x23')+_0x1f61ff+'.'+_0x170d88)[_0x5501('0x10')](_0x1f61ff+_0x5501('0x24'),_0x160d81)[_0x5501('0x10')](_0x5501('0x25'),NOW)[_0x5501('0x10')](_0x5501('0x26'),squel['select']()[_0x5501('0x30')](_0x5501('0xd'))[_0x5501('0xe')](_0x5501('0x2d'))['where'](_0x5501('0x31'),_0x160d81)['where'](_0x170d88+_0x5501('0x32'),_0x1f61ff+'.'+_0x170d88)))['toString']();}function insertCmContact(_0x169bff,_0x3b0134,_0x34de87,_0x95b48c){var _0x326de4=_[_0x5501('0x33')](_[_0x5501('0x34')](_0x95b48c),['ListId',_0x5501('0x35'),_0x5501('0x1d'),_0x5501('0x1e')]);return squel[_0x5501('0x17')]()['into'](_0x5501('0x2f'))[_0x5501('0x2e')](_0x326de4,squel[_0x5501('0x36')]()[_0x5501('0x37')](_0x326de4)[_0x5501('0xe')](_0x3b0134)[_0x5501('0x10')]('('+_0x34de87['join'](',')+_0x5501('0x38'),squel[_0x5501('0x36')]()[_0x5501('0x37')](_0x34de87)[_0x5501('0xe')](_0x5501('0x2f'))[_0x5501('0x10')](_0x5501('0x31'),_0x169bff)[_0x5501('0x10')](_0x5501('0x39')))[_0x5501('0x10')]('id\x20IN\x20?',squel[_0x5501('0x36')]()[_0x5501('0x30')](_0x5501('0x3a'),_0x5501('0x3b'))['from'](_0x3b0134)['group'](_0x34de87[_0x5501('0xf')](','))))[_0x5501('0x29')]();}function handleStop(){logger[_0x5501('0x3c')](_0x5501('0x3d'));stopped=!![];}function handleUncaughtException(_0x42e327){logger[_0x5501('0x3e')](_0x42e327[_0x5501('0x3f')]);process[_0x5501('0x40')](0x1);}function handleError(_0x3730ed,_0x502f80){stats[_0x5501('0x41')]['push']({'name':_0x502f80['code'],'message':_0x502f80[_0x5501('0x3f')],'row':_0x3730ed});}function handleQuery(_0x44f7bd){logger['info'](_0x44f7bd);return db[_0x5501('0x42')]['query'](_0x44f7bd)[_0x5501('0x43')](function(_0x57da02){results[_0x5501('0x44')](_0x57da02);})[_0x5501('0x45')](function(_0xb0eeec){logger[_0x5501('0x3e')](_0xb0eeec[_0x5501('0x3f')]);});}function main(_0x3c9acc,_0x2e81da,_0x2e79d3,_0x14e3e8){logger[_0x5501('0x3c')]('main',_0x3c9acc,JSON[_0x5501('0x46')](_0x2e81da));process[_0x5501('0x47')](_0x5501('0x48'));var _0x98e7b5=_0x2e81da['binding'];var _0x2e900a=_0x2e81da['socket_timestamp'];var _0x19559c=path[_0x5501('0xf')](config[_0x5501('0x49')],_0x5501('0x4a'),_0x2e900a+_0x5501('0x4b'));var _0x578726=_[_0x5501('0x34')](_0x98e7b5)[_0x5501('0xf')]();logger[_0x5501('0x3c')]('header',_0x578726);fs[_0x5501('0x4c')](_0x19559c,_0x578726+'\x0a');Papa[_0x5501('0x4d')](fs[_0x5501('0x4e')](_0x3c9acc),{'header':!![],'skipEmptyLines':!![],'step':function(_0x37c517,_0x59bb50){try{for(var _0x49e46f=0x0,_0x127b16=[];_0x49e46f<_0x37c517[_0x5501('0x4f')][_0x5501('0x50')];_0x49e46f++){stats[_0x5501('0x51')]+=0x1;if(_0x37c517[_0x5501('0x41')][_0x49e46f]){handleError(_0x37c517[_0x5501('0x4f')][_0x49e46f],_0x37c517[_0x5501('0x41')][_0x49e46f]);}else{var _0x40bedb=[];for(var _0x34be23 in _0x98e7b5){if(_0x98e7b5[_0x5501('0x52')](_0x34be23)){if(_0x37c517['data'][_0x49e46f][_0x98e7b5[_0x34be23]]){var _0x57b837=_[_0x5501('0x53')](_0x37c517[_0x5501('0x4f')][_0x49e46f][_0x98e7b5[_0x34be23]][_0x5501('0x54')](/"/g,'\x27'));switch(_0x34be23){case _0x5501('0x1a'):var _0x4af112=moment(_0x57b837,_0x5501('0xb'),!![]);if(_0x4af112[_0x5501('0x55')]()){_0x127b16[_0x5501('0x44')]('\x22'+_0x57b837+'\x22');}else{_0x40bedb[_0x5501('0x44')](_0x5501('0x56'));}break;case _0x5501('0x57'):var _0x23ea05=parseInt(_0x57b837);_0x57b837=_[_0x5501('0x58')](_0x23ea05)||_0x23ea05<0x0||_0x23ea05>0x4?_0x14e3e8?0x3:0x2:_0x23ea05;_0x127b16[_0x5501('0x44')]('\x22'+_0x57b837+'\x22');break;case _0x5501('0x1f'):var _0x475a98=parseInt(_0x57b837);if(_[_0x5501('0x59')](_0x475a98)&&_[_0x5501('0x5a')](_0x2e79d3,_0x475a98)){_0x127b16[_0x5501('0x44')]('\x22'+_0x475a98+'\x22');}else{_0x40bedb['push'](_0x5501('0x5b'));}break;case _0x5501('0x5c'):if(isEmail(_0x57b837)){_0x127b16['push']('\x22'+_0x57b837+'\x22');}else{_0x40bedb[_0x5501('0x44')](_0x5501('0x5d'));}break;case _0x5501('0x5e'):var _0x45e81d=moment(_0x57b837,_0x5501('0x5f'),!![]);if(_0x45e81d[_0x5501('0x55')]()){_0x127b16[_0x5501('0x44')]('\x22'+_0x57b837+'\x22');}else{_0x40bedb[_0x5501('0x44')]('dateOfBirth\x20wrong\x20format\x20(YYYY-MM-DD)');}break;default:_0x127b16['push']('\x22'+_0x57b837+'\x22');}}else{switch(_0x34be23){case _0x5501('0x60'):case _0x5501('0xd'):_0x40bedb['push'](_0x34be23+_0x5501('0x61'));break;default:_0x127b16[_0x5501('0x44')]('\x22\x22');}}}}if(_0x40bedb['length']){handleError(_0x37c517['data'][_0x49e46f],{'code':'SystemRow','message':_0x40bedb[_0x5501('0xf')]()});}else{fs[_0x5501('0x62')](_0x19559c,_0x127b16[_0x5501('0xf')]()+'\x0a');}_0x127b16=[];}if(!(stats['rows']%0xc8)){socket[_0x5501('0x63')](_0x5501('0x64')+_0x2e900a,stats);stats[_0x5501('0x41')]=[];}}if(stopped){logger['info']('Abort\x20parser');_0x59bb50['abort']();}}catch(_0xa64e18){handleError(_0x37c517[_0x5501('0x4f')][_0x49e46f],{'code':'SystemError','message':_0xa64e18[_0x5501('0x3f')]});logger[_0x5501('0x3e')](_0x5501('0x65'),_0xa64e18[_0x5501('0x3f')]);}},'complete':function(){try{var _0x4b54ab=[];var _0x2fdf22='cm_contacts';if(_0x2e81da[_0x5501('0x66')]&&_0x2e81da[_0x5501('0x66')]['length']){_0x2fdf22=_0x5501('0x67')+_0x2e900a;_0x4b54ab[_0x5501('0x44')]('CREATE\x20TABLE\x20'+_0x2fdf22+'\x20LIKE\x20cm_contacts;');}var _0x4b228b=util[_0x5501('0x68')](_0x5501('0x69'),_0x19559c,_0x2fdf22,_0x578726,_0x2e81da[_0x5501('0x1c')],_0x2e81da['CompanyId']||null,NOW,NOW);if(_[_0x5501('0x6a')](_0x98e7b5[_0x5501('0x1a')])){_0x4b228b+=',\x20scheduledAt\x20=\x20NOW()';}_0x4b54ab['push'](_0x4b228b);if(_0x2e81da['duplicates']&&_0x2e81da['duplicates'][_0x5501('0x50')]){_0x4b54ab[_0x5501('0x44')](insertCmContact(_0x2e81da[_0x5501('0x1c')],_0x2fdf22,_0x2e81da['duplicates'],_0x98e7b5));_0x4b54ab[_0x5501('0x44')](_0x5501('0x6b')+_0x2fdf22+';');}_0x4b54ab['push'](insertCmHopper(_0x2e81da[_0x5501('0x1c')],'voice_queues_has_cm_lists',_0x5501('0x6c'),'VoiceQueueId',_0x14e3e8));_0x4b54ab[_0x5501('0x44')](insertCmHopperBlack(_0x2e81da['ListId'],_0x5501('0x6d'),_0x5501('0x6c'),_0x5501('0x6e')));_0x4b54ab[_0x5501('0x44')](insertCmHopper(_0x2e81da[_0x5501('0x1c')],_0x5501('0x6f'),_0x5501('0x70'),_0x5501('0x71'),_0x14e3e8));_0x4b54ab[_0x5501('0x44')](insertCmHopperBlack(_0x2e81da[_0x5501('0x1c')],_0x5501('0x72'),'campaigns',_0x5501('0x71')));BPromise[_0x5501('0x73')](_0x4b54ab,handleQuery)['then'](function(_0x595b31){stats[_0x5501('0x74')]=!![];stats[_0x5501('0x75')]=_0x2e81da[_0x5501('0x66')]&&_0x2e81da[_0x5501('0x66')][_0x5501('0x50')]?results[0x2][_0x5501('0x75')]:results[0x0][_0x5501('0x75')];socket[_0x5501('0x63')]('contact:import:'+_0x2e900a,stats);fs['unlink'](_0x3c9acc);fs[_0x5501('0x76')](_0x19559c);process[_0x5501('0x40')](0x0);})[_0x5501('0x45')](function(_0x54d4d3){logger[_0x5501('0x3e')](_0x54d4d3[_0x5501('0x3f')]);process[_0x5501('0x40')](0x1);});}catch(_0x118844){logger[_0x5501('0x3e')](_0x5501('0x77'),_0x118844['message']);process['exit'](0x1);}},'error':function(_0x47ee21,_0x27adba,_0x518b94,_0xb78676){throw new Error(_0xb78676);}});}function validate(){if(process['argv']&&process[_0x5501('0x78')][_0x5501('0x50')]<0x4){throw new Error('arguments\x20<filename>\x20<parameters>\x20<agents>');}var _0x102843=path[_0x5501('0xf')](config['root'],_0x5501('0x4a'),process[_0x5501('0x78')][0x2]);if(!fs[_0x5501('0x79')](_0x102843)){throw new Error(_0x5501('0x7a'));}var _0x1d95a3={};try{_0x1d95a3=JSON[_0x5501('0x4d')](process['argv'][0x3]);if(!_0x1d95a3[_0x5501('0x7b')]){throw new Error(_0x5501('0x7c'));}if(!_0x1d95a3[_0x5501('0x7b')][_0x5501('0xd')]){throw new Error(_0x5501('0x7d'));}if(!_0x1d95a3[_0x5501('0x7b')][_0x5501('0x60')]){throw new Error(_0x5501('0x7e'));}var _0x32d7a3=0x0;if(_0x1d95a3[_0x5501('0x7b')][_0x5501('0x1f')]){_0x32d7a3=0x1;}if(!_0x1d95a3[_0x5501('0x1c')]){throw new Error('ListId\x20is\x20mandatory');}}catch(_0x2be775){throw new Error(_0x5501('0x7f'));}var _0x131217=[];try{_0x131217=_[_0x5501('0x80')](JSON[_0x5501('0x4d')](process[_0x5501('0x78')][0x4]),'id');}catch(_0x5f305f){logger[_0x5501('0x3c')](_0x5501('0x81'));}main(_0x102843,_0x1d95a3,_0x131217,_0x32d7a3);}validate();process['on'](_0x5501('0x82'),handleStop);process['on']('uncaughtException',handleUncaughtException);
\ No newline at end of file