Built motion from commit da24aabd.|2.6.20
[motion2.git] / server / components / import / cm / csv.js
index 861eb11..7c3da0b 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x72f8=['catch','sequelize','all','outbound','BlackLists','CampaignId','findAll','Error\x20processing\x20rows\x20block:','finally','contact:csv_','resume','resolve','unlinkSync','Unable\x20to\x20delete\x20temp\x20file:','info','CSV\x20import\x20process\x20stopped!','CmContact','parse','duplicate','pause','Error\x20executing\x20contact\x20csv\x20import:','bluebird','util','lodash','squel','papaparse','ioredis','../../../mysqldb','api','redis','defaults','localhost','../../../api/cmContact/cmContact.socket','register','argv','undefined','null','Missing\x20filepath\x20parameter!','Missing\x20binding\x20parameters!','zipObject','split','Missing\x20ListId\x20parameter!','error','contact','index','test','errors','length','map','message','hasOwnProperty','data','firstName','firstName\x20not\x20specified!','phone','birthDate','isValid','birthDate\x20format\x20is\x20invalid,\x20YYYY-MM-DD\x20format\x20is\x20supported!','email','ListId','CompanyId','Duplicate\x20Contact','create','keys','then','push','pick','stringify','cmContact','checkHopper','inspect','insert','scheduledAt','ContactId','updatedAt','select','field','createdAt','NOW()','from','cm_contacts','where','deletedAt\x20IS\x20NULL','ListId\x20=\x20?','toString','phone\x20IS\x20NOT\x20NULL','phone\x20NOT\x20IN\x20(?)','cm_hopper','\x20=\x20?','fromQuery','str','calleridnum','into','id\x20IN\x20?','cm_hopper_black','VoiceQueue','dialCheckDuplicateType','CmList','Lists','get','always','query','VoiceQueueId'];(function(_0x36fe55,_0x75f5d){var _0x2701e4=function(_0xce9362){while(--_0xce9362){_0x36fe55['push'](_0x36fe55['shift']());}};_0x2701e4(++_0x75f5d);}(_0x72f8,0xe3));var _0x872f=function(_0x367e5b,_0x5721e4){_0x367e5b=_0x367e5b-0x0;var _0x4b909e=_0x72f8[_0x367e5b];return _0x4b909e;};'use strict';var BPromise=require(_0x872f('0x0'));var util=require(_0x872f('0x1'));var _=require(_0x872f('0x2'));var fs=require('fs');var squel=require(_0x872f('0x3'));var Papa=require(_0x872f('0x4'));var Redis=require(_0x872f('0x5'));var db=require(_0x872f('0x6'))['db'];var config=require('../../../config/environment');var logger=require('../../../config/logger')(_0x872f('0x7'));config[_0x872f('0x8')]=_[_0x872f('0x9')](config[_0x872f('0x8')],{'host':_0x872f('0xa'),'port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config['redis']));require(_0x872f('0xb'))[_0x872f('0xc')](socket);try{if(!process[_0x872f('0xd')][0x2]||process['argv'][0x2]===_0x872f('0xe')||process['argv'][0x2]===_0x872f('0xf')){throw new Error(_0x872f('0x10'));}var FILEPATH=process[_0x872f('0xd')][0x2];if(!process[_0x872f('0xd')][0x3]||process[_0x872f('0xd')][0x3]===_0x872f('0xe')||process[_0x872f('0xd')][0x3]===_0x872f('0xf')||!process[_0x872f('0xd')][0x4]||process['argv'][0x4]===_0x872f('0xe')||process['argv'][0x4]===_0x872f('0xf')){throw new Error(_0x872f('0x11'));}var FIELDS=_[_0x872f('0x12')](process['argv'][0x3]['split'](','),process[_0x872f('0xd')][0x4][_0x872f('0x13')](','));if(!process['argv'][0x5]||process['argv'][0x5]===_0x872f('0xe')||process[_0x872f('0xd')][0x5]===_0x872f('0xf')){throw new Error(_0x872f('0x14'));}var LISTID=process[_0x872f('0xd')][0x5];var COMPANYID=process[_0x872f('0xd')][0x6]&&process[_0x872f('0xd')][0x6]!==_0x872f('0xe')&&process['argv'][0x6]!==_0x872f('0xf')?process['argv'][0x6]:null;var DUPLICATES=process[_0x872f('0xd')][0x7]&&process[_0x872f('0xd')][0x7]!==_0x872f('0xe')&&process[_0x872f('0xd')][0x7]!==_0x872f('0xf')?process[_0x872f('0xd')][0x7]:null;if(!process[_0x872f('0xd')][0x8]||process['argv'][0x8]===_0x872f('0xe')||process[_0x872f('0xd')][0x8]==='null'){throw new Error('Missing\x20socket_timestamp\x20parameter!');}var SOCKET_TIMESTAMP=process['argv'][0x8];}catch(_0x4435a1){logger[_0x872f('0x15')](_0x4435a1);endCsv();}var total=0x0;var pTotal=0x0;var success=0x0;var errors=0x0;var duplicates=0x0;var rows=[];var hopperContacts='';var promises=[];var index=0x0;var alreadyInvalid=![];function handleCheckRowError(_0x11cc31,_0xc564e8,_0x300470,_0x433c22){var _0x3cac31={'message':_0xc564e8};_0x3cac31[_0x11cc31]=!![];if(_0x300470){_0x3cac31[_0x872f('0x16')]=_0x300470;}if(_0x433c22){_0x3cac31[_0x872f('0x17')]=_0x433c22;}return _0x3cac31;}function isEmail(_0x52dc4f){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))*$/[_0x872f('0x18')](_0x52dc4f);}function checkRow(_0x5f1fb2,_0x3e557b,_0x22c244){return new BPromise(function(_0xec3405,_0x16ca9e){if(_['isNil'](_0x5f1fb2)){return _0x16ca9e(handleCheckRowError(_0x872f('0x15'),'The\x20row\x20is\x20empty\x20or\x20the\x20number\x20of\x20parameters\x20does\x20not\x20match\x20the\x20columns!',null,_0x22c244));}if(_0x5f1fb2['errors']&&_0x5f1fb2[_0x872f('0x19')][_0x872f('0x1a')]){var _0x40dd64=_[_0x872f('0x1b')](_0x5f1fb2[_0x872f('0x19')],_0x872f('0x1c'))['join'](';');return _0x16ca9e(handleCheckRowError(_0x872f('0x15'),_0x40dd64,null,_0x22c244));}var _0x11fa75={};for(var _0x3e5833 in FIELDS){if(FIELDS[_0x872f('0x1d')](_0x3e5833)&&FIELDS[_0x3e5833]){_0x11fa75[_0x3e5833]=_0x5f1fb2[_0x872f('0x1e')][0x0][FIELDS[_0x3e5833]]||_0x5f1fb2[_0x872f('0x1e')][0x0]['\ufeff'+FIELDS[_0x3e5833]];}}if(!_0x11fa75[_0x872f('0x1f')]){return _0x16ca9e(handleCheckRowError('error',_0x872f('0x20'),null,_0x22c244));}if(!_0x11fa75[_0x872f('0x21')]){return _0x16ca9e(handleCheckRowError(_0x872f('0x15'),'phone\x20not\x20specified!',null,_0x22c244));}if(_0x11fa75['birthDate']){var _0x46c01b=moment(_0x11fa75[_0x872f('0x22')],'YYYY-MM-DD');if(!_0x46c01b[_0x872f('0x23')]()){return _0x16ca9e(handleCheckRowError(_0x872f('0x15'),_0x872f('0x24'),null,_0x22c244));}}if(_0x11fa75[_0x872f('0x25')]){if(!isEmail(_0x11fa75[_0x872f('0x25')])){return _0x16ca9e(handleCheckRowError(_0x872f('0x15'),'email\x20format\x20is\x20not\x20valid!',null,_0x22c244));}}_0x11fa75[_0x872f('0x26')]=LISTID;_0x11fa75[_0x872f('0x27')]=COMPANYID||undefined;if(DUPLICATES&&DUPLICATES[_0x872f('0x1a')]&&_0x3e557b){var _0x11dc65={};for(var _0x12c0d3=0x0,_0x17c0fb=DUPLICATES['length'];_0x12c0d3<_0x17c0fb;_0x12c0d3+=0x1){_0x11dc65[DUPLICATES[_0x12c0d3]]=_0x11fa75[DUPLICATES[_0x12c0d3]];}var _0xefb780=_['find'](_0x3e557b,_0x11dc65);if(_0xefb780){return _0x16ca9e(handleCheckRowError('duplicate',_0x872f('0x28'),_0xefb780,_0x22c244));}}return db['CmContact'][_0x872f('0x29')](_0x11fa75,{'raw':!![],'hooks':![],'fields':_[_0x872f('0x2a')](_0x11fa75)})[_0x872f('0x2b')](function(_0x2d616c){if(DUPLICATES&&DUPLICATES[_0x872f('0x1a')]&&_0x3e557b){_0x3e557b[_0x872f('0x2c')](_[_0x872f('0x2d')](_0x11fa75,DUPLICATES));}hopperContacts+=(hopperContacts?',':'')+_0x2d616c['id'];return _0xec3405();})['catch'](function(_0x544441){return _0x16ca9e(handleCheckRowError(_0x872f('0x15'),'Error\x20while\x20creating\x20contact:\x20'+(_0x544441[_0x872f('0x1c')]||JSON[_0x872f('0x2e')](_0x544441)),null,_0x22c244));});});}function checkHopper(){function _0x2d377d(){return function(_0x18ed95){logger[_0x872f('0x15')](_0x872f('0x2f'),_0x872f('0x30'),util[_0x872f('0x31')](_0x18ed95,{'showHidden':![],'depth':null}));};}var _0x2de6c5=function(_0x16bdad,_0x56d883){var _0x1672ea=squel[_0x872f('0x32')]()['into']('cm_hopper')['fromQuery']([_0x872f('0x21'),_0x872f('0x33'),_0x872f('0x34'),_0x872f('0x26'),_0x56d883,'createdAt',_0x872f('0x35')],squel[_0x872f('0x36')]()['field'](_0x872f('0x21'),_0x872f('0x21'))['field']('NOW()',_0x872f('0x33'))[_0x872f('0x37')]('id',_0x872f('0x34'))['field'](LISTID['toString'](),_0x872f('0x26'))[_0x872f('0x37')](_0x16bdad['id']['toString'](),_0x56d883)[_0x872f('0x37')]('NOW()',_0x872f('0x38'))[_0x872f('0x37')](_0x872f('0x39'),_0x872f('0x35'))[_0x872f('0x3a')](_0x872f('0x3b'))[_0x872f('0x3c')](_0x872f('0x3d'))[_0x872f('0x3c')](_0x872f('0x3e'),LISTID[_0x872f('0x3f')]())[_0x872f('0x3c')](_0x872f('0x40'))['where'](_0x872f('0x41'),squel[_0x872f('0x36')]()['field'](_0x872f('0x21'))['from'](_0x872f('0x42'))[_0x872f('0x3c')](_0x56d883+_0x872f('0x43'),_0x16bdad['id'][_0x872f('0x3f')]())))['toString']();return _0x1672ea;};var _0x1cdcc5=function(_0x54796b,_0x16eb13){var _0x1547b7=squel[_0x872f('0x32')]()['into'](_0x872f('0x42'))[_0x872f('0x44')]([_0x872f('0x21'),_0x872f('0x33'),_0x872f('0x34'),_0x872f('0x26'),_0x16eb13,_0x872f('0x38'),_0x872f('0x35')],squel[_0x872f('0x36')]()[_0x872f('0x37')](_0x872f('0x21'),_0x872f('0x21'))[_0x872f('0x37')](_0x872f('0x39'),'scheduledAt')['field']('id',_0x872f('0x34'))['field'](LISTID[_0x872f('0x3f')](),_0x872f('0x26'))[_0x872f('0x37')](_0x54796b['id'][_0x872f('0x3f')](),_0x16eb13)[_0x872f('0x37')]('NOW()',_0x872f('0x38'))[_0x872f('0x37')]('NOW()',_0x872f('0x35'))[_0x872f('0x3a')]('cm_contacts')[_0x872f('0x3c')](_0x872f('0x3d'))['where'](_0x872f('0x3e'),LISTID['toString']())[_0x872f('0x3c')]('id\x20IN\x20?',squel[_0x872f('0x45')](hopperContacts))[_0x872f('0x3c')](_0x872f('0x40'))[_0x872f('0x3c')](_0x872f('0x41'),squel['select']()[_0x872f('0x37')](_0x872f('0x46'))[_0x872f('0x3a')]('cm_hopper_final')['where'](_0x16eb13+_0x872f('0x43'),_0x54796b['id'][_0x872f('0x3f')]()))[_0x872f('0x3c')]('phone\x20NOT\x20IN\x20(?)',squel[_0x872f('0x36')]()['field'](_0x872f('0x21'))[_0x872f('0x3a')](_0x872f('0x42'))['where'](_0x16eb13+_0x872f('0x43'),_0x54796b['id'][_0x872f('0x3f')]())))['toString']();return _0x1547b7;};function _0x19f996(_0x1fdcf4,_0x25a06c){var _0x1a0cc0=squel['insert']()[_0x872f('0x47')](_0x872f('0x42'))[_0x872f('0x44')]([_0x872f('0x21'),_0x872f('0x33'),'ContactId','ListId',_0x25a06c,_0x872f('0x38'),_0x872f('0x35')],squel[_0x872f('0x36')]()[_0x872f('0x37')](_0x872f('0x21'),'phone')[_0x872f('0x37')]('NOW()',_0x872f('0x33'))['field']('id','ContactId')[_0x872f('0x37')](LISTID[_0x872f('0x3f')](),'ListId')['field'](_0x1fdcf4['id'][_0x872f('0x3f')](),_0x25a06c)[_0x872f('0x37')](_0x872f('0x39'),_0x872f('0x38'))[_0x872f('0x37')](_0x872f('0x39'),_0x872f('0x35'))[_0x872f('0x3a')]('cm_contacts')['where']('deletedAt\x20IS\x20NULL')[_0x872f('0x3c')](_0x872f('0x3e'),LISTID['toString']())[_0x872f('0x3c')](_0x872f('0x48'),squel['str'](hopperContacts))[_0x872f('0x3c')](_0x872f('0x40')))[_0x872f('0x3f')]();return _0x1a0cc0;}function _0x5b297e(_0x528c14,_0x327376){var _0x4f3d98=squel['insert']()[_0x872f('0x47')](_0x872f('0x49'))[_0x872f('0x44')]([_0x872f('0x21'),'ContactId','ListId',_0x327376,_0x872f('0x38'),_0x872f('0x35')],squel[_0x872f('0x36')]()[_0x872f('0x37')](_0x872f('0x21'),_0x872f('0x21'))[_0x872f('0x37')]('id',_0x872f('0x34'))[_0x872f('0x37')](LISTID[_0x872f('0x3f')](),'ListId')[_0x872f('0x37')](_0x528c14['id']['toString'](),_0x327376)[_0x872f('0x37')](_0x872f('0x39'),_0x872f('0x38'))['field'](_0x872f('0x39'),'updatedAt')[_0x872f('0x3a')](_0x872f('0x3b'))[_0x872f('0x3c')](_0x872f('0x3d'))['where'](_0x872f('0x3e'),LISTID['toString']())[_0x872f('0x3c')](_0x872f('0x48'),squel[_0x872f('0x45')](hopperContacts))[_0x872f('0x3c')](_0x872f('0x40')))[_0x872f('0x3f')]();return _0x4f3d98;}return db[_0x872f('0x4a')]['findAll']({'where':{'type':'outbound'},'attributes':['id',_0x872f('0x4b')],'include':[{'model':db[_0x872f('0x4c')],'as':_0x872f('0x4d'),'where':{'id':LISTID}}]})[_0x872f('0x2b')](function(_0xbca2b0){var _0x389d14=[];if(_0xbca2b0){var _0x437f23;for(var _0x53d5bd=0x0,_0x1be5df;_0x53d5bd<_0xbca2b0[_0x872f('0x1a')];_0x53d5bd+=0x1){_0x1be5df=_0xbca2b0[_0x53d5bd][_0x872f('0x4e')]({'plain':!![]});switch(_0x1be5df['dialCheckDuplicateType']){case _0x872f('0x4f'):_0x389d14[_0x872f('0x2c')](db['sequelize'][_0x872f('0x50')](_0x1cdcc5(_0x1be5df,_0x872f('0x51')))[_0x872f('0x2b')](function(){})[_0x872f('0x52')](_0x2d377d()));break;case'onlyIfOpen':_0x389d14[_0x872f('0x2c')](db[_0x872f('0x53')][_0x872f('0x50')](_0x2de6c5(_0x1be5df,'VoiceQueueId'))['then'](function(){})['catch'](_0x2d377d()));break;default:_0x389d14['push'](db[_0x872f('0x53')][_0x872f('0x50')](_0x19f996(_0x1be5df,_0x872f('0x51')))[_0x872f('0x2b')](function(){})[_0x872f('0x52')](_0x2d377d()));}}}return _0x389d14;})[_0x872f('0x54')]()[_0x872f('0x2b')](function(){return db[_0x872f('0x4a')]['findAll']({'where':{'type':_0x872f('0x55')},'attributes':['id'],'include':[{'model':db[_0x872f('0x4c')],'as':_0x872f('0x56'),'where':{'id':LISTID}}]})[_0x872f('0x2b')](function(_0xfc9ff3){var _0x1e5129=[];if(_0xfc9ff3){var _0x266f60;for(var _0x106826=0x0,_0x10282c;_0x106826<_0xfc9ff3[_0x872f('0x1a')];_0x106826+=0x1){_0x10282c=_0xfc9ff3[_0x106826]['get']({'plain':!![]});_0x1e5129['push'](db[_0x872f('0x53')][_0x872f('0x50')](_0x5b297e(_0x10282c,_0x872f('0x51')))[_0x872f('0x2b')](function(){})[_0x872f('0x52')](_0x2d377d()));}}return _0x1e5129;})[_0x872f('0x54')]();})[_0x872f('0x2b')](function(){return db['Campaign']['findAll']({'attributes':['id',_0x872f('0x4b')],'include':[{'model':db[_0x872f('0x4c')],'as':_0x872f('0x4d'),'where':{'id':LISTID}}]})[_0x872f('0x2b')](function(_0xc3e011){var _0x43f387=[];if(_0xc3e011){for(var _0x54b5a3=0x0,_0x2284d2;_0x54b5a3<_0xc3e011[_0x872f('0x1a')];_0x54b5a3+=0x1){_0x2284d2=_0xc3e011[_0x54b5a3][_0x872f('0x4e')]({'plain':!![]});switch(_0x2284d2[_0x872f('0x4b')]){case _0x872f('0x4f'):_0x43f387['push'](db[_0x872f('0x53')][_0x872f('0x50')](_0x1cdcc5(_0x2284d2,_0x872f('0x57')))[_0x872f('0x2b')](function(){})[_0x872f('0x52')](_0x2d377d()));break;case'onlyIfOpen':_0x43f387[_0x872f('0x2c')](db[_0x872f('0x53')][_0x872f('0x50')](_0x2de6c5(_0x2284d2,_0x872f('0x57')))['then'](function(){})['catch'](_0x2d377d()));break;default:_0x43f387[_0x872f('0x2c')](db[_0x872f('0x53')]['query'](_0x19f996(_0x2284d2,_0x872f('0x57')))[_0x872f('0x2b')](function(){})[_0x872f('0x52')](_0x2d377d()));}}}return _0x43f387;})['all']();})['then'](function(){return db['Campaign'][_0x872f('0x58')]({'attributes':['id'],'include':[{'model':db[_0x872f('0x4c')],'as':_0x872f('0x56'),'where':{'id':LISTID}}]})[_0x872f('0x2b')](function(_0xdf9d31){var _0x205cc3=[];if(_0xdf9d31){for(var _0x2db836=0x0,_0x370037;_0x2db836<_0xdf9d31[_0x872f('0x1a')];_0x2db836+=0x1){_0x370037=_0xdf9d31[_0x2db836][_0x872f('0x4e')]({'plain':!![]});_0x205cc3[_0x872f('0x2c')](db[_0x872f('0x53')]['query'](_0x5b297e(_0x370037,_0x872f('0x57')))[_0x872f('0x2b')](function(){})[_0x872f('0x52')](_0x2d377d()));}}return _0x205cc3;})[_0x872f('0x54')]();})[_0x872f('0x52')](function(_0x294f51){logger[_0x872f('0x15')]('cmContact,\x20%s,\x20%s','generalCheckHopper',_0x294f51[_0x872f('0x1c')]);});}var processPromises=function(_0x477735){return BPromise[_0x872f('0x54')](promises)[_0x872f('0x2b')](function(_0x34c245){})[_0x872f('0x52')](function(_0x26c2e6){logger['error'](_0x872f('0x59'),JSON[_0x872f('0x2e')](_0x26c2e6));})[_0x872f('0x5a')](function(){socket['emit'](_0x872f('0x5b')+SOCKET_TIMESTAMP,{'success':success,'errors':errors,'duplicates':duplicates,'rows':rows});promises=[];success=0x0;errors=0x0;duplicates=0x0;rows=[];if(_0x477735){return _0x477735[_0x872f('0x5c')]();}});};var endCsv=function(){return BPromise[_0x872f('0x5d')]()[_0x872f('0x2b')](function(){if(hopperContacts){return checkHopper();}})[_0x872f('0x2b')](function(){socket['emit']('contact:csv_'+SOCKET_TIMESTAMP,{'finished':!![],'success':success,'errors':errors,'duplicates':duplicates,'rows':rows});try{fs[_0x872f('0x5e')](FILEPATH);}catch(_0x35c0fe){logger[_0x872f('0x15')](_0x872f('0x5f'),JSON['stringify'](_0x35c0fe));}finally{process['exit'](0x0);}});};process['on']('SIGINT',function(){logger[_0x872f('0x60')](_0x872f('0x61'));endCsv();});function main(){return BPromise['resolve']()['then'](function(){if(DUPLICATES){DUPLICATES=DUPLICATES[_0x872f('0x13')](',');return db[_0x872f('0x62')]['findAll']({'where':{'ListId':LISTID},'attributes':DUPLICATES,'raw':!![]});}})[_0x872f('0x2b')](function(_0x506077){var _0x5f122b=fs['createReadStream'](FILEPATH,{'highWaterMark':0xf*0x400*0x400});Papa[_0x872f('0x63')](_0x5f122b,{'header':!![],'skipEmptyLines':!![],'step':function(_0x4cdf04,_0x28e6c9){total+=0x1;var _0x18e924=total;promises[_0x872f('0x2c')](checkRow(_0x4cdf04,_0x506077,_0x18e924)['then'](function(){success+=0x1;})[_0x872f('0x52')](function(_0x4eafd0){if(_0x4eafd0[_0x872f('0x15')]){errors+=0x1;delete _0x4eafd0['error'];}else if(_0x4eafd0[_0x872f('0x64')]){duplicates+=0x1;delete _0x4eafd0[_0x872f('0x64')];}rows[_0x872f('0x2c')](_0x4eafd0);}));if(total%0xc8===0x0){_0x28e6c9[_0x872f('0x65')]();return processPromises(_0x28e6c9);}},'complete':function(){return processPromises()['then'](function(){logger[_0x872f('0x60')]('CSV\x20parsed\x20correctly!');endCsv();});},'error':function(_0x2c01f8,_0x1cdc0d){logger[_0x872f('0x60')]('CSV\x20parse\x20error',JSON[_0x872f('0x2e')](_0x2c01f8));endCsv();}});})[_0x872f('0x52')](function(_0xd98351){logger['error'](_0x872f('0x66'),JSON['stringify'](_0xd98351));});}main();
\ No newline at end of file
+var _0xc2f2=['Campaign','CmList','Lists','CampaignId','cmContact,\x20%s,\x20%s','generalCheckHopper','Error\x20processing\x20rows\x20block:','stringify','finally','emit','contact:csv_','resolve','unlinkSync','exit','SIGINT','info','CSV\x20import\x20process\x20stopped!','parse','pause','CSV\x20parsed\x20correctly!','CSV\x20parse\x20error','Error\x20executing\x20contact\x20csv\x20import:','bluebird','lodash','squel','papaparse','ioredis','../../../mysqldb','../../../config/logger','api','redis','defaults','localhost','socket.io-emitter','../../../api/cmContact/cmContact.socket','argv','undefined','null','Missing\x20filepath\x20parameter!','Missing\x20binding\x20parameters!','zipObject','split','Missing\x20ListId\x20parameter!','Missing\x20socket_timestamp\x20parameter!','error','contact','test','isNil','The\x20row\x20is\x20empty\x20or\x20the\x20number\x20of\x20parameters\x20does\x20not\x20match\x20the\x20columns!','errors','map','message','join','data','firstName\x20not\x20specified!','phone','phone\x20not\x20specified!','birthDate','YYYY-MM-DD','birthDate\x20format\x20is\x20invalid,\x20YYYY-MM-DD\x20format\x20is\x20supported!','email','email\x20format\x20is\x20not\x20valid!','ListId','CompanyId','find','duplicate','Duplicate\x20Contact','CmContact','create','then','push','pick','catch','Error\x20while\x20creating\x20contact:\x20','cmContact','insert','into','cm_hopper','fromQuery','scheduledAt','createdAt','updatedAt','field','ContactId','toString','NOW()','from','cm_contacts','where','deletedAt\x20IS\x20NULL','ListId\x20=\x20?','phone\x20IS\x20NOT\x20NULL','phone\x20NOT\x20IN\x20(?)','select','id\x20IN\x20?','calleridnum','cm_hopper_final','\x20=\x20?','str','cm_hopper_black','findAll','dialCheckDuplicateType','length','get','always','query','onlyIfOpen','sequelize','VoiceQueueId','all','VoiceQueue','outbound','BlackLists'];(function(_0x558e53,_0x56ffc4){var _0x1fd3a2=function(_0x5c2d13){while(--_0x5c2d13){_0x558e53['push'](_0x558e53['shift']());}};_0x1fd3a2(++_0x56ffc4);}(_0xc2f2,0x169));var _0x2c2f=function(_0x5af97c,_0x24a49f){_0x5af97c=_0x5af97c-0x0;var _0x3472ae=_0xc2f2[_0x5af97c];return _0x3472ae;};'use strict';var BPromise=require(_0x2c2f('0x0'));var util=require('util');var _=require(_0x2c2f('0x1'));var fs=require('fs');var squel=require(_0x2c2f('0x2'));var Papa=require(_0x2c2f('0x3'));var Redis=require(_0x2c2f('0x4'));var db=require(_0x2c2f('0x5'))['db'];var config=require('../../../config/environment');var logger=require(_0x2c2f('0x6'))(_0x2c2f('0x7'));config[_0x2c2f('0x8')]=_[_0x2c2f('0x9')](config[_0x2c2f('0x8')],{'host':_0x2c2f('0xa'),'port':0x18eb});var socket=require(_0x2c2f('0xb'))(new Redis(config[_0x2c2f('0x8')]));require(_0x2c2f('0xc'))['register'](socket);try{if(!process['argv'][0x2]||process[_0x2c2f('0xd')][0x2]===_0x2c2f('0xe')||process[_0x2c2f('0xd')][0x2]===_0x2c2f('0xf')){throw new Error(_0x2c2f('0x10'));}var FILEPATH=process[_0x2c2f('0xd')][0x2];if(!process[_0x2c2f('0xd')][0x3]||process[_0x2c2f('0xd')][0x3]===_0x2c2f('0xe')||process[_0x2c2f('0xd')][0x3]===_0x2c2f('0xf')||!process[_0x2c2f('0xd')][0x4]||process[_0x2c2f('0xd')][0x4]==='undefined'||process[_0x2c2f('0xd')][0x4]===_0x2c2f('0xf')){throw new Error(_0x2c2f('0x11'));}var FIELDS=_[_0x2c2f('0x12')](process[_0x2c2f('0xd')][0x3][_0x2c2f('0x13')](','),process[_0x2c2f('0xd')][0x4][_0x2c2f('0x13')](','));if(!process['argv'][0x5]||process[_0x2c2f('0xd')][0x5]==='undefined'||process[_0x2c2f('0xd')][0x5]===_0x2c2f('0xf')){throw new Error(_0x2c2f('0x14'));}var LISTID=process[_0x2c2f('0xd')][0x5];var COMPANYID=process['argv'][0x6]&&process[_0x2c2f('0xd')][0x6]!=='undefined'&&process[_0x2c2f('0xd')][0x6]!==_0x2c2f('0xf')?process[_0x2c2f('0xd')][0x6]:null;var DUPLICATES=process[_0x2c2f('0xd')][0x7]&&process['argv'][0x7]!==_0x2c2f('0xe')&&process['argv'][0x7]!=='null'?process[_0x2c2f('0xd')][0x7]:null;if(!process[_0x2c2f('0xd')][0x8]||process[_0x2c2f('0xd')][0x8]===_0x2c2f('0xe')||process[_0x2c2f('0xd')][0x8]===_0x2c2f('0xf')){throw new Error(_0x2c2f('0x15'));}var SOCKET_TIMESTAMP=process[_0x2c2f('0xd')][0x8];}catch(_0xdf0efa){logger[_0x2c2f('0x16')](_0xdf0efa);endCsv();}var total=0x0;var pTotal=0x0;var success=0x0;var errors=0x0;var duplicates=0x0;var rows=[];var hopperContacts='';var promises=[];var index=0x0;var alreadyInvalid=![];function handleCheckRowError(_0x128abe,_0x1afcba,_0x1984a4,_0x109517){var _0xbbcd79={'message':_0x1afcba};_0xbbcd79[_0x128abe]=!![];if(_0x1984a4){_0xbbcd79[_0x2c2f('0x17')]=_0x1984a4;}if(_0x109517){_0xbbcd79['index']=_0x109517;}return _0xbbcd79;}function isEmail(_0x5cfe89){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))*$/[_0x2c2f('0x18')](_0x5cfe89);}function checkRow(_0x27863f,_0x103e4f,_0x512434){return new BPromise(function(_0x17f75a,_0x10aee3){if(_[_0x2c2f('0x19')](_0x27863f)){return _0x10aee3(handleCheckRowError('error',_0x2c2f('0x1a'),null,_0x512434));}if(_0x27863f[_0x2c2f('0x1b')]&&_0x27863f[_0x2c2f('0x1b')]['length']){var _0x53259d=_[_0x2c2f('0x1c')](_0x27863f['errors'],_0x2c2f('0x1d'))[_0x2c2f('0x1e')](';');return _0x10aee3(handleCheckRowError(_0x2c2f('0x16'),_0x53259d,null,_0x512434));}var _0x8c772f={};for(var _0x442d84 in FIELDS){if(FIELDS['hasOwnProperty'](_0x442d84)&&FIELDS[_0x442d84]){_0x8c772f[_0x442d84]=_0x27863f['data'][0x0][FIELDS[_0x442d84]]||_0x27863f[_0x2c2f('0x1f')][0x0]['\ufeff'+FIELDS[_0x442d84]];}}if(!_0x8c772f['firstName']){return _0x10aee3(handleCheckRowError(_0x2c2f('0x16'),_0x2c2f('0x20'),null,_0x512434));}if(!_0x8c772f[_0x2c2f('0x21')]){return _0x10aee3(handleCheckRowError(_0x2c2f('0x16'),_0x2c2f('0x22'),null,_0x512434));}if(_0x8c772f['birthDate']){var _0x3c447b=moment(_0x8c772f[_0x2c2f('0x23')],_0x2c2f('0x24'));if(!_0x3c447b['isValid']()){return _0x10aee3(handleCheckRowError(_0x2c2f('0x16'),_0x2c2f('0x25'),null,_0x512434));}}if(_0x8c772f[_0x2c2f('0x26')]){if(!isEmail(_0x8c772f[_0x2c2f('0x26')])){return _0x10aee3(handleCheckRowError(_0x2c2f('0x16'),_0x2c2f('0x27'),null,_0x512434));}}_0x8c772f[_0x2c2f('0x28')]=LISTID;_0x8c772f[_0x2c2f('0x29')]=COMPANYID||undefined;if(DUPLICATES&&DUPLICATES['length']&&_0x103e4f){var _0x299249={};for(var _0x38043d=0x0,_0x56d297=DUPLICATES['length'];_0x38043d<_0x56d297;_0x38043d+=0x1){_0x299249[DUPLICATES[_0x38043d]]=_0x8c772f[DUPLICATES[_0x38043d]];}var _0x7ff074=_[_0x2c2f('0x2a')](_0x103e4f,_0x299249);if(_0x7ff074){return _0x10aee3(handleCheckRowError(_0x2c2f('0x2b'),_0x2c2f('0x2c'),_0x7ff074,_0x512434));}}return db[_0x2c2f('0x2d')][_0x2c2f('0x2e')](_0x8c772f,{'raw':!![],'hooks':![],'fields':_['keys'](_0x8c772f)})[_0x2c2f('0x2f')](function(_0x5c7a33){if(DUPLICATES&&DUPLICATES['length']&&_0x103e4f){_0x103e4f[_0x2c2f('0x30')](_[_0x2c2f('0x31')](_0x8c772f,DUPLICATES));}hopperContacts+=(hopperContacts?',':'')+_0x5c7a33['id'];return _0x17f75a();})[_0x2c2f('0x32')](function(_0x2b6de1){return _0x10aee3(handleCheckRowError(_0x2c2f('0x16'),_0x2c2f('0x33')+(_0x2b6de1[_0x2c2f('0x1d')]||JSON['stringify'](_0x2b6de1)),null,_0x512434));});});}function checkHopper(){function _0x2fe209(){return function(_0x46ffb4){logger['error'](_0x2c2f('0x34'),'checkHopper',util['inspect'](_0x46ffb4,{'showHidden':![],'depth':null}));};}var _0x1bfdd2=function(_0x522d94,_0x5da945){var _0x5aa76b=squel[_0x2c2f('0x35')]()[_0x2c2f('0x36')](_0x2c2f('0x37'))[_0x2c2f('0x38')](['phone',_0x2c2f('0x39'),'ContactId',_0x2c2f('0x28'),_0x5da945,_0x2c2f('0x3a'),_0x2c2f('0x3b')],squel['select']()[_0x2c2f('0x3c')](_0x2c2f('0x21'),_0x2c2f('0x21'))['field']('NOW()',_0x2c2f('0x39'))[_0x2c2f('0x3c')]('id',_0x2c2f('0x3d'))[_0x2c2f('0x3c')](LISTID[_0x2c2f('0x3e')](),'ListId')[_0x2c2f('0x3c')](_0x522d94['id'][_0x2c2f('0x3e')](),_0x5da945)['field']('NOW()',_0x2c2f('0x3a'))[_0x2c2f('0x3c')](_0x2c2f('0x3f'),_0x2c2f('0x3b'))[_0x2c2f('0x40')](_0x2c2f('0x41'))[_0x2c2f('0x42')](_0x2c2f('0x43'))['where'](_0x2c2f('0x44'),LISTID[_0x2c2f('0x3e')]())[_0x2c2f('0x42')](_0x2c2f('0x45'))[_0x2c2f('0x42')](_0x2c2f('0x46'),squel[_0x2c2f('0x47')]()[_0x2c2f('0x3c')](_0x2c2f('0x21'))['from'](_0x2c2f('0x37'))['where'](_0x5da945+'\x20=\x20?',_0x522d94['id'][_0x2c2f('0x3e')]())))['toString']();return _0x5aa76b;};var _0x42be21=function(_0x3f360e,_0xf7ee88){var _0x3d6220=squel[_0x2c2f('0x35')]()[_0x2c2f('0x36')]('cm_hopper')['fromQuery']([_0x2c2f('0x21'),_0x2c2f('0x39'),_0x2c2f('0x3d'),_0x2c2f('0x28'),_0xf7ee88,_0x2c2f('0x3a'),_0x2c2f('0x3b')],squel[_0x2c2f('0x47')]()[_0x2c2f('0x3c')](_0x2c2f('0x21'),_0x2c2f('0x21'))['field'](_0x2c2f('0x3f'),_0x2c2f('0x39'))['field']('id','ContactId')['field'](LISTID[_0x2c2f('0x3e')](),_0x2c2f('0x28'))[_0x2c2f('0x3c')](_0x3f360e['id']['toString'](),_0xf7ee88)[_0x2c2f('0x3c')]('NOW()','createdAt')[_0x2c2f('0x3c')]('NOW()',_0x2c2f('0x3b'))[_0x2c2f('0x40')](_0x2c2f('0x41'))['where'](_0x2c2f('0x43'))['where']('ListId\x20=\x20?',LISTID[_0x2c2f('0x3e')]())[_0x2c2f('0x42')](_0x2c2f('0x48'),squel['str'](hopperContacts))[_0x2c2f('0x42')]('phone\x20IS\x20NOT\x20NULL')[_0x2c2f('0x42')](_0x2c2f('0x46'),squel['select']()[_0x2c2f('0x3c')](_0x2c2f('0x49'))[_0x2c2f('0x40')](_0x2c2f('0x4a'))[_0x2c2f('0x42')](_0xf7ee88+_0x2c2f('0x4b'),_0x3f360e['id']['toString']()))['where'](_0x2c2f('0x46'),squel[_0x2c2f('0x47')]()['field'](_0x2c2f('0x21'))[_0x2c2f('0x40')]('cm_hopper')[_0x2c2f('0x42')](_0xf7ee88+_0x2c2f('0x4b'),_0x3f360e['id']['toString']())))[_0x2c2f('0x3e')]();return _0x3d6220;};function _0x510563(_0xeaefc7,_0x2da4b0){var _0x282b05=squel['insert']()[_0x2c2f('0x36')](_0x2c2f('0x37'))[_0x2c2f('0x38')]([_0x2c2f('0x21'),'scheduledAt','ContactId',_0x2c2f('0x28'),_0x2da4b0,'createdAt',_0x2c2f('0x3b')],squel[_0x2c2f('0x47')]()[_0x2c2f('0x3c')](_0x2c2f('0x21'),'phone')[_0x2c2f('0x3c')](_0x2c2f('0x3f'),'scheduledAt')[_0x2c2f('0x3c')]('id',_0x2c2f('0x3d'))[_0x2c2f('0x3c')](LISTID[_0x2c2f('0x3e')](),_0x2c2f('0x28'))[_0x2c2f('0x3c')](_0xeaefc7['id']['toString'](),_0x2da4b0)['field'](_0x2c2f('0x3f'),'createdAt')[_0x2c2f('0x3c')](_0x2c2f('0x3f'),'updatedAt')[_0x2c2f('0x40')](_0x2c2f('0x41'))[_0x2c2f('0x42')]('deletedAt\x20IS\x20NULL')[_0x2c2f('0x42')]('ListId\x20=\x20?',LISTID[_0x2c2f('0x3e')]())[_0x2c2f('0x42')]('id\x20IN\x20?',squel[_0x2c2f('0x4c')](hopperContacts))[_0x2c2f('0x42')](_0x2c2f('0x45')))['toString']();return _0x282b05;}function _0x4de468(_0x1ed398,_0xbd7bd9){var _0x400430=squel['insert']()[_0x2c2f('0x36')](_0x2c2f('0x4d'))['fromQuery']([_0x2c2f('0x21'),_0x2c2f('0x3d'),_0x2c2f('0x28'),_0xbd7bd9,'createdAt',_0x2c2f('0x3b')],squel['select']()['field'](_0x2c2f('0x21'),_0x2c2f('0x21'))[_0x2c2f('0x3c')]('id',_0x2c2f('0x3d'))[_0x2c2f('0x3c')](LISTID[_0x2c2f('0x3e')](),_0x2c2f('0x28'))[_0x2c2f('0x3c')](_0x1ed398['id'][_0x2c2f('0x3e')](),_0xbd7bd9)['field'](_0x2c2f('0x3f'),_0x2c2f('0x3a'))[_0x2c2f('0x3c')](_0x2c2f('0x3f'),_0x2c2f('0x3b'))[_0x2c2f('0x40')]('cm_contacts')[_0x2c2f('0x42')](_0x2c2f('0x43'))['where'](_0x2c2f('0x44'),LISTID[_0x2c2f('0x3e')]())[_0x2c2f('0x42')]('id\x20IN\x20?',squel['str'](hopperContacts))[_0x2c2f('0x42')](_0x2c2f('0x45')))[_0x2c2f('0x3e')]();return _0x400430;}return db['VoiceQueue'][_0x2c2f('0x4e')]({'where':{'type':'outbound'},'attributes':['id',_0x2c2f('0x4f')],'include':[{'model':db['CmList'],'as':'Lists','where':{'id':LISTID}}]})[_0x2c2f('0x2f')](function(_0x503744){var _0x559977=[];if(_0x503744){var _0x48bb32;for(var _0x2b78f5=0x0,_0x195313;_0x2b78f5<_0x503744[_0x2c2f('0x50')];_0x2b78f5+=0x1){_0x195313=_0x503744[_0x2b78f5][_0x2c2f('0x51')]({'plain':!![]});switch(_0x195313[_0x2c2f('0x4f')]){case _0x2c2f('0x52'):_0x559977['push'](db['sequelize'][_0x2c2f('0x53')](_0x42be21(_0x195313,'VoiceQueueId'))[_0x2c2f('0x2f')](function(){})[_0x2c2f('0x32')](_0x2fe209()));break;case _0x2c2f('0x54'):_0x559977[_0x2c2f('0x30')](db[_0x2c2f('0x55')][_0x2c2f('0x53')](_0x1bfdd2(_0x195313,_0x2c2f('0x56')))[_0x2c2f('0x2f')](function(){})['catch'](_0x2fe209()));break;default:_0x559977['push'](db['sequelize'][_0x2c2f('0x53')](_0x510563(_0x195313,'VoiceQueueId'))[_0x2c2f('0x2f')](function(){})[_0x2c2f('0x32')](_0x2fe209()));}}}return _0x559977;})[_0x2c2f('0x57')]()[_0x2c2f('0x2f')](function(){return db[_0x2c2f('0x58')][_0x2c2f('0x4e')]({'where':{'type':_0x2c2f('0x59')},'attributes':['id'],'include':[{'model':db['CmList'],'as':_0x2c2f('0x5a'),'where':{'id':LISTID}}]})['then'](function(_0x5db28b){var _0x40a200=[];if(_0x5db28b){var _0x478a2f;for(var _0x43fc07=0x0,_0x50778b;_0x43fc07<_0x5db28b[_0x2c2f('0x50')];_0x43fc07+=0x1){_0x50778b=_0x5db28b[_0x43fc07][_0x2c2f('0x51')]({'plain':!![]});_0x40a200[_0x2c2f('0x30')](db[_0x2c2f('0x55')][_0x2c2f('0x53')](_0x4de468(_0x50778b,_0x2c2f('0x56')))[_0x2c2f('0x2f')](function(){})['catch'](_0x2fe209()));}}return _0x40a200;})[_0x2c2f('0x57')]();})[_0x2c2f('0x2f')](function(){return db[_0x2c2f('0x5b')][_0x2c2f('0x4e')]({'attributes':['id','dialCheckDuplicateType'],'include':[{'model':db[_0x2c2f('0x5c')],'as':_0x2c2f('0x5d'),'where':{'id':LISTID}}]})[_0x2c2f('0x2f')](function(_0x189667){var _0x1f40a7=[];if(_0x189667){for(var _0x504d02=0x0,_0x587108;_0x504d02<_0x189667[_0x2c2f('0x50')];_0x504d02+=0x1){_0x587108=_0x189667[_0x504d02][_0x2c2f('0x51')]({'plain':!![]});switch(_0x587108[_0x2c2f('0x4f')]){case _0x2c2f('0x52'):_0x1f40a7[_0x2c2f('0x30')](db[_0x2c2f('0x55')]['query'](_0x42be21(_0x587108,'CampaignId'))['then'](function(){})[_0x2c2f('0x32')](_0x2fe209()));break;case'onlyIfOpen':_0x1f40a7[_0x2c2f('0x30')](db[_0x2c2f('0x55')][_0x2c2f('0x53')](_0x1bfdd2(_0x587108,_0x2c2f('0x5e')))['then'](function(){})[_0x2c2f('0x32')](_0x2fe209()));break;default:_0x1f40a7[_0x2c2f('0x30')](db['sequelize'][_0x2c2f('0x53')](_0x510563(_0x587108,_0x2c2f('0x5e')))['then'](function(){})[_0x2c2f('0x32')](_0x2fe209()));}}}return _0x1f40a7;})[_0x2c2f('0x57')]();})[_0x2c2f('0x2f')](function(){return db['Campaign'][_0x2c2f('0x4e')]({'attributes':['id'],'include':[{'model':db[_0x2c2f('0x5c')],'as':'BlackLists','where':{'id':LISTID}}]})[_0x2c2f('0x2f')](function(_0x4f3139){var _0x4fb7eb=[];if(_0x4f3139){for(var _0x3a36f4=0x0,_0x17a776;_0x3a36f4<_0x4f3139[_0x2c2f('0x50')];_0x3a36f4+=0x1){_0x17a776=_0x4f3139[_0x3a36f4]['get']({'plain':!![]});_0x4fb7eb[_0x2c2f('0x30')](db[_0x2c2f('0x55')][_0x2c2f('0x53')](_0x4de468(_0x17a776,'CampaignId'))['then'](function(){})[_0x2c2f('0x32')](_0x2fe209()));}}return _0x4fb7eb;})[_0x2c2f('0x57')]();})[_0x2c2f('0x32')](function(_0x54e826){logger[_0x2c2f('0x16')](_0x2c2f('0x5f'),_0x2c2f('0x60'),_0x54e826[_0x2c2f('0x1d')]);});}var processPromises=function(_0x4f9466){return BPromise[_0x2c2f('0x57')](promises)['then'](function(_0x51fa88){})['catch'](function(_0x7cfe2){logger[_0x2c2f('0x16')](_0x2c2f('0x61'),JSON[_0x2c2f('0x62')](_0x7cfe2));})[_0x2c2f('0x63')](function(){socket[_0x2c2f('0x64')](_0x2c2f('0x65')+SOCKET_TIMESTAMP,{'success':success,'errors':errors,'duplicates':duplicates,'rows':rows});promises=[];success=0x0;errors=0x0;duplicates=0x0;rows=[];if(_0x4f9466){return _0x4f9466['resume']();}});};var endCsv=function(){return BPromise[_0x2c2f('0x66')]()[_0x2c2f('0x2f')](function(){if(hopperContacts){return checkHopper();}})[_0x2c2f('0x2f')](function(){socket[_0x2c2f('0x64')](_0x2c2f('0x65')+SOCKET_TIMESTAMP,{'finished':!![],'success':success,'errors':errors,'duplicates':duplicates,'rows':rows});try{fs[_0x2c2f('0x67')](FILEPATH);}catch(_0x1b400f){logger[_0x2c2f('0x16')]('Unable\x20to\x20delete\x20temp\x20file:',JSON[_0x2c2f('0x62')](_0x1b400f));}finally{process[_0x2c2f('0x68')](0x0);}});};process['on'](_0x2c2f('0x69'),function(){logger[_0x2c2f('0x6a')](_0x2c2f('0x6b'));endCsv();});function main(){return BPromise[_0x2c2f('0x66')]()[_0x2c2f('0x2f')](function(){if(DUPLICATES){DUPLICATES=DUPLICATES[_0x2c2f('0x13')](',');return db['CmContact'][_0x2c2f('0x4e')]({'where':{'ListId':LISTID},'attributes':DUPLICATES,'raw':!![]});}})[_0x2c2f('0x2f')](function(_0x35312a){var _0x2fb8cf=fs['createReadStream'](FILEPATH,{'highWaterMark':0xf*0x400*0x400});Papa[_0x2c2f('0x6c')](_0x2fb8cf,{'header':!![],'skipEmptyLines':!![],'step':function(_0xed8f42,_0x1f7338){total+=0x1;var _0x4dcf59=total;promises[_0x2c2f('0x30')](checkRow(_0xed8f42,_0x35312a,_0x4dcf59)['then'](function(){success+=0x1;})[_0x2c2f('0x32')](function(_0x43f9f0){if(_0x43f9f0['error']){errors+=0x1;delete _0x43f9f0[_0x2c2f('0x16')];}else if(_0x43f9f0[_0x2c2f('0x2b')]){duplicates+=0x1;delete _0x43f9f0['duplicate'];}rows[_0x2c2f('0x30')](_0x43f9f0);}));if(total%0xc8===0x0){_0x1f7338[_0x2c2f('0x6d')]();return processPromises(_0x1f7338);}},'complete':function(){return processPromises()[_0x2c2f('0x2f')](function(){logger['info'](_0x2c2f('0x6e'));endCsv();});},'error':function(_0x4da1f9,_0x346e61){logger['info'](_0x2c2f('0x6f'),JSON[_0x2c2f('0x62')](_0x4da1f9));endCsv();}});})[_0x2c2f('0x32')](function(_0xe6d644){logger[_0x2c2f('0x16')](_0x2c2f('0x70'),JSON[_0x2c2f('0x62')](_0xe6d644));});}main();
\ No newline at end of file