Built motion from commit (unavailable).|2.4.5
[motion2.git] / server / components / import / cm / csv2.js
index b1077f0..c9252d6 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x0d23=['hasOwnProperty','trim','replace','isValid','isNaN','isNumber','agent\x20not\x20exists','dateOfBirth','firstName','length','appendFileSync','emit','contact:import:','Abort\x20parser','SystemError','step','duplicates','cm_contacts_','CREATE\x20TABLE\x20','\x20LIKE\x20cm_contacts;','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',',\x20scheduledAt\x20=\x20NOW()','DROP\x20TABLE\x20','voice_queues_has_cm_lists','voice_queues','VoiceQueueId','campaigns','CampaignId','campaigns_has_cm_blacklists','each','then','affectedRows','unlink','complete','argv','arguments\x20<filename>\x20<parameters>\x20<agents>','existsSync','file\x20doesn\x27t\x20exists','binding','phone\x20is\x20mandatory','firstName\x20is\x20mandatory','ListId\x20is\x20mandatory','body\x20id\x20mandatory','map','No\x20agent\x20available','SIGINT','uncaughtException','path','lodash','papaparse','util','bluebird','moment','squel','ioredis','../../../config/environment','../../../config/logger','import','redis','defaults','localhost','format','YYYY-MM-DD\x20HH:mm:ss','test','select','field','phone','.id\x20=\x20','where','\x20=\x20','.dialCheckDuplicateType\x20IN\x20(','join','cm_contacts.phone','cm_contacts.scheduledat','cm_contacts.ListId','cm_contacts.createdAt','cm_contacts.updatedAt','cm_contacts.priority','cm_contacts.UserId','into','cm_hopper','scheduledat','ListId','updatedAt','priority','UserId','recallme','fields','from','cm_contacts','cm_contacts.ListId\x20=\x20','.CmListId','.CmListId\x20=\x20?','\x22onlyIfOpen\x22','\x22always\x22','toString','cm_contacts.id','insert','cm_hopper_black','fromQuery','cm_contacts.createdAt\x20=\x20?','cm_contacts.phone\x20NOT\x20IN\x20(?)','\x20=\x20?','concat','CompanyId','createdAt',')\x20NOT\x20IN\x20?','ListId\x20=\x20?','id\x20IN\x20?','MIN(id)','min_id','info','Received\x20SIGINT','error','message','exit','errors','push','code','sequelize','query','catch','main','stringify','send','start','socket_timestamp','root','server/files/tmp','.csv','keys','writeFileSync','parse','createReadStream','rows','data'];(function(_0x1bb812,_0x23eacc){var _0x372adb=function(_0x5ad456){while(--_0x5ad456){_0x1bb812['push'](_0x1bb812['shift']());}};_0x372adb(++_0x23eacc);}(_0x0d23,0x142));var _0x30d2=function(_0x22c6bd,_0x11ef22){_0x22c6bd=_0x22c6bd-0x0;var _0x470565=_0x0d23[_0x22c6bd];return _0x470565;};'use strict';var fs=require('fs');var path=require(_0x30d2('0x0'));var _=require(_0x30d2('0x1'));var Papa=require(_0x30d2('0x2'));var util=require(_0x30d2('0x3'));var BPromise=require(_0x30d2('0x4'));var moment=require(_0x30d2('0x5'));var squel=require(_0x30d2('0x6'));var Redis=require(_0x30d2('0x7'));var db=require('../../../mysqldb')['db'];var config=require(_0x30d2('0x8'));var logger=require(_0x30d2('0x9'))(_0x30d2('0xa'));config[_0x30d2('0xb')]=_[_0x30d2('0xc')](config[_0x30d2('0xb')],{'host':_0x30d2('0xd'),'port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config[_0x30d2('0xb')]));var stats={'finish':![],'errors':[],'rows':0x0,'affectedRows':0x0};var results=[];var stopped=![];var NOW=moment()[_0x30d2('0xe')](_0x30d2('0xf'));function isEmail(_0x3e7f24){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))*$/[_0x30d2('0x10')](_0x3e7f24);}function selectNotIn(_0x454fa3,_0x3f4276,_0x3cb3c4,_0x59f047,_0x7041f0){return squel[_0x30d2('0x11')]()[_0x30d2('0x12')](_0x30d2('0x13'))['from'](_0x59f047)['join'](_0x3f4276,null,_0x3f4276+_0x30d2('0x14')+_0x59f047+'.'+_0x3cb3c4)[_0x30d2('0x15')](_0x59f047+'.'+_0x3cb3c4+_0x30d2('0x16')+_0x454fa3+'.'+_0x3cb3c4)[_0x30d2('0x15')](_0x3f4276+_0x30d2('0x17')+_0x7041f0[_0x30d2('0x18')]()+')');}function insertCmHopper(_0x2b3501,_0x5a574f,_0x3748bf,_0x19c0d1,_0x3dd0f9){var _0xe65936=[_0x30d2('0x19'),_0x30d2('0x1a'),'cm_contacts.id',_0x30d2('0x1b'),_0x5a574f+'.'+_0x19c0d1,_0x30d2('0x1c'),_0x30d2('0x1d'),_0x30d2('0x1e'),_0x30d2('0x1f'),'\x22'+_0x3dd0f9+'\x22'];return squel['insert']()[_0x30d2('0x20')](_0x30d2('0x21'))['fromQuery'](['phone',_0x30d2('0x22'),'ContactId',_0x30d2('0x23'),_0x19c0d1,'createdAt',_0x30d2('0x24'),_0x30d2('0x25'),_0x30d2('0x26'),_0x30d2('0x27')],squel[_0x30d2('0x11')]()[_0x30d2('0x28')](_0xe65936)[_0x30d2('0x29')](_0x5a574f)[_0x30d2('0x18')](_0x30d2('0x2a'),null,_0x30d2('0x2b')+_0x5a574f+_0x30d2('0x2c'))[_0x30d2('0x18')](_0x3748bf,null,_0x3748bf+'.id\x20=\x20'+_0x5a574f+'.'+_0x19c0d1)[_0x30d2('0x15')](_0x5a574f+_0x30d2('0x2d'),_0x2b3501)['where']('cm_contacts.createdAt\x20=\x20?',NOW)[_0x30d2('0x15')]('cm_contacts.phone\x20NOT\x20IN\x20(?)',selectNotIn(_0x5a574f,_0x3748bf,_0x19c0d1,'cm_hopper',['\x22always\x22',_0x30d2('0x2e')]))['where']('cm_contacts.phone\x20NOT\x20IN\x20(?)',selectNotIn(_0x5a574f,_0x3748bf,_0x19c0d1,_0x30d2('0x21'),[_0x30d2('0x2f')])))[_0x30d2('0x30')]();}function insertCmHopperBlack(_0x37832f,_0x19cdb3,_0x13d0d9,_0x1a3920){var _0x263956=[_0x30d2('0x19'),_0x30d2('0x31'),_0x30d2('0x1b'),_0x19cdb3+'.'+_0x1a3920,'cm_contacts.createdAt',_0x30d2('0x1d')];return squel[_0x30d2('0x32')]()[_0x30d2('0x20')](_0x30d2('0x33'))[_0x30d2('0x34')]([_0x30d2('0x13'),'ContactId',_0x30d2('0x23'),_0x1a3920,'createdAt',_0x30d2('0x24')],squel['select']()[_0x30d2('0x28')](_0x263956)[_0x30d2('0x29')](_0x19cdb3)['join'](_0x30d2('0x2a'),null,_0x30d2('0x2b')+_0x19cdb3+_0x30d2('0x2c'))[_0x30d2('0x18')](_0x13d0d9,null,_0x13d0d9+_0x30d2('0x14')+_0x19cdb3+'.'+_0x1a3920)[_0x30d2('0x15')](_0x19cdb3+_0x30d2('0x2d'),_0x37832f)[_0x30d2('0x15')](_0x30d2('0x35'),NOW)[_0x30d2('0x15')](_0x30d2('0x36'),squel['select']()[_0x30d2('0x12')](_0x30d2('0x13'))[_0x30d2('0x29')](_0x30d2('0x33'))[_0x30d2('0x15')]('ListId\x20=\x20?',_0x37832f)[_0x30d2('0x15')](_0x1a3920+_0x30d2('0x37'),_0x19cdb3+'.'+_0x1a3920)))[_0x30d2('0x30')]();}function insertCmContact(_0x5ec902,_0x108c61,_0xd8c16c,_0x5bd67b){var _0x398c17=_[_0x30d2('0x38')](_['keys'](_0x5bd67b),[_0x30d2('0x23'),_0x30d2('0x39'),_0x30d2('0x3a'),_0x30d2('0x24')]);return squel[_0x30d2('0x32')]()[_0x30d2('0x20')](_0x30d2('0x2a'))['fromQuery'](_0x398c17,squel[_0x30d2('0x11')]()[_0x30d2('0x28')](_0x398c17)[_0x30d2('0x29')](_0x108c61)[_0x30d2('0x15')]('('+_0xd8c16c[_0x30d2('0x18')](',')+_0x30d2('0x3b'),squel[_0x30d2('0x11')]()[_0x30d2('0x28')](_0xd8c16c)['from'](_0x30d2('0x2a'))[_0x30d2('0x15')](_0x30d2('0x3c'),_0x5ec902))[_0x30d2('0x15')](_0x30d2('0x3d'),squel[_0x30d2('0x11')]()['field'](_0x30d2('0x3e'),_0x30d2('0x3f'))[_0x30d2('0x29')](_0x108c61)['group'](_0xd8c16c[_0x30d2('0x18')](','))))[_0x30d2('0x30')]();}function handleStop(){logger[_0x30d2('0x40')](_0x30d2('0x41'));stopped=!![];}function handleUncaughtException(_0x43eb4d){logger[_0x30d2('0x42')](_0x43eb4d[_0x30d2('0x43')]);process[_0x30d2('0x44')](0x1);}function handleError(_0x258d06,_0x1c8e3e){stats[_0x30d2('0x45')][_0x30d2('0x46')]({'name':_0x1c8e3e[_0x30d2('0x47')],'message':_0x1c8e3e[_0x30d2('0x43')],'row':_0x258d06});}function handleQuery(_0x41a478){logger[_0x30d2('0x40')](_0x41a478);return db[_0x30d2('0x48')][_0x30d2('0x49')](_0x41a478)['spread'](function(_0x5bd074){results[_0x30d2('0x46')](_0x5bd074);})[_0x30d2('0x4a')](function(_0x4b694b){logger[_0x30d2('0x42')](_0x4b694b[_0x30d2('0x43')]);});}function main(_0x2d856a,_0x2e4b3e,_0x5e5d8b,_0x478adb){logger[_0x30d2('0x40')](_0x30d2('0x4b'),_0x2d856a,JSON[_0x30d2('0x4c')](_0x2e4b3e));process[_0x30d2('0x4d')](_0x30d2('0x4e'));var _0x3355cc=_0x2e4b3e['binding'];var _0x39f0e4=_0x2e4b3e[_0x30d2('0x4f')];var _0x3e39ec=path[_0x30d2('0x18')](config[_0x30d2('0x50')],_0x30d2('0x51'),_0x39f0e4+_0x30d2('0x52'));var _0x46f3f3=_[_0x30d2('0x53')](_0x3355cc)[_0x30d2('0x18')]();logger['info']('header',_0x46f3f3);fs[_0x30d2('0x54')](_0x3e39ec,_0x46f3f3+'\x0a');Papa[_0x30d2('0x55')](fs[_0x30d2('0x56')](_0x2d856a),{'header':!![],'skipEmptyLines':!![],'step':function(_0x4f0e0c,_0x3a4fb2){try{for(var _0x2d3a4a=0x0,_0x27077b=[];_0x2d3a4a<_0x4f0e0c['data']['length'];_0x2d3a4a++){stats[_0x30d2('0x57')]+=0x1;if(_0x4f0e0c['errors'][_0x2d3a4a]){handleError(_0x4f0e0c[_0x30d2('0x58')][_0x2d3a4a],_0x4f0e0c['errors'][_0x2d3a4a]);}else{var _0x4464a2=[];for(var _0x38f4f7 in _0x3355cc){if(_0x3355cc[_0x30d2('0x59')](_0x38f4f7)){if(_0x4f0e0c[_0x30d2('0x58')][_0x2d3a4a][_0x3355cc[_0x38f4f7]]){var _0x99cc3f=_[_0x30d2('0x5a')](_0x4f0e0c[_0x30d2('0x58')][_0x2d3a4a][_0x3355cc[_0x38f4f7]][_0x30d2('0x5b')](/"/g,'\x27'));switch(_0x38f4f7){case _0x30d2('0x22'):var _0x108094=moment(_0x99cc3f,'YYYY-MM-DD\x20HH:mm:ss',!![]);if(_0x108094[_0x30d2('0x5c')]()){_0x27077b['push']('\x22'+_0x99cc3f+'\x22');}else{_0x4464a2[_0x30d2('0x46')]('scheduledat\x20wrong\x20format\x20(YYYY-MM-DD\x20HH:mm:ss)');}break;case _0x30d2('0x25'):var _0x25c328=parseInt(_0x99cc3f);_0x99cc3f=_[_0x30d2('0x5d')](_0x25c328)||_0x25c328<0x0||_0x25c328>0x4?_0x478adb?0x3:0x2:_0x25c328;_0x27077b[_0x30d2('0x46')]('\x22'+_0x99cc3f+'\x22');break;case _0x30d2('0x26'):var _0x20ac6f=parseInt(_0x99cc3f);if(_[_0x30d2('0x5e')](_0x20ac6f)&&_['includes'](_0x5e5d8b,_0x20ac6f)){_0x27077b[_0x30d2('0x46')]('\x22'+_0x20ac6f+'\x22');}else{_0x4464a2[_0x30d2('0x46')](_0x30d2('0x5f'));}break;case'email':if(isEmail(_0x99cc3f)){_0x27077b[_0x30d2('0x46')]('\x22'+_0x99cc3f+'\x22');}else{_0x4464a2[_0x30d2('0x46')]('email\x20wrong\x20format');}break;case _0x30d2('0x60'):var _0x2a3325=moment(_0x99cc3f,'YYYY-MM-DD',!![]);if(_0x2a3325[_0x30d2('0x5c')]()){_0x27077b[_0x30d2('0x46')]('\x22'+_0x99cc3f+'\x22');}else{_0x4464a2[_0x30d2('0x46')]('dateOfBirth\x20wrong\x20format\x20(YYYY-MM-DD)');}break;default:_0x27077b[_0x30d2('0x46')]('\x22'+_0x99cc3f+'\x22');}}else{switch(_0x38f4f7){case _0x30d2('0x61'):case _0x30d2('0x13'):_0x4464a2[_0x30d2('0x46')](_0x38f4f7+'\x20not\x20specified');break;default:_0x27077b[_0x30d2('0x46')]('\x22\x22');}}}}if(_0x4464a2[_0x30d2('0x62')]){handleError(_0x4f0e0c[_0x30d2('0x58')][_0x2d3a4a],{'code':'SystemRow','message':_0x4464a2[_0x30d2('0x18')]()});}else{fs[_0x30d2('0x63')](_0x3e39ec,_0x27077b['join']()+'\x0a');}_0x27077b=[];}if(!(stats['rows']%0xc8)){socket[_0x30d2('0x64')](_0x30d2('0x65')+_0x39f0e4,stats);stats[_0x30d2('0x45')]=[];}}if(stopped){logger['info'](_0x30d2('0x66'));_0x3a4fb2['abort']();}}catch(_0xc458c8){handleError(_0x4f0e0c[_0x30d2('0x58')][_0x2d3a4a],{'code':_0x30d2('0x67'),'message':_0xc458c8[_0x30d2('0x43')]});logger[_0x30d2('0x42')](_0x30d2('0x68'),_0xc458c8['message']);}},'complete':function(){try{var _0x5a3bbb=[];var _0x207abc=_0x30d2('0x2a');if(_0x2e4b3e['duplicates']&&_0x2e4b3e[_0x30d2('0x69')]['length']){_0x207abc=_0x30d2('0x6a')+_0x39f0e4;_0x5a3bbb[_0x30d2('0x46')](_0x30d2('0x6b')+_0x207abc+_0x30d2('0x6c'));}var _0x3e6789=util[_0x30d2('0xe')](_0x30d2('0x6d'),_0x3e39ec,_0x207abc,_0x46f3f3,_0x2e4b3e[_0x30d2('0x23')],_0x2e4b3e['CompanyId']||null,NOW,NOW);if(_[_0x30d2('0x6e')](_0x3355cc[_0x30d2('0x22')])){_0x3e6789+=_0x30d2('0x6f');}_0x5a3bbb[_0x30d2('0x46')](_0x3e6789);if(_0x2e4b3e[_0x30d2('0x69')]&&_0x2e4b3e[_0x30d2('0x69')]['length']){_0x5a3bbb[_0x30d2('0x46')](insertCmContact(_0x2e4b3e[_0x30d2('0x23')],_0x207abc,_0x2e4b3e['duplicates'],_0x3355cc));_0x5a3bbb[_0x30d2('0x46')](_0x30d2('0x70')+_0x207abc+';');}_0x5a3bbb['push'](insertCmHopper(_0x2e4b3e['ListId'],_0x30d2('0x71'),_0x30d2('0x72'),_0x30d2('0x73'),_0x478adb));_0x5a3bbb[_0x30d2('0x46')](insertCmHopperBlack(_0x2e4b3e['ListId'],'voice_queues_has_cm_blacklists',_0x30d2('0x72'),_0x30d2('0x73')));_0x5a3bbb['push'](insertCmHopper(_0x2e4b3e['ListId'],'campaigns_has_cm_lists',_0x30d2('0x74'),_0x30d2('0x75'),_0x478adb));_0x5a3bbb[_0x30d2('0x46')](insertCmHopperBlack(_0x2e4b3e['ListId'],_0x30d2('0x76'),'campaigns',_0x30d2('0x75')));BPromise[_0x30d2('0x77')](_0x5a3bbb,handleQuery)[_0x30d2('0x78')](function(_0x8e5d26){stats['finish']=!![];stats[_0x30d2('0x79')]=_0x2e4b3e[_0x30d2('0x69')]&&_0x2e4b3e['duplicates']['length']?results[0x2][_0x30d2('0x79')]:results[0x0][_0x30d2('0x79')];socket[_0x30d2('0x64')]('contact:import:'+_0x39f0e4,stats);fs[_0x30d2('0x7a')](_0x2d856a);fs['unlink'](_0x3e39ec);process['exit'](0x0);})[_0x30d2('0x4a')](function(_0x24af4b){logger[_0x30d2('0x42')](_0x24af4b['message']);process[_0x30d2('0x44')](0x1);});}catch(_0x2b6289){logger[_0x30d2('0x42')](_0x30d2('0x7b'),_0x2b6289[_0x30d2('0x43')]);process[_0x30d2('0x44')](0x1);}},'error':function(_0x3c154e,_0x411fc9,_0x251789,_0x13d7d7){throw new Error(_0x13d7d7);}});}function validate(){if(process[_0x30d2('0x7c')]&&process['argv'][_0x30d2('0x62')]<0x4){throw new Error(_0x30d2('0x7d'));}var _0x21c2ad=path[_0x30d2('0x18')](config[_0x30d2('0x50')],'server/files/tmp',process[_0x30d2('0x7c')][0x2]);if(!fs[_0x30d2('0x7e')](_0x21c2ad)){throw new Error(_0x30d2('0x7f'));}var _0x3c0db6={};try{_0x3c0db6=JSON['parse'](process[_0x30d2('0x7c')][0x3]);if(!_0x3c0db6['binding']){throw new Error('binding\x20doesn\x27t\x20exists');}if(!_0x3c0db6[_0x30d2('0x80')][_0x30d2('0x13')]){throw new Error(_0x30d2('0x81'));}if(!_0x3c0db6['binding'][_0x30d2('0x61')]){throw new Error(_0x30d2('0x82'));}var _0x5a8623=0x0;if(_0x3c0db6[_0x30d2('0x80')][_0x30d2('0x26')]){_0x5a8623=0x1;}if(!_0x3c0db6[_0x30d2('0x23')]){throw new Error(_0x30d2('0x83'));}}catch(_0x49fb9d){throw new Error(_0x30d2('0x84'));}var _0x28e684=[];try{_0x28e684=_[_0x30d2('0x85')](JSON['parse'](process[_0x30d2('0x7c')][0x4]),'id');}catch(_0x4d3930){logger[_0x30d2('0x40')](_0x30d2('0x86'));}main(_0x21c2ad,_0x3c0db6,_0x28e684,_0x5a8623);}validate();process['on'](_0x30d2('0x87'),handleStop);process['on'](_0x30d2('0x88'),handleUncaughtException);
\ No newline at end of file
+var _0x9744=['.CmListId','ListId\x20=\x20?','\x20=\x20?','concat','CompanyId','fromQuery',')\x20NOT\x20IN\x20?','group','info','exit','errors','push','code','message','sequelize','error','stringify','binding','socket_timestamp','server/files/tmp','.csv','keys','header','writeFileSync','parse','createReadStream','data','length','rows','hasOwnProperty','isValid','isNaN','isNumber','includes','email','email\x20wrong\x20format','YYYY-MM-DD','dateOfBirth\x20wrong\x20format\x20(YYYY-MM-DD)','firstName','\x20not\x20specified','SystemRow','appendFileSync','emit','contact:import:','Abort\x20parser','SystemError','step','duplicates','\x20LIKE\x20cm_contacts;',',\x20scheduledAt\x20=\x20NOW()','DROP\x20TABLE\x20','voice_queues','VoiceQueueId','voice_queues_has_cm_blacklists','campaigns_has_cm_lists','campaigns','CampaignId','each','then','finish','affectedRows','unlink','catch','complete','argv','arguments\x20<filename>\x20<parameters>\x20<agents>','existsSync','phone\x20is\x20mandatory','firstName\x20is\x20mandatory','body\x20id\x20mandatory','map','SIGINT','uncaughtException','path','lodash','papaparse','util','bluebird','moment','ioredis','../../../mysqldb','../../../config/environment','import','defaults','redis','localhost','socket.io-emitter','format','test','select','field','phone','from','join','.id\x20=\x20','where','\x20=\x20','.dialCheckDuplicateType\x20IN\x20(','cm_contacts.phone','cm_contacts.scheduledat','cm_contacts.id','cm_contacts.ListId','cm_contacts.createdAt','cm_contacts.priority','cm_contacts.UserId','into','cm_hopper','scheduledat','ListId','createdAt','updatedAt','UserId','recallme','cm_contacts','cm_contacts.ListId\x20=\x20','.CmListId\x20=\x20?','cm_contacts.createdAt\x20=\x20?','cm_contacts.phone\x20NOT\x20IN\x20(?)','\x22always\x22','\x22onlyIfOpen\x22','toString','insert','cm_hopper_black','ContactId','fields'];(function(_0x138adb,_0x193fee){var _0x1b27f2=function(_0x5e97a2){while(--_0x5e97a2){_0x138adb['push'](_0x138adb['shift']());}};_0x1b27f2(++_0x193fee);}(_0x9744,0x143));var _0x4974=function(_0x19faf8,_0x2bc510){_0x19faf8=_0x19faf8-0x0;var _0x56319f=_0x9744[_0x19faf8];return _0x56319f;};'use strict';var fs=require('fs');var path=require(_0x4974('0x0'));var _=require(_0x4974('0x1'));var Papa=require(_0x4974('0x2'));var util=require(_0x4974('0x3'));var BPromise=require(_0x4974('0x4'));var moment=require(_0x4974('0x5'));var squel=require('squel');var Redis=require(_0x4974('0x6'));var db=require(_0x4974('0x7'))['db'];var config=require(_0x4974('0x8'));var logger=require('../../../config/logger')(_0x4974('0x9'));config['redis']=_[_0x4974('0xa')](config[_0x4974('0xb')],{'host':_0x4974('0xc'),'port':0x18eb});var socket=require(_0x4974('0xd'))(new Redis(config[_0x4974('0xb')]));var stats={'finish':![],'errors':[],'rows':0x0,'affectedRows':0x0};var results=[];var stopped=![];var NOW=moment()[_0x4974('0xe')]('YYYY-MM-DD\x20HH:mm:ss');function isEmail(_0x1f1b49){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))*$/[_0x4974('0xf')](_0x1f1b49);}function selectNotIn(_0x5b8f97,_0x18cb04,_0x38c5c2,_0x119e98,_0x331bbf){return squel[_0x4974('0x10')]()[_0x4974('0x11')](_0x4974('0x12'))[_0x4974('0x13')](_0x119e98)[_0x4974('0x14')](_0x18cb04,null,_0x18cb04+_0x4974('0x15')+_0x119e98+'.'+_0x38c5c2)[_0x4974('0x16')](_0x119e98+'.'+_0x38c5c2+_0x4974('0x17')+_0x5b8f97+'.'+_0x38c5c2)['where'](_0x18cb04+_0x4974('0x18')+_0x331bbf[_0x4974('0x14')]()+')');}function insertCmHopper(_0x3942d9,_0x18cc38,_0x40b1af,_0x183014,_0x498bce){var _0x2dd062=[_0x4974('0x19'),_0x4974('0x1a'),_0x4974('0x1b'),_0x4974('0x1c'),_0x18cc38+'.'+_0x183014,_0x4974('0x1d'),'cm_contacts.updatedAt',_0x4974('0x1e'),_0x4974('0x1f'),'\x22'+_0x498bce+'\x22'];return squel['insert']()[_0x4974('0x20')](_0x4974('0x21'))['fromQuery']([_0x4974('0x12'),_0x4974('0x22'),'ContactId',_0x4974('0x23'),_0x183014,_0x4974('0x24'),_0x4974('0x25'),'priority',_0x4974('0x26'),_0x4974('0x27')],squel['select']()['fields'](_0x2dd062)['from'](_0x18cc38)['join'](_0x4974('0x28'),null,_0x4974('0x29')+_0x18cc38+'.CmListId')[_0x4974('0x14')](_0x40b1af,null,_0x40b1af+_0x4974('0x15')+_0x18cc38+'.'+_0x183014)[_0x4974('0x16')](_0x18cc38+_0x4974('0x2a'),_0x3942d9)[_0x4974('0x16')](_0x4974('0x2b'),NOW)[_0x4974('0x16')](_0x4974('0x2c'),selectNotIn(_0x18cc38,_0x40b1af,_0x183014,_0x4974('0x21'),[_0x4974('0x2d'),_0x4974('0x2e')]))[_0x4974('0x16')](_0x4974('0x2c'),selectNotIn(_0x18cc38,_0x40b1af,_0x183014,_0x4974('0x21'),[_0x4974('0x2d')])))[_0x4974('0x2f')]();}function insertCmHopperBlack(_0x15d45f,_0x3ec939,_0x1046fa,_0x10153c){var _0x2f7e7b=[_0x4974('0x19'),'cm_contacts.id','cm_contacts.ListId',_0x3ec939+'.'+_0x10153c,'cm_contacts.createdAt','cm_contacts.updatedAt'];return squel[_0x4974('0x30')]()['into'](_0x4974('0x31'))['fromQuery'](['phone',_0x4974('0x32'),_0x4974('0x23'),_0x10153c,_0x4974('0x24'),_0x4974('0x25')],squel['select']()[_0x4974('0x33')](_0x2f7e7b)[_0x4974('0x13')](_0x3ec939)[_0x4974('0x14')](_0x4974('0x28'),null,_0x4974('0x29')+_0x3ec939+_0x4974('0x34'))[_0x4974('0x14')](_0x1046fa,null,_0x1046fa+_0x4974('0x15')+_0x3ec939+'.'+_0x10153c)[_0x4974('0x16')](_0x3ec939+_0x4974('0x2a'),_0x15d45f)[_0x4974('0x16')]('cm_contacts.createdAt\x20=\x20?',NOW)[_0x4974('0x16')]('cm_contacts.phone\x20NOT\x20IN\x20(?)',squel['select']()[_0x4974('0x11')]('phone')['from'](_0x4974('0x31'))[_0x4974('0x16')](_0x4974('0x35'),_0x15d45f)[_0x4974('0x16')](_0x10153c+_0x4974('0x36'),_0x3ec939+'.'+_0x10153c)))[_0x4974('0x2f')]();}function insertCmContact(_0x363129,_0x4d1e5a,_0x3e81ec,_0x3824cc){var _0x14e24a=_[_0x4974('0x37')](_['keys'](_0x3824cc),[_0x4974('0x23'),_0x4974('0x38'),_0x4974('0x24'),'updatedAt']);return squel[_0x4974('0x30')]()['into'](_0x4974('0x28'))[_0x4974('0x39')](_0x14e24a,squel[_0x4974('0x10')]()[_0x4974('0x33')](_0x14e24a)['from'](_0x4d1e5a)[_0x4974('0x16')]('('+_0x3e81ec[_0x4974('0x14')](',')+_0x4974('0x3a'),squel[_0x4974('0x10')]()[_0x4974('0x33')](_0x3e81ec)[_0x4974('0x13')](_0x4974('0x28'))[_0x4974('0x16')](_0x4974('0x35'),_0x363129))[_0x4974('0x16')]('id\x20IN\x20?',squel['select']()['field']('MIN(id)','min_id')[_0x4974('0x13')](_0x4d1e5a)[_0x4974('0x3b')](_0x3e81ec[_0x4974('0x14')](','))))[_0x4974('0x2f')]();}function handleStop(){logger[_0x4974('0x3c')]('Received\x20SIGINT');stopped=!![];}function handleUncaughtException(_0x2a29d2){logger['error'](_0x2a29d2['message']);process[_0x4974('0x3d')](0x1);}function handleError(_0x224a01,_0x117543){stats[_0x4974('0x3e')][_0x4974('0x3f')]({'name':_0x117543[_0x4974('0x40')],'message':_0x117543[_0x4974('0x41')],'row':_0x224a01});}function handleQuery(_0x2dff3e){logger[_0x4974('0x3c')](_0x2dff3e);return db[_0x4974('0x42')]['query'](_0x2dff3e)['spread'](function(_0xde4f2){results[_0x4974('0x3f')](_0xde4f2);})['catch'](function(_0x31413d){logger[_0x4974('0x43')](_0x31413d[_0x4974('0x41')]);});}function main(_0x3ec83b,_0xd5c229,_0x14ae84,_0x2142f1){logger[_0x4974('0x3c')]('main',_0x3ec83b,JSON[_0x4974('0x44')](_0xd5c229));process['send']('start');var _0x185873=_0xd5c229[_0x4974('0x45')];var _0x26153e=_0xd5c229[_0x4974('0x46')];var _0x208a2e=path[_0x4974('0x14')](config['root'],_0x4974('0x47'),_0x26153e+_0x4974('0x48'));var _0x272976=_[_0x4974('0x49')](_0x185873)[_0x4974('0x14')]();logger[_0x4974('0x3c')](_0x4974('0x4a'),_0x272976);fs[_0x4974('0x4b')](_0x208a2e,_0x272976+'\x0a');Papa[_0x4974('0x4c')](fs[_0x4974('0x4d')](_0x3ec83b),{'header':!![],'skipEmptyLines':!![],'step':function(_0x5cedd5,_0x40d93e){try{for(var _0x56924a=0x0,_0x2e7ec8=[];_0x56924a<_0x5cedd5[_0x4974('0x4e')][_0x4974('0x4f')];_0x56924a++){stats[_0x4974('0x50')]+=0x1;if(_0x5cedd5[_0x4974('0x3e')][_0x56924a]){handleError(_0x5cedd5[_0x4974('0x4e')][_0x56924a],_0x5cedd5[_0x4974('0x3e')][_0x56924a]);}else{var _0x5f1455=[];for(var _0x2b88b1 in _0x185873){if(_0x185873[_0x4974('0x51')](_0x2b88b1)){if(_0x5cedd5['data'][_0x56924a][_0x185873[_0x2b88b1]]){var _0x71d9e5=_['trim'](_0x5cedd5['data'][_0x56924a][_0x185873[_0x2b88b1]]['replace'](/"/g,'\x27'));switch(_0x2b88b1){case _0x4974('0x22'):var _0x410589=moment(_0x71d9e5,'YYYY-MM-DD\x20HH:mm:ss',!![]);if(_0x410589[_0x4974('0x52')]()){_0x2e7ec8['push']('\x22'+_0x71d9e5+'\x22');}else{_0x5f1455[_0x4974('0x3f')]('scheduledat\x20wrong\x20format\x20(YYYY-MM-DD\x20HH:mm:ss)');}break;case'priority':var _0x44dbd6=parseInt(_0x71d9e5);_0x71d9e5=_[_0x4974('0x53')](_0x44dbd6)||_0x44dbd6<0x0||_0x44dbd6>0x4?_0x2142f1?0x3:0x2:_0x44dbd6;_0x2e7ec8[_0x4974('0x3f')]('\x22'+_0x71d9e5+'\x22');break;case _0x4974('0x26'):var _0x362704=parseInt(_0x71d9e5);if(_[_0x4974('0x54')](_0x362704)&&_[_0x4974('0x55')](_0x14ae84,_0x362704)){_0x2e7ec8[_0x4974('0x3f')]('\x22'+_0x362704+'\x22');}else{_0x5f1455['push']('agent\x20not\x20exists');}break;case _0x4974('0x56'):if(isEmail(_0x71d9e5)){_0x2e7ec8[_0x4974('0x3f')]('\x22'+_0x71d9e5+'\x22');}else{_0x5f1455[_0x4974('0x3f')](_0x4974('0x57'));}break;case'dateOfBirth':var _0x3b8e7c=moment(_0x71d9e5,_0x4974('0x58'),!![]);if(_0x3b8e7c['isValid']()){_0x2e7ec8[_0x4974('0x3f')]('\x22'+_0x71d9e5+'\x22');}else{_0x5f1455[_0x4974('0x3f')](_0x4974('0x59'));}break;default:_0x2e7ec8['push']('\x22'+_0x71d9e5+'\x22');}}else{switch(_0x2b88b1){case _0x4974('0x5a'):case _0x4974('0x12'):_0x5f1455[_0x4974('0x3f')](_0x2b88b1+_0x4974('0x5b'));break;default:_0x2e7ec8['push']('\x22\x22');}}}}if(_0x5f1455[_0x4974('0x4f')]){handleError(_0x5cedd5['data'][_0x56924a],{'code':_0x4974('0x5c'),'message':_0x5f1455[_0x4974('0x14')]()});}else{fs[_0x4974('0x5d')](_0x208a2e,_0x2e7ec8['join']()+'\x0a');}_0x2e7ec8=[];}if(!(stats[_0x4974('0x50')]%0xc8)){socket[_0x4974('0x5e')](_0x4974('0x5f')+_0x26153e,stats);stats['errors']=[];}}if(stopped){logger['info'](_0x4974('0x60'));_0x40d93e['abort']();}}catch(_0x559b17){handleError(_0x5cedd5['data'][_0x56924a],{'code':_0x4974('0x61'),'message':_0x559b17[_0x4974('0x41')]});logger[_0x4974('0x43')](_0x4974('0x62'),_0x559b17[_0x4974('0x41')]);}},'complete':function(){try{var _0x3c0115=[];var _0x165a6c='cm_contacts';if(_0xd5c229[_0x4974('0x63')]&&_0xd5c229['duplicates'][_0x4974('0x4f')]){_0x165a6c='cm_contacts_'+_0x26153e;_0x3c0115['push']('CREATE\x20TABLE\x20'+_0x165a6c+_0x4974('0x64'));}var _0x32be8a=util['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',_0x208a2e,_0x165a6c,_0x272976,_0xd5c229[_0x4974('0x23')],_0xd5c229[_0x4974('0x38')]||null,NOW,NOW);if(_['isNil'](_0x185873[_0x4974('0x22')])){_0x32be8a+=_0x4974('0x65');}_0x3c0115[_0x4974('0x3f')](_0x32be8a);if(_0xd5c229['duplicates']&&_0xd5c229[_0x4974('0x63')]['length']){_0x3c0115[_0x4974('0x3f')](insertCmContact(_0xd5c229['ListId'],_0x165a6c,_0xd5c229[_0x4974('0x63')],_0x185873));_0x3c0115[_0x4974('0x3f')](_0x4974('0x66')+_0x165a6c+';');}_0x3c0115[_0x4974('0x3f')](insertCmHopper(_0xd5c229[_0x4974('0x23')],'voice_queues_has_cm_lists',_0x4974('0x67'),_0x4974('0x68'),_0x2142f1));_0x3c0115[_0x4974('0x3f')](insertCmHopperBlack(_0xd5c229['ListId'],_0x4974('0x69'),_0x4974('0x67'),_0x4974('0x68')));_0x3c0115[_0x4974('0x3f')](insertCmHopper(_0xd5c229[_0x4974('0x23')],_0x4974('0x6a'),'campaigns','CampaignId',_0x2142f1));_0x3c0115[_0x4974('0x3f')](insertCmHopperBlack(_0xd5c229[_0x4974('0x23')],'campaigns_has_cm_blacklists',_0x4974('0x6b'),_0x4974('0x6c')));BPromise[_0x4974('0x6d')](_0x3c0115,handleQuery)[_0x4974('0x6e')](function(_0x122b03){stats[_0x4974('0x6f')]=!![];stats[_0x4974('0x70')]=_0xd5c229[_0x4974('0x63')]&&_0xd5c229[_0x4974('0x63')][_0x4974('0x4f')]?results[0x2][_0x4974('0x70')]:results[0x0][_0x4974('0x70')];socket['emit'](_0x4974('0x5f')+_0x26153e,stats);fs['unlink'](_0x3ec83b);fs[_0x4974('0x71')](_0x208a2e);process[_0x4974('0x3d')](0x0);})[_0x4974('0x72')](function(_0x49d37f){logger[_0x4974('0x43')](_0x49d37f[_0x4974('0x41')]);process[_0x4974('0x3d')](0x1);});}catch(_0x452d46){logger[_0x4974('0x43')](_0x4974('0x73'),_0x452d46[_0x4974('0x41')]);process['exit'](0x1);}},'error':function(_0x4c1589,_0x21ae34,_0x233e49,_0x4509c0){throw new Error(_0x4509c0);}});}function validate(){if(process[_0x4974('0x74')]&&process['argv'][_0x4974('0x4f')]<0x4){throw new Error(_0x4974('0x75'));}var _0x32068a=path[_0x4974('0x14')](config['root'],_0x4974('0x47'),process[_0x4974('0x74')][0x2]);if(!fs[_0x4974('0x76')](_0x32068a)){throw new Error('file\x20doesn\x27t\x20exists');}var _0x2041cc={};try{_0x2041cc=JSON[_0x4974('0x4c')](process[_0x4974('0x74')][0x3]);if(!_0x2041cc[_0x4974('0x45')]){throw new Error('binding\x20doesn\x27t\x20exists');}if(!_0x2041cc[_0x4974('0x45')][_0x4974('0x12')]){throw new Error(_0x4974('0x77'));}if(!_0x2041cc['binding'][_0x4974('0x5a')]){throw new Error(_0x4974('0x78'));}var _0x2da40a=0x0;if(_0x2041cc['binding'][_0x4974('0x26')]){_0x2da40a=0x1;}if(!_0x2041cc[_0x4974('0x23')]){throw new Error('ListId\x20is\x20mandatory');}}catch(_0x5b4632){throw new Error(_0x4974('0x79'));}var _0x424833=[];try{_0x424833=_[_0x4974('0x7a')](JSON['parse'](process['argv'][0x4]),'id');}catch(_0x367274){logger['info']('No\x20agent\x20available');}main(_0x32068a,_0x2041cc,_0x424833,_0x2da40a);}validate();process['on'](_0x4974('0x7b'),handleStop);process['on'](_0x4974('0x7c'),handleUncaughtException);
\ No newline at end of file