Built motion from commit 43538d75.|2.5.35
[motion2.git] / server / components / import / cm / csv.js
index 708479b..45549a3 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x0011=['toString','from','cm_contacts','where','deletedAt\x20IS\x20NULL','phone\x20IS\x20NOT\x20NULL','phone\x20NOT\x20IN\x20(?)','ListId\x20=\x20?','id\x20IN\x20?','calleridnum','cm_hopper_final','\x20=\x20?','fromQuery','str','cm_hopper_black','VoiceQueue','outbound','dialCheckDuplicateType','Lists','get','always','query','VoiceQueueId','onlyIfOpen','sequelize','all','findAll','CmList','CampaignId','Campaign','BlackLists','cmContact,\x20%s,\x20%s','finally','contact:csv_','resume','resolve','emit','unlinkSync','Unable\x20to\x20delete\x20temp\x20file:','info','createReadStream','duplicate','pause','CSV\x20parse\x20error','Error\x20executing\x20contact\x20csv\x20import:','lodash','squel','papaparse','ioredis','../../../mysqldb','redis','defaults','localhost','socket.io-emitter','../../../api/cmContact/cmContact.socket','register','argv','undefined','null','Missing\x20filepath\x20parameter!','zipObject','split','Missing\x20ListId\x20parameter!','Missing\x20socket_timestamp\x20parameter!','error','contact','index','test','isNil','length','map','errors','message','hasOwnProperty','data','firstName','phone','phone\x20not\x20specified!','birthDate','YYYY-MM-DD','isValid','birthDate\x20format\x20is\x20invalid,\x20YYYY-MM-DD\x20format\x20is\x20supported!','email','email\x20format\x20is\x20not\x20valid!','find','Duplicate\x20Contact','CmContact','create','keys','then','push','pick','catch','Error\x20while\x20creating\x20contact:\x20','stringify','cmContact','checkHopper','inspect','insert','into','cm_hopper','ContactId','ListId','createdAt','updatedAt','select','field','NOW()','scheduledAt'];(function(_0x4c8d22,_0x178328){var _0x58bfa8=function(_0x989fbe){while(--_0x989fbe){_0x4c8d22['push'](_0x4c8d22['shift']());}};_0x58bfa8(++_0x178328);}(_0x0011,0x107));var _0x1001=function(_0x160c73,_0x2ee678){_0x160c73=_0x160c73-0x0;var _0xd9302=_0x0011[_0x160c73];return _0xd9302;};'use strict';var BPromise=require('bluebird');var util=require('util');var _=require(_0x1001('0x0'));var fs=require('fs');var squel=require(_0x1001('0x1'));var Papa=require(_0x1001('0x2'));var Redis=require(_0x1001('0x3'));var db=require(_0x1001('0x4'))['db'];var config=require('../../../config/environment');var logger=require('../../../config/logger')('api');config[_0x1001('0x5')]=_[_0x1001('0x6')](config[_0x1001('0x5')],{'host':_0x1001('0x7'),'port':0x18eb});var socket=require(_0x1001('0x8'))(new Redis(config[_0x1001('0x5')]));require(_0x1001('0x9'))[_0x1001('0xa')](socket);try{if(!process['argv'][0x2]||process[_0x1001('0xb')][0x2]===_0x1001('0xc')||process[_0x1001('0xb')][0x2]===_0x1001('0xd')){throw new Error(_0x1001('0xe'));}var FILEPATH=process['argv'][0x2];if(!process[_0x1001('0xb')][0x3]||process['argv'][0x3]===_0x1001('0xc')||process['argv'][0x3]==='null'||!process[_0x1001('0xb')][0x4]||process[_0x1001('0xb')][0x4]===_0x1001('0xc')||process['argv'][0x4]===_0x1001('0xd')){throw new Error('Missing\x20binding\x20parameters!');}var FIELDS=_[_0x1001('0xf')](process[_0x1001('0xb')][0x3]['split'](','),process[_0x1001('0xb')][0x4][_0x1001('0x10')](','));if(!process[_0x1001('0xb')][0x5]||process[_0x1001('0xb')][0x5]==='undefined'||process[_0x1001('0xb')][0x5]===_0x1001('0xd')){throw new Error(_0x1001('0x11'));}var LISTID=process[_0x1001('0xb')][0x5];var COMPANYID=process[_0x1001('0xb')][0x6]&&process[_0x1001('0xb')][0x6]!==_0x1001('0xc')&&process[_0x1001('0xb')][0x6]!==_0x1001('0xd')?process[_0x1001('0xb')][0x6]:null;var DUPLICATES=process[_0x1001('0xb')][0x7]&&process[_0x1001('0xb')][0x7]!==_0x1001('0xc')&&process[_0x1001('0xb')][0x7]!==_0x1001('0xd')?process['argv'][0x7]:null;if(!process[_0x1001('0xb')][0x8]||process['argv'][0x8]==='undefined'||process[_0x1001('0xb')][0x8]===_0x1001('0xd')){throw new Error(_0x1001('0x12'));}var SOCKET_TIMESTAMP=process[_0x1001('0xb')][0x8];}catch(_0x3c6b3f){logger[_0x1001('0x13')](_0x3c6b3f);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(_0x3b99ad,_0x33dfc7,_0xe0620c,_0x1c03f7){var _0x7b42e2={'message':_0x33dfc7};_0x7b42e2[_0x3b99ad]=!![];if(_0xe0620c){_0x7b42e2[_0x1001('0x14')]=_0xe0620c;}if(_0x1c03f7){_0x7b42e2[_0x1001('0x15')]=_0x1c03f7;}return _0x7b42e2;}function isEmail(_0x3611a4){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))*$/[_0x1001('0x16')](_0x3611a4);}function checkRow(_0x35bf1e,_0x1cc82e,_0xc70e75){return new BPromise(function(_0x1a9e84,_0x59b4a6){if(_[_0x1001('0x17')](_0x35bf1e)){return _0x59b4a6(handleCheckRowError(_0x1001('0x13'),'The\x20row\x20is\x20empty\x20or\x20the\x20number\x20of\x20parameters\x20does\x20not\x20match\x20the\x20columns!',null,_0xc70e75));}if(_0x35bf1e['errors']&&_0x35bf1e['errors'][_0x1001('0x18')]){var _0x12a10d=_[_0x1001('0x19')](_0x35bf1e[_0x1001('0x1a')],_0x1001('0x1b'))['join'](';');return _0x59b4a6(handleCheckRowError('error',_0x12a10d,null,_0xc70e75));}var _0x30793d={};for(var _0x484546 in FIELDS){if(FIELDS[_0x1001('0x1c')](_0x484546)&&FIELDS[_0x484546]){_0x30793d[_0x484546]=_0x35bf1e[_0x1001('0x1d')][0x0][FIELDS[_0x484546]]||_0x35bf1e[_0x1001('0x1d')][0x0]['\ufeff'+FIELDS[_0x484546]];}}if(!_0x30793d[_0x1001('0x1e')]){return _0x59b4a6(handleCheckRowError('error','firstName\x20not\x20specified!',null,_0xc70e75));}if(!_0x30793d[_0x1001('0x1f')]){return _0x59b4a6(handleCheckRowError('error',_0x1001('0x20'),null,_0xc70e75));}if(_0x30793d[_0x1001('0x21')]){var _0x3e8efc=moment(_0x30793d[_0x1001('0x21')],_0x1001('0x22'));if(!_0x3e8efc[_0x1001('0x23')]()){return _0x59b4a6(handleCheckRowError('error',_0x1001('0x24'),null,_0xc70e75));}}if(_0x30793d[_0x1001('0x25')]){if(!isEmail(_0x30793d[_0x1001('0x25')])){return _0x59b4a6(handleCheckRowError(_0x1001('0x13'),_0x1001('0x26'),null,_0xc70e75));}}_0x30793d['ListId']=LISTID;_0x30793d['CompanyId']=COMPANYID||undefined;if(DUPLICATES&&DUPLICATES[_0x1001('0x18')]&&_0x1cc82e){var _0x13a10d={};for(var _0x35bdf6=0x0,_0xd96054=DUPLICATES[_0x1001('0x18')];_0x35bdf6<_0xd96054;_0x35bdf6+=0x1){_0x13a10d[DUPLICATES[_0x35bdf6]]=_0x30793d[DUPLICATES[_0x35bdf6]];}var _0x31e805=_[_0x1001('0x27')](_0x1cc82e,_0x13a10d);if(_0x31e805){return _0x59b4a6(handleCheckRowError('duplicate',_0x1001('0x28'),_0x31e805,_0xc70e75));}}return db[_0x1001('0x29')][_0x1001('0x2a')](_0x30793d,{'raw':!![],'hooks':![],'fields':_[_0x1001('0x2b')](_0x30793d)})[_0x1001('0x2c')](function(_0x44309e){if(DUPLICATES&&DUPLICATES[_0x1001('0x18')]&&_0x1cc82e){_0x1cc82e[_0x1001('0x2d')](_[_0x1001('0x2e')](_0x30793d,DUPLICATES));}hopperContacts+=(hopperContacts?',':'')+_0x44309e['id'];return _0x1a9e84();})[_0x1001('0x2f')](function(_0x514f30){return _0x59b4a6(handleCheckRowError(_0x1001('0x13'),_0x1001('0x30')+(_0x514f30[_0x1001('0x1b')]||JSON[_0x1001('0x31')](_0x514f30)),null,_0xc70e75));});});}function checkHopper(){function _0x457336(){return function(_0x53d236){logger[_0x1001('0x13')](_0x1001('0x32'),_0x1001('0x33'),util[_0x1001('0x34')](_0x53d236,{'showHidden':![],'depth':null}));};}var _0x1c781e=function(_0x46b658,_0x597bb6){var _0x3d75e0=squel[_0x1001('0x35')]()[_0x1001('0x36')](_0x1001('0x37'))['fromQuery']([_0x1001('0x1f'),'scheduledAt',_0x1001('0x38'),_0x1001('0x39'),_0x597bb6,_0x1001('0x3a'),_0x1001('0x3b')],squel[_0x1001('0x3c')]()[_0x1001('0x3d')](_0x1001('0x1f'),'phone')[_0x1001('0x3d')](_0x1001('0x3e'),_0x1001('0x3f'))[_0x1001('0x3d')]('id',_0x1001('0x38'))['field'](LISTID[_0x1001('0x40')](),_0x1001('0x39'))['field'](_0x46b658['id'][_0x1001('0x40')](),_0x597bb6)[_0x1001('0x3d')](_0x1001('0x3e'),_0x1001('0x3a'))[_0x1001('0x3d')](_0x1001('0x3e'),_0x1001('0x3b'))[_0x1001('0x41')](_0x1001('0x42'))[_0x1001('0x43')](_0x1001('0x44'))['where']('ListId\x20=\x20?',LISTID[_0x1001('0x40')]())['where'](_0x1001('0x45'))[_0x1001('0x43')](_0x1001('0x46'),squel['select']()[_0x1001('0x3d')](_0x1001('0x1f'))[_0x1001('0x41')](_0x1001('0x37'))[_0x1001('0x43')](_0x597bb6+'\x20=\x20?',_0x46b658['id'][_0x1001('0x40')]())))['toString']();return _0x3d75e0;};var _0x1abad1=function(_0x4f7485,_0x2e4261){var _0x540c83=squel[_0x1001('0x35')]()[_0x1001('0x36')](_0x1001('0x37'))['fromQuery']([_0x1001('0x1f'),_0x1001('0x3f'),_0x1001('0x38'),_0x1001('0x39'),_0x2e4261,_0x1001('0x3a'),_0x1001('0x3b')],squel['select']()[_0x1001('0x3d')](_0x1001('0x1f'),_0x1001('0x1f'))['field'](_0x1001('0x3e'),_0x1001('0x3f'))[_0x1001('0x3d')]('id',_0x1001('0x38'))[_0x1001('0x3d')](LISTID[_0x1001('0x40')](),_0x1001('0x39'))[_0x1001('0x3d')](_0x4f7485['id'][_0x1001('0x40')](),_0x2e4261)['field'](_0x1001('0x3e'),_0x1001('0x3a'))[_0x1001('0x3d')]('NOW()',_0x1001('0x3b'))[_0x1001('0x41')](_0x1001('0x42'))[_0x1001('0x43')]('deletedAt\x20IS\x20NULL')[_0x1001('0x43')](_0x1001('0x47'),LISTID[_0x1001('0x40')]())[_0x1001('0x43')](_0x1001('0x48'),squel['str'](hopperContacts))[_0x1001('0x43')](_0x1001('0x45'))[_0x1001('0x43')](_0x1001('0x46'),squel[_0x1001('0x3c')]()[_0x1001('0x3d')](_0x1001('0x49'))[_0x1001('0x41')](_0x1001('0x4a'))['where'](_0x2e4261+_0x1001('0x4b'),_0x4f7485['id']['toString']()))[_0x1001('0x43')](_0x1001('0x46'),squel['select']()[_0x1001('0x3d')]('phone')[_0x1001('0x41')](_0x1001('0x37'))[_0x1001('0x43')](_0x2e4261+'\x20=\x20?',_0x4f7485['id']['toString']())))[_0x1001('0x40')]();return _0x540c83;};function _0x116e10(_0x9c7581,_0x65109a){var _0x43a6bc=squel['insert']()[_0x1001('0x36')](_0x1001('0x37'))[_0x1001('0x4c')](['phone',_0x1001('0x3f'),_0x1001('0x38'),_0x1001('0x39'),_0x65109a,_0x1001('0x3a'),_0x1001('0x3b')],squel[_0x1001('0x3c')]()[_0x1001('0x3d')](_0x1001('0x1f'),_0x1001('0x1f'))[_0x1001('0x3d')](_0x1001('0x3e'),_0x1001('0x3f'))[_0x1001('0x3d')]('id',_0x1001('0x38'))[_0x1001('0x3d')](LISTID[_0x1001('0x40')](),_0x1001('0x39'))['field'](_0x9c7581['id'][_0x1001('0x40')](),_0x65109a)[_0x1001('0x3d')](_0x1001('0x3e'),_0x1001('0x3a'))[_0x1001('0x3d')](_0x1001('0x3e'),_0x1001('0x3b'))[_0x1001('0x41')](_0x1001('0x42'))[_0x1001('0x43')](_0x1001('0x44'))[_0x1001('0x43')](_0x1001('0x47'),LISTID[_0x1001('0x40')]())['where']('id\x20IN\x20?',squel[_0x1001('0x4d')](hopperContacts))[_0x1001('0x43')](_0x1001('0x45')))[_0x1001('0x40')]();return _0x43a6bc;}function _0x542419(_0x39f407,_0x4a983f){var _0xb29846=squel['insert']()[_0x1001('0x36')](_0x1001('0x4e'))[_0x1001('0x4c')](['phone',_0x1001('0x38'),_0x1001('0x39'),_0x4a983f,_0x1001('0x3a'),_0x1001('0x3b')],squel[_0x1001('0x3c')]()[_0x1001('0x3d')](_0x1001('0x1f'),'phone')[_0x1001('0x3d')]('id',_0x1001('0x38'))[_0x1001('0x3d')](LISTID[_0x1001('0x40')](),_0x1001('0x39'))['field'](_0x39f407['id'][_0x1001('0x40')](),_0x4a983f)[_0x1001('0x3d')](_0x1001('0x3e'),'createdAt')['field'](_0x1001('0x3e'),_0x1001('0x3b'))[_0x1001('0x41')](_0x1001('0x42'))[_0x1001('0x43')]('deletedAt\x20IS\x20NULL')[_0x1001('0x43')](_0x1001('0x47'),LISTID['toString']())['where'](_0x1001('0x48'),squel[_0x1001('0x4d')](hopperContacts))[_0x1001('0x43')](_0x1001('0x45')))[_0x1001('0x40')]();return _0xb29846;}return db[_0x1001('0x4f')]['findAll']({'where':{'type':_0x1001('0x50')},'attributes':['id',_0x1001('0x51')],'include':[{'model':db['CmList'],'as':_0x1001('0x52'),'where':{'id':LISTID}}]})[_0x1001('0x2c')](function(_0x5972ee){var _0x51f2d8=[];if(_0x5972ee){var _0xa89c48;for(var _0x177b33=0x0,_0x1acdad;_0x177b33<_0x5972ee[_0x1001('0x18')];_0x177b33+=0x1){_0x1acdad=_0x5972ee[_0x177b33][_0x1001('0x53')]({'plain':!![]});switch(_0x1acdad[_0x1001('0x51')]){case _0x1001('0x54'):_0x51f2d8[_0x1001('0x2d')](db['sequelize'][_0x1001('0x55')](_0x1abad1(_0x1acdad,_0x1001('0x56')))[_0x1001('0x2c')](function(){})[_0x1001('0x2f')](_0x457336()));break;case _0x1001('0x57'):_0x51f2d8[_0x1001('0x2d')](db[_0x1001('0x58')][_0x1001('0x55')](_0x1c781e(_0x1acdad,_0x1001('0x56')))[_0x1001('0x2c')](function(){})[_0x1001('0x2f')](_0x457336()));break;default:_0x51f2d8['push'](db[_0x1001('0x58')][_0x1001('0x55')](_0x116e10(_0x1acdad,_0x1001('0x56')))['then'](function(){})[_0x1001('0x2f')](_0x457336()));}}}return _0x51f2d8;})[_0x1001('0x59')]()[_0x1001('0x2c')](function(){return db[_0x1001('0x4f')][_0x1001('0x5a')]({'where':{'type':_0x1001('0x50')},'attributes':['id'],'include':[{'model':db[_0x1001('0x5b')],'as':'BlackLists','where':{'id':LISTID}}]})[_0x1001('0x2c')](function(_0x2a2588){var _0x1c529c=[];if(_0x2a2588){var _0x29342a;for(var _0x31e594=0x0,_0x3b51f0;_0x31e594<_0x2a2588[_0x1001('0x18')];_0x31e594+=0x1){_0x3b51f0=_0x2a2588[_0x31e594][_0x1001('0x53')]({'plain':!![]});_0x1c529c[_0x1001('0x2d')](db['sequelize'][_0x1001('0x55')](_0x542419(_0x3b51f0,_0x1001('0x56')))[_0x1001('0x2c')](function(){})[_0x1001('0x2f')](_0x457336()));}}return _0x1c529c;})['all']();})[_0x1001('0x2c')](function(){return db['Campaign'][_0x1001('0x5a')]({'attributes':['id','dialCheckDuplicateType'],'include':[{'model':db['CmList'],'as':'Lists','where':{'id':LISTID}}]})[_0x1001('0x2c')](function(_0x28a9d1){var _0x1c1cfa=[];if(_0x28a9d1){for(var _0x5aefb8=0x0,_0x1e5d67;_0x5aefb8<_0x28a9d1['length'];_0x5aefb8+=0x1){_0x1e5d67=_0x28a9d1[_0x5aefb8][_0x1001('0x53')]({'plain':!![]});switch(_0x1e5d67[_0x1001('0x51')]){case _0x1001('0x54'):_0x1c1cfa['push'](db[_0x1001('0x58')]['query'](_0x1abad1(_0x1e5d67,_0x1001('0x5c')))[_0x1001('0x2c')](function(){})[_0x1001('0x2f')](_0x457336()));break;case _0x1001('0x57'):_0x1c1cfa[_0x1001('0x2d')](db[_0x1001('0x58')][_0x1001('0x55')](_0x1c781e(_0x1e5d67,_0x1001('0x5c')))[_0x1001('0x2c')](function(){})[_0x1001('0x2f')](_0x457336()));break;default:_0x1c1cfa[_0x1001('0x2d')](db[_0x1001('0x58')][_0x1001('0x55')](_0x116e10(_0x1e5d67,_0x1001('0x5c')))[_0x1001('0x2c')](function(){})[_0x1001('0x2f')](_0x457336()));}}}return _0x1c1cfa;})[_0x1001('0x59')]();})[_0x1001('0x2c')](function(){return db[_0x1001('0x5d')][_0x1001('0x5a')]({'attributes':['id'],'include':[{'model':db[_0x1001('0x5b')],'as':_0x1001('0x5e'),'where':{'id':LISTID}}]})['then'](function(_0x10e9f0){var _0x12c49b=[];if(_0x10e9f0){for(var _0x4d830e=0x0,_0x119a37;_0x4d830e<_0x10e9f0[_0x1001('0x18')];_0x4d830e+=0x1){_0x119a37=_0x10e9f0[_0x4d830e][_0x1001('0x53')]({'plain':!![]});_0x12c49b[_0x1001('0x2d')](db['sequelize'][_0x1001('0x55')](_0x542419(_0x119a37,_0x1001('0x5c')))[_0x1001('0x2c')](function(){})[_0x1001('0x2f')](_0x457336()));}}return _0x12c49b;})[_0x1001('0x59')]();})['catch'](function(_0x57bb5b){logger[_0x1001('0x13')](_0x1001('0x5f'),'generalCheckHopper',_0x57bb5b['message']);});}var processPromises=function(_0xfa8514){return BPromise[_0x1001('0x59')](promises)['then'](function(_0x2c03e3){})[_0x1001('0x2f')](function(_0x30cf62){logger[_0x1001('0x13')]('Error\x20processing\x20rows\x20block:',JSON[_0x1001('0x31')](_0x30cf62));})[_0x1001('0x60')](function(){socket['emit'](_0x1001('0x61')+SOCKET_TIMESTAMP,{'success':success,'errors':errors,'duplicates':duplicates,'rows':rows});promises=[];success=0x0;errors=0x0;duplicates=0x0;rows=[];if(_0xfa8514){return _0xfa8514[_0x1001('0x62')]();}});};var endCsv=function(){return BPromise[_0x1001('0x63')]()[_0x1001('0x2c')](function(){if(hopperContacts){return checkHopper();}})['then'](function(){socket[_0x1001('0x64')](_0x1001('0x61')+SOCKET_TIMESTAMP,{'finished':!![],'success':success,'errors':errors,'duplicates':duplicates,'rows':rows});try{fs[_0x1001('0x65')](FILEPATH);}catch(_0x7bed27){logger[_0x1001('0x13')](_0x1001('0x66'),JSON[_0x1001('0x31')](_0x7bed27));}finally{process['exit'](0x0);}});};process['on']('SIGINT',function(){logger[_0x1001('0x67')]('CSV\x20import\x20process\x20stopped!');endCsv();});function main(){return BPromise[_0x1001('0x63')]()['then'](function(){if(DUPLICATES){DUPLICATES=DUPLICATES[_0x1001('0x10')](',');return db[_0x1001('0x29')][_0x1001('0x5a')]({'where':{'ListId':LISTID},'attributes':DUPLICATES,'raw':!![]});}})[_0x1001('0x2c')](function(_0x7c9694){var _0x264465=fs[_0x1001('0x68')](FILEPATH,{'highWaterMark':0xf*0x400*0x400});Papa['parse'](_0x264465,{'header':!![],'skipEmptyLines':!![],'step':function(_0x386fc7,_0x285099){total+=0x1;var _0x195af9=total;promises[_0x1001('0x2d')](checkRow(_0x386fc7,_0x7c9694,_0x195af9)[_0x1001('0x2c')](function(){success+=0x1;})[_0x1001('0x2f')](function(_0x6c391){if(_0x6c391[_0x1001('0x13')]){errors+=0x1;delete _0x6c391[_0x1001('0x13')];}else if(_0x6c391[_0x1001('0x69')]){duplicates+=0x1;delete _0x6c391[_0x1001('0x69')];}rows[_0x1001('0x2d')](_0x6c391);}));if(total%0xc8===0x0){_0x285099[_0x1001('0x6a')]();return processPromises(_0x285099);}},'complete':function(){return processPromises()['then'](function(){logger['info']('CSV\x20parsed\x20correctly!');endCsv();});},'error':function(_0x37395c,_0xd1d167){logger['info'](_0x1001('0x6b'),JSON[_0x1001('0x31')](_0x37395c));endCsv();}});})[_0x1001('0x2f')](function(_0x45f7dd){logger[_0x1001('0x13')](_0x1001('0x6c'),JSON[_0x1001('0x31')](_0x45f7dd));});}main();
\ No newline at end of file
+var _0xd6f4=['CompanyId','find','duplicate','Duplicate\x20Contact','CmContact','create','then','pick','catch','Error\x20while\x20creating\x20contact:\x20','cmContact','checkHopper','inspect','insert','into','cm_hopper','fromQuery','ContactId','createdAt','updatedAt','field','NOW()','toString','from','cm_contacts','where','deletedAt\x20IS\x20NULL','ListId\x20=\x20?','phone\x20IS\x20NOT\x20NULL','phone\x20NOT\x20IN\x20(?)','\x20=\x20?','select','scheduledAt','id\x20IN\x20?','str','cm_hopper_final','cm_hopper_black','VoiceQueue','findAll','outbound','CmList','Lists','dialCheckDuplicateType','sequelize','VoiceQueueId','push','query','all','BlackLists','Campaign','get','always','CampaignId','onlyIfOpen','generalCheckHopper','Error\x20processing\x20rows\x20block:','stringify','finally','emit','contact:csv_','resolve','unlinkSync','Unable\x20to\x20delete\x20temp\x20file:','exit','info','CSV\x20import\x20process\x20stopped!','createReadStream','parse','CSV\x20parsed\x20correctly!','CSV\x20parse\x20error','Error\x20executing\x20contact\x20csv\x20import:','bluebird','lodash','papaparse','../../../mysqldb','../../../config/environment','../../../config/logger','api','redis','defaults','localhost','../../../api/cmContact/cmContact.socket','register','argv','undefined','Missing\x20filepath\x20parameter!','null','Missing\x20binding\x20parameters!','zipObject','split','Missing\x20ListId\x20parameter!','error','contact','index','The\x20row\x20is\x20empty\x20or\x20the\x20number\x20of\x20parameters\x20does\x20not\x20match\x20the\x20columns!','errors','length','map','message','hasOwnProperty','data','firstName\x20not\x20specified!','phone','phone\x20not\x20specified!','birthDate','YYYY-MM-DD','isValid','email\x20format\x20is\x20not\x20valid!','ListId'];(function(_0x2b0188,_0x2e6f26){var _0x30489c=function(_0x18c912){while(--_0x18c912){_0x2b0188['push'](_0x2b0188['shift']());}};_0x30489c(++_0x2e6f26);}(_0xd6f4,0x121));var _0x4d6f=function(_0x44f2dd,_0x349975){_0x44f2dd=_0x44f2dd-0x0;var _0x4f9ee0=_0xd6f4[_0x44f2dd];return _0x4f9ee0;};'use strict';var BPromise=require(_0x4d6f('0x0'));var util=require('util');var _=require(_0x4d6f('0x1'));var fs=require('fs');var squel=require('squel');var Papa=require(_0x4d6f('0x2'));var Redis=require('ioredis');var db=require(_0x4d6f('0x3'))['db'];var config=require(_0x4d6f('0x4'));var logger=require(_0x4d6f('0x5'))(_0x4d6f('0x6'));config[_0x4d6f('0x7')]=_[_0x4d6f('0x8')](config['redis'],{'host':_0x4d6f('0x9'),'port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config[_0x4d6f('0x7')]));require(_0x4d6f('0xa'))[_0x4d6f('0xb')](socket);try{if(!process['argv'][0x2]||process[_0x4d6f('0xc')][0x2]===_0x4d6f('0xd')||process[_0x4d6f('0xc')][0x2]==='null'){throw new Error(_0x4d6f('0xe'));}var FILEPATH=process[_0x4d6f('0xc')][0x2];if(!process[_0x4d6f('0xc')][0x3]||process['argv'][0x3]===_0x4d6f('0xd')||process[_0x4d6f('0xc')][0x3]===_0x4d6f('0xf')||!process['argv'][0x4]||process['argv'][0x4]===_0x4d6f('0xd')||process[_0x4d6f('0xc')][0x4]===_0x4d6f('0xf')){throw new Error(_0x4d6f('0x10'));}var FIELDS=_[_0x4d6f('0x11')](process[_0x4d6f('0xc')][0x3][_0x4d6f('0x12')](','),process[_0x4d6f('0xc')][0x4][_0x4d6f('0x12')](','));if(!process['argv'][0x5]||process[_0x4d6f('0xc')][0x5]===_0x4d6f('0xd')||process[_0x4d6f('0xc')][0x5]==='null'){throw new Error(_0x4d6f('0x13'));}var LISTID=process[_0x4d6f('0xc')][0x5];var COMPANYID=process[_0x4d6f('0xc')][0x6]&&process[_0x4d6f('0xc')][0x6]!==_0x4d6f('0xd')&&process['argv'][0x6]!==_0x4d6f('0xf')?process[_0x4d6f('0xc')][0x6]:null;var DUPLICATES=process[_0x4d6f('0xc')][0x7]&&process['argv'][0x7]!==_0x4d6f('0xd')&&process[_0x4d6f('0xc')][0x7]!==_0x4d6f('0xf')?process[_0x4d6f('0xc')][0x7]:null;if(!process['argv'][0x8]||process['argv'][0x8]==='undefined'||process[_0x4d6f('0xc')][0x8]===_0x4d6f('0xf')){throw new Error('Missing\x20socket_timestamp\x20parameter!');}var SOCKET_TIMESTAMP=process[_0x4d6f('0xc')][0x8];}catch(_0x358a90){logger[_0x4d6f('0x14')](_0x358a90);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(_0x387c7c,_0x4a1b52,_0x24da58,_0xa61c4f){var _0x413cfd={'message':_0x4a1b52};_0x413cfd[_0x387c7c]=!![];if(_0x24da58){_0x413cfd[_0x4d6f('0x15')]=_0x24da58;}if(_0xa61c4f){_0x413cfd[_0x4d6f('0x16')]=_0xa61c4f;}return _0x413cfd;}function isEmail(_0x4da1dd){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))*$/['test'](_0x4da1dd);}function checkRow(_0x4f318a,_0x514a4f,_0x4adcbc){return new BPromise(function(_0x2222f1,_0x488980){if(_['isNil'](_0x4f318a)){return _0x488980(handleCheckRowError('error',_0x4d6f('0x17'),null,_0x4adcbc));}if(_0x4f318a['errors']&&_0x4f318a[_0x4d6f('0x18')][_0x4d6f('0x19')]){var _0x405c88=_[_0x4d6f('0x1a')](_0x4f318a[_0x4d6f('0x18')],_0x4d6f('0x1b'))['join'](';');return _0x488980(handleCheckRowError(_0x4d6f('0x14'),_0x405c88,null,_0x4adcbc));}var _0x2822ac={};for(var _0x15cf9b in FIELDS){if(FIELDS[_0x4d6f('0x1c')](_0x15cf9b)&&FIELDS[_0x15cf9b]){_0x2822ac[_0x15cf9b]=_0x4f318a['data'][0x0][FIELDS[_0x15cf9b]]||_0x4f318a[_0x4d6f('0x1d')][0x0]['\ufeff'+FIELDS[_0x15cf9b]];}}if(!_0x2822ac['firstName']){return _0x488980(handleCheckRowError(_0x4d6f('0x14'),_0x4d6f('0x1e'),null,_0x4adcbc));}if(!_0x2822ac[_0x4d6f('0x1f')]){return _0x488980(handleCheckRowError(_0x4d6f('0x14'),_0x4d6f('0x20'),null,_0x4adcbc));}if(_0x2822ac[_0x4d6f('0x21')]){var _0x1ba382=moment(_0x2822ac['birthDate'],_0x4d6f('0x22'));if(!_0x1ba382[_0x4d6f('0x23')]()){return _0x488980(handleCheckRowError('error','birthDate\x20format\x20is\x20invalid,\x20YYYY-MM-DD\x20format\x20is\x20supported!',null,_0x4adcbc));}}if(_0x2822ac['email']){if(!isEmail(_0x2822ac['email'])){return _0x488980(handleCheckRowError(_0x4d6f('0x14'),_0x4d6f('0x24'),null,_0x4adcbc));}}_0x2822ac[_0x4d6f('0x25')]=LISTID;_0x2822ac[_0x4d6f('0x26')]=COMPANYID||undefined;if(DUPLICATES&&DUPLICATES[_0x4d6f('0x19')]&&_0x514a4f){var _0xf235ba={};for(var _0x58419c=0x0,_0x16272a=DUPLICATES['length'];_0x58419c<_0x16272a;_0x58419c+=0x1){_0xf235ba[DUPLICATES[_0x58419c]]=_0x2822ac[DUPLICATES[_0x58419c]];}var _0x31ccba=_[_0x4d6f('0x27')](_0x514a4f,_0xf235ba);if(_0x31ccba){return _0x488980(handleCheckRowError(_0x4d6f('0x28'),_0x4d6f('0x29'),_0x31ccba,_0x4adcbc));}}return db[_0x4d6f('0x2a')][_0x4d6f('0x2b')](_0x2822ac,{'raw':!![],'hooks':![],'fields':_['keys'](_0x2822ac)})[_0x4d6f('0x2c')](function(_0x431499){if(DUPLICATES&&DUPLICATES[_0x4d6f('0x19')]&&_0x514a4f){_0x514a4f['push'](_[_0x4d6f('0x2d')](_0x2822ac,DUPLICATES));}hopperContacts+=(hopperContacts?',':'')+_0x431499['id'];return _0x2222f1();})[_0x4d6f('0x2e')](function(_0xeccbd6){return _0x488980(handleCheckRowError(_0x4d6f('0x14'),_0x4d6f('0x2f')+(_0xeccbd6['message']||JSON['stringify'](_0xeccbd6)),null,_0x4adcbc));});});}function checkHopper(){function _0x3d3fdf(){return function(_0xb5ada2){logger[_0x4d6f('0x14')](_0x4d6f('0x30'),_0x4d6f('0x31'),util[_0x4d6f('0x32')](_0xb5ada2,{'showHidden':![],'depth':null}));};}var _0x253b5f=function(_0xe6e001,_0x45dba2){var _0x5a9811=squel[_0x4d6f('0x33')]()[_0x4d6f('0x34')](_0x4d6f('0x35'))[_0x4d6f('0x36')]([_0x4d6f('0x1f'),'scheduledAt',_0x4d6f('0x37'),_0x4d6f('0x25'),_0x45dba2,_0x4d6f('0x38'),_0x4d6f('0x39')],squel['select']()[_0x4d6f('0x3a')](_0x4d6f('0x1f'),_0x4d6f('0x1f'))[_0x4d6f('0x3a')](_0x4d6f('0x3b'),'scheduledAt')[_0x4d6f('0x3a')]('id','ContactId')['field'](LISTID[_0x4d6f('0x3c')](),_0x4d6f('0x25'))[_0x4d6f('0x3a')](_0xe6e001['id'][_0x4d6f('0x3c')](),_0x45dba2)['field'](_0x4d6f('0x3b'),_0x4d6f('0x38'))[_0x4d6f('0x3a')](_0x4d6f('0x3b'),'updatedAt')[_0x4d6f('0x3d')](_0x4d6f('0x3e'))[_0x4d6f('0x3f')](_0x4d6f('0x40'))[_0x4d6f('0x3f')](_0x4d6f('0x41'),LISTID[_0x4d6f('0x3c')]())[_0x4d6f('0x3f')](_0x4d6f('0x42'))[_0x4d6f('0x3f')](_0x4d6f('0x43'),squel['select']()[_0x4d6f('0x3a')](_0x4d6f('0x1f'))[_0x4d6f('0x3d')](_0x4d6f('0x35'))[_0x4d6f('0x3f')](_0x45dba2+_0x4d6f('0x44'),_0xe6e001['id']['toString']())))[_0x4d6f('0x3c')]();return _0x5a9811;};var _0x253488=function(_0x73d635,_0x2fed89){var _0x224afb=squel[_0x4d6f('0x33')]()[_0x4d6f('0x34')]('cm_hopper')['fromQuery']([_0x4d6f('0x1f'),'scheduledAt','ContactId',_0x4d6f('0x25'),_0x2fed89,_0x4d6f('0x38'),'updatedAt'],squel[_0x4d6f('0x45')]()['field'](_0x4d6f('0x1f'),_0x4d6f('0x1f'))['field']('NOW()',_0x4d6f('0x46'))[_0x4d6f('0x3a')]('id',_0x4d6f('0x37'))[_0x4d6f('0x3a')](LISTID[_0x4d6f('0x3c')](),_0x4d6f('0x25'))['field'](_0x73d635['id'][_0x4d6f('0x3c')](),_0x2fed89)[_0x4d6f('0x3a')](_0x4d6f('0x3b'),_0x4d6f('0x38'))[_0x4d6f('0x3a')](_0x4d6f('0x3b'),'updatedAt')['from'](_0x4d6f('0x3e'))[_0x4d6f('0x3f')](_0x4d6f('0x40'))[_0x4d6f('0x3f')]('ListId\x20=\x20?',LISTID[_0x4d6f('0x3c')]())[_0x4d6f('0x3f')](_0x4d6f('0x47'),squel[_0x4d6f('0x48')](hopperContacts))[_0x4d6f('0x3f')](_0x4d6f('0x42'))['where'](_0x4d6f('0x43'),squel[_0x4d6f('0x45')]()[_0x4d6f('0x3a')]('calleridnum')[_0x4d6f('0x3d')](_0x4d6f('0x49'))[_0x4d6f('0x3f')](_0x2fed89+'\x20=\x20?',_0x73d635['id'][_0x4d6f('0x3c')]()))['where'](_0x4d6f('0x43'),squel[_0x4d6f('0x45')]()[_0x4d6f('0x3a')]('phone')['from']('cm_hopper')[_0x4d6f('0x3f')](_0x2fed89+'\x20=\x20?',_0x73d635['id'][_0x4d6f('0x3c')]())))[_0x4d6f('0x3c')]();return _0x224afb;};function _0x5d99ea(_0x3fcf8e,_0x4d0511){var _0x1fc440=squel['insert']()['into'](_0x4d6f('0x35'))[_0x4d6f('0x36')](['phone','scheduledAt','ContactId',_0x4d6f('0x25'),_0x4d0511,_0x4d6f('0x38'),'updatedAt'],squel[_0x4d6f('0x45')]()[_0x4d6f('0x3a')](_0x4d6f('0x1f'),_0x4d6f('0x1f'))['field']('NOW()','scheduledAt')[_0x4d6f('0x3a')]('id',_0x4d6f('0x37'))[_0x4d6f('0x3a')](LISTID[_0x4d6f('0x3c')](),_0x4d6f('0x25'))[_0x4d6f('0x3a')](_0x3fcf8e['id'][_0x4d6f('0x3c')](),_0x4d0511)[_0x4d6f('0x3a')](_0x4d6f('0x3b'),_0x4d6f('0x38'))[_0x4d6f('0x3a')](_0x4d6f('0x3b'),_0x4d6f('0x39'))[_0x4d6f('0x3d')](_0x4d6f('0x3e'))['where'](_0x4d6f('0x40'))[_0x4d6f('0x3f')]('ListId\x20=\x20?',LISTID['toString']())['where'](_0x4d6f('0x47'),squel['str'](hopperContacts))[_0x4d6f('0x3f')]('phone\x20IS\x20NOT\x20NULL'))[_0x4d6f('0x3c')]();return _0x1fc440;}function _0x2ed23f(_0x30bdc4,_0x4a4a61){var _0x1e9e69=squel[_0x4d6f('0x33')]()['into'](_0x4d6f('0x4a'))['fromQuery']([_0x4d6f('0x1f'),_0x4d6f('0x37'),_0x4d6f('0x25'),_0x4a4a61,_0x4d6f('0x38'),'updatedAt'],squel[_0x4d6f('0x45')]()[_0x4d6f('0x3a')](_0x4d6f('0x1f'),_0x4d6f('0x1f'))['field']('id','ContactId')[_0x4d6f('0x3a')](LISTID[_0x4d6f('0x3c')](),_0x4d6f('0x25'))['field'](_0x30bdc4['id']['toString'](),_0x4a4a61)['field']('NOW()',_0x4d6f('0x38'))['field'](_0x4d6f('0x3b'),_0x4d6f('0x39'))[_0x4d6f('0x3d')]('cm_contacts')[_0x4d6f('0x3f')](_0x4d6f('0x40'))[_0x4d6f('0x3f')]('ListId\x20=\x20?',LISTID[_0x4d6f('0x3c')]())['where'](_0x4d6f('0x47'),squel[_0x4d6f('0x48')](hopperContacts))[_0x4d6f('0x3f')](_0x4d6f('0x42')))['toString']();return _0x1e9e69;}return db[_0x4d6f('0x4b')][_0x4d6f('0x4c')]({'where':{'type':_0x4d6f('0x4d')},'attributes':['id','dialCheckDuplicateType'],'include':[{'model':db[_0x4d6f('0x4e')],'as':_0x4d6f('0x4f'),'where':{'id':LISTID}}]})[_0x4d6f('0x2c')](function(_0x2e94ce){var _0x5197a1=[];if(_0x2e94ce){var _0x4cbeae;for(var _0x3854b2=0x0,_0x4e84fd;_0x3854b2<_0x2e94ce[_0x4d6f('0x19')];_0x3854b2+=0x1){_0x4e84fd=_0x2e94ce[_0x3854b2]['get']({'plain':!![]});switch(_0x4e84fd[_0x4d6f('0x50')]){case'always':_0x5197a1['push'](db[_0x4d6f('0x51')]['query'](_0x253488(_0x4e84fd,_0x4d6f('0x52')))['then'](function(){})[_0x4d6f('0x2e')](_0x3d3fdf()));break;case'onlyIfOpen':_0x5197a1[_0x4d6f('0x53')](db['sequelize'][_0x4d6f('0x54')](_0x253b5f(_0x4e84fd,'VoiceQueueId'))[_0x4d6f('0x2c')](function(){})[_0x4d6f('0x2e')](_0x3d3fdf()));break;default:_0x5197a1[_0x4d6f('0x53')](db[_0x4d6f('0x51')][_0x4d6f('0x54')](_0x5d99ea(_0x4e84fd,_0x4d6f('0x52')))[_0x4d6f('0x2c')](function(){})[_0x4d6f('0x2e')](_0x3d3fdf()));}}}return _0x5197a1;})[_0x4d6f('0x55')]()[_0x4d6f('0x2c')](function(){return db[_0x4d6f('0x4b')]['findAll']({'where':{'type':'outbound'},'attributes':['id'],'include':[{'model':db[_0x4d6f('0x4e')],'as':_0x4d6f('0x56'),'where':{'id':LISTID}}]})[_0x4d6f('0x2c')](function(_0x2e3af8){var _0x3340ab=[];if(_0x2e3af8){var _0x47b3de;for(var _0x31a1aa=0x0,_0x1e2259;_0x31a1aa<_0x2e3af8[_0x4d6f('0x19')];_0x31a1aa+=0x1){_0x1e2259=_0x2e3af8[_0x31a1aa]['get']({'plain':!![]});_0x3340ab[_0x4d6f('0x53')](db[_0x4d6f('0x51')][_0x4d6f('0x54')](_0x2ed23f(_0x1e2259,_0x4d6f('0x52')))[_0x4d6f('0x2c')](function(){})[_0x4d6f('0x2e')](_0x3d3fdf()));}}return _0x3340ab;})[_0x4d6f('0x55')]();})[_0x4d6f('0x2c')](function(){return db[_0x4d6f('0x57')]['findAll']({'attributes':['id',_0x4d6f('0x50')],'include':[{'model':db['CmList'],'as':_0x4d6f('0x4f'),'where':{'id':LISTID}}]})[_0x4d6f('0x2c')](function(_0x49993e){var _0x3a11c4=[];if(_0x49993e){for(var _0x5ca272=0x0,_0x33b079;_0x5ca272<_0x49993e[_0x4d6f('0x19')];_0x5ca272+=0x1){_0x33b079=_0x49993e[_0x5ca272][_0x4d6f('0x58')]({'plain':!![]});switch(_0x33b079[_0x4d6f('0x50')]){case _0x4d6f('0x59'):_0x3a11c4[_0x4d6f('0x53')](db[_0x4d6f('0x51')]['query'](_0x253488(_0x33b079,_0x4d6f('0x5a')))[_0x4d6f('0x2c')](function(){})['catch'](_0x3d3fdf()));break;case _0x4d6f('0x5b'):_0x3a11c4[_0x4d6f('0x53')](db['sequelize'][_0x4d6f('0x54')](_0x253b5f(_0x33b079,_0x4d6f('0x5a')))[_0x4d6f('0x2c')](function(){})[_0x4d6f('0x2e')](_0x3d3fdf()));break;default:_0x3a11c4[_0x4d6f('0x53')](db['sequelize'][_0x4d6f('0x54')](_0x5d99ea(_0x33b079,_0x4d6f('0x5a')))['then'](function(){})[_0x4d6f('0x2e')](_0x3d3fdf()));}}}return _0x3a11c4;})[_0x4d6f('0x55')]();})[_0x4d6f('0x2c')](function(){return db[_0x4d6f('0x57')][_0x4d6f('0x4c')]({'attributes':['id'],'include':[{'model':db[_0x4d6f('0x4e')],'as':'BlackLists','where':{'id':LISTID}}]})[_0x4d6f('0x2c')](function(_0x4365b6){var _0x344e52=[];if(_0x4365b6){for(var _0x17dd70=0x0,_0xcb329c;_0x17dd70<_0x4365b6['length'];_0x17dd70+=0x1){_0xcb329c=_0x4365b6[_0x17dd70][_0x4d6f('0x58')]({'plain':!![]});_0x344e52[_0x4d6f('0x53')](db[_0x4d6f('0x51')][_0x4d6f('0x54')](_0x2ed23f(_0xcb329c,_0x4d6f('0x5a')))[_0x4d6f('0x2c')](function(){})['catch'](_0x3d3fdf()));}}return _0x344e52;})[_0x4d6f('0x55')]();})[_0x4d6f('0x2e')](function(_0x206dcc){logger[_0x4d6f('0x14')]('cmContact,\x20%s,\x20%s',_0x4d6f('0x5c'),_0x206dcc[_0x4d6f('0x1b')]);});}var processPromises=function(_0x9ec4af){return BPromise[_0x4d6f('0x55')](promises)[_0x4d6f('0x2c')](function(_0x51e468){})[_0x4d6f('0x2e')](function(_0x6b2a98){logger[_0x4d6f('0x14')](_0x4d6f('0x5d'),JSON[_0x4d6f('0x5e')](_0x6b2a98));})[_0x4d6f('0x5f')](function(){socket[_0x4d6f('0x60')](_0x4d6f('0x61')+SOCKET_TIMESTAMP,{'success':success,'errors':errors,'duplicates':duplicates,'rows':rows});promises=[];success=0x0;errors=0x0;duplicates=0x0;rows=[];if(_0x9ec4af){return _0x9ec4af['resume']();}});};var endCsv=function(){return BPromise[_0x4d6f('0x62')]()[_0x4d6f('0x2c')](function(){if(hopperContacts){return checkHopper();}})[_0x4d6f('0x2c')](function(){socket[_0x4d6f('0x60')](_0x4d6f('0x61')+SOCKET_TIMESTAMP,{'finished':!![],'success':success,'errors':errors,'duplicates':duplicates,'rows':rows});try{fs[_0x4d6f('0x63')](FILEPATH);}catch(_0x475b26){logger[_0x4d6f('0x14')](_0x4d6f('0x64'),JSON[_0x4d6f('0x5e')](_0x475b26));}finally{process[_0x4d6f('0x65')](0x0);}});};process['on']('SIGINT',function(){logger[_0x4d6f('0x66')](_0x4d6f('0x67'));endCsv();});function main(){return BPromise['resolve']()[_0x4d6f('0x2c')](function(){if(DUPLICATES){DUPLICATES=DUPLICATES[_0x4d6f('0x12')](',');return db['CmContact'][_0x4d6f('0x4c')]({'where':{'ListId':LISTID},'attributes':DUPLICATES,'raw':!![]});}})[_0x4d6f('0x2c')](function(_0x41000f){var _0x24d620=fs[_0x4d6f('0x68')](FILEPATH,{'highWaterMark':0xf*0x400*0x400});Papa[_0x4d6f('0x69')](_0x24d620,{'header':!![],'skipEmptyLines':!![],'step':function(_0x5b1d74,_0x6de32d){total+=0x1;var _0x6336b9=total;promises['push'](checkRow(_0x5b1d74,_0x41000f,_0x6336b9)[_0x4d6f('0x2c')](function(){success+=0x1;})[_0x4d6f('0x2e')](function(_0x318c5b){if(_0x318c5b['error']){errors+=0x1;delete _0x318c5b[_0x4d6f('0x14')];}else if(_0x318c5b[_0x4d6f('0x28')]){duplicates+=0x1;delete _0x318c5b[_0x4d6f('0x28')];}rows['push'](_0x318c5b);}));if(total%0xc8===0x0){_0x6de32d['pause']();return processPromises(_0x6de32d);}},'complete':function(){return processPromises()['then'](function(){logger[_0x4d6f('0x66')](_0x4d6f('0x6a'));endCsv();});},'error':function(_0x326b8c,_0x57f56c){logger['info'](_0x4d6f('0x6b'),JSON[_0x4d6f('0x5e')](_0x326b8c));endCsv();}});})[_0x4d6f('0x2e')](function(_0x453f46){logger[_0x4d6f('0x14')](_0x4d6f('0x6c'),JSON[_0x4d6f('0x5e')](_0x453f46));});}main();
\ No newline at end of file