Built motion from commit 87cd5f02.|2.5.48
[motion2.git] / server / components / import / cm / csv.js
1 // *************************************************************************
2 // *                                                                       *
3 // * xCALLY Motion -  The Omnichannel Contact Center                       *
4 // * Copyright (c) Xenialab s.r.l. All Rights Reserved                     *
5 // *                                                                       *
6 // *************************************************************************
7 // *                                                                       *
8 // * Email: info@xcally.com                                                *
9 // * Website: https://www.xcally.com                                       *
10 // *                                                                       *
11 // *************************************************************************
12 // *                                                                       *
13 // * The SOFTWARE PRODUCT is protected by copyright laws and international *
14 // * copyright treaties, as well as other intellectual property laws and   *
15 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                         *
16 // *                                                                       *
17 // *************************************************************************
18 var _0x9005=['CmContact','create','keys','then','pick','catch','Error\x20while\x20creating\x20contact:\x20','stringify','cmContact','checkHopper','insert','into','cm_hopper','fromQuery','scheduledAt','ContactId','createdAt','updatedAt','field','toString','NOW()','from','cm_contacts','where','deletedAt\x20IS\x20NULL','ListId\x20=\x20?','phone\x20IS\x20NOT\x20NULL','phone\x20NOT\x20IN\x20(?)','select','\x20=\x20?','id\x20IN\x20?','str','cm_hopper_black','VoiceQueue','findAll','outbound','dialCheckDuplicateType','CmList','Lists','get','push','sequelize','query','VoiceQueueId','onlyIfOpen','BlackLists','all','Campaign','always','CampaignId','cmContact,\x20%s,\x20%s','Error\x20processing\x20rows\x20block:','finally','contact:csv_','resolve','emit','unlinkSync','exit','info','CSV\x20import\x20process\x20stopped!','createReadStream','parse','pause','CSV\x20parsed\x20correctly!','bluebird','lodash','squel','papaparse','../../../mysqldb','../../../config/environment','../../../config/logger','api','redis','localhost','../../../api/cmContact/cmContact.socket','register','argv','undefined','Missing\x20filepath\x20parameter!','null','zipObject','split','Missing\x20socket_timestamp\x20parameter!','error','contact','index','The\x20row\x20is\x20empty\x20or\x20the\x20number\x20of\x20parameters\x20does\x20not\x20match\x20the\x20columns!','errors','length','message','join','hasOwnProperty','data','firstName','firstName\x20not\x20specified!','phone','phone\x20not\x20specified!','birthDate','YYYY-MM-DD','isValid','email','email\x20format\x20is\x20not\x20valid!','ListId','CompanyId','duplicate','Duplicate\x20Contact'];(function(_0x3e18ea,_0x2c004b){var _0x500977=function(_0x4738b7){while(--_0x4738b7){_0x3e18ea['push'](_0x3e18ea['shift']());}};_0x500977(++_0x2c004b);}(_0x9005,0x17e));var _0x5900=function(_0x398b85,_0x16aa5c){_0x398b85=_0x398b85-0x0;var _0x30cfd6=_0x9005[_0x398b85];return _0x30cfd6;};'use strict';var BPromise=require(_0x5900('0x0'));var util=require('util');var _=require(_0x5900('0x1'));var fs=require('fs');var squel=require(_0x5900('0x2'));var Papa=require(_0x5900('0x3'));var Redis=require('ioredis');var db=require(_0x5900('0x4'))['db'];var config=require(_0x5900('0x5'));var logger=require(_0x5900('0x6'))(_0x5900('0x7'));config[_0x5900('0x8')]=_['defaults'](config[_0x5900('0x8')],{'host':_0x5900('0x9'),'port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config[_0x5900('0x8')]));require(_0x5900('0xa'))[_0x5900('0xb')](socket);try{if(!process[_0x5900('0xc')][0x2]||process[_0x5900('0xc')][0x2]===_0x5900('0xd')||process['argv'][0x2]==='null'){throw new Error(_0x5900('0xe'));}var FILEPATH=process['argv'][0x2];if(!process[_0x5900('0xc')][0x3]||process[_0x5900('0xc')][0x3]===_0x5900('0xd')||process[_0x5900('0xc')][0x3]===_0x5900('0xf')||!process['argv'][0x4]||process[_0x5900('0xc')][0x4]===_0x5900('0xd')||process['argv'][0x4]===_0x5900('0xf')){throw new Error('Missing\x20binding\x20parameters!');}var FIELDS=_[_0x5900('0x10')](process[_0x5900('0xc')][0x3]['split'](','),process[_0x5900('0xc')][0x4][_0x5900('0x11')](','));if(!process[_0x5900('0xc')][0x5]||process[_0x5900('0xc')][0x5]==='undefined'||process[_0x5900('0xc')][0x5]===_0x5900('0xf')){throw new Error('Missing\x20ListId\x20parameter!');}var LISTID=process[_0x5900('0xc')][0x5];var COMPANYID=process['argv'][0x6]&&process['argv'][0x6]!=='undefined'&&process[_0x5900('0xc')][0x6]!=='null'?process[_0x5900('0xc')][0x6]:null;var DUPLICATES=process[_0x5900('0xc')][0x7]&&process['argv'][0x7]!==_0x5900('0xd')&&process[_0x5900('0xc')][0x7]!=='null'?process['argv'][0x7]:null;if(!process[_0x5900('0xc')][0x8]||process['argv'][0x8]==='undefined'||process['argv'][0x8]==='null'){throw new Error(_0x5900('0x12'));}var SOCKET_TIMESTAMP=process[_0x5900('0xc')][0x8];}catch(_0x2a7f55){logger[_0x5900('0x13')](_0x2a7f55);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(_0x177703,_0x36f8aa,_0x2fb9db,_0x26db9d){var _0xeeb92f={'message':_0x36f8aa};_0xeeb92f[_0x177703]=!![];if(_0x2fb9db){_0xeeb92f[_0x5900('0x14')]=_0x2fb9db;}if(_0x26db9d){_0xeeb92f[_0x5900('0x15')]=_0x26db9d;}return _0xeeb92f;}function isEmail(_0x4f3593){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'](_0x4f3593);}function checkRow(_0x4dd48e,_0x424465,_0x58718d){return new BPromise(function(_0x4c9e06,_0x438463){if(_['isNil'](_0x4dd48e)){return _0x438463(handleCheckRowError(_0x5900('0x13'),_0x5900('0x16'),null,_0x58718d));}if(_0x4dd48e[_0x5900('0x17')]&&_0x4dd48e[_0x5900('0x17')][_0x5900('0x18')]){var _0x3013c5=_['map'](_0x4dd48e[_0x5900('0x17')],_0x5900('0x19'))[_0x5900('0x1a')](';');return _0x438463(handleCheckRowError('error',_0x3013c5,null,_0x58718d));}var _0x36b7ef={};for(var _0x58b90c in FIELDS){if(FIELDS[_0x5900('0x1b')](_0x58b90c)&&FIELDS[_0x58b90c]){_0x36b7ef[_0x58b90c]=_0x4dd48e['data'][0x0][FIELDS[_0x58b90c]]||_0x4dd48e[_0x5900('0x1c')][0x0]['\ufeff'+FIELDS[_0x58b90c]];}}if(!_0x36b7ef[_0x5900('0x1d')]){return _0x438463(handleCheckRowError(_0x5900('0x13'),_0x5900('0x1e'),null,_0x58718d));}if(!_0x36b7ef[_0x5900('0x1f')]){return _0x438463(handleCheckRowError(_0x5900('0x13'),_0x5900('0x20'),null,_0x58718d));}if(_0x36b7ef[_0x5900('0x21')]){var _0x70945a=moment(_0x36b7ef[_0x5900('0x21')],_0x5900('0x22'));if(!_0x70945a[_0x5900('0x23')]()){return _0x438463(handleCheckRowError('error','birthDate\x20format\x20is\x20invalid,\x20YYYY-MM-DD\x20format\x20is\x20supported!',null,_0x58718d));}}if(_0x36b7ef[_0x5900('0x24')]){if(!isEmail(_0x36b7ef['email'])){return _0x438463(handleCheckRowError(_0x5900('0x13'),_0x5900('0x25'),null,_0x58718d));}}_0x36b7ef[_0x5900('0x26')]=LISTID;_0x36b7ef[_0x5900('0x27')]=COMPANYID||undefined;if(DUPLICATES&&DUPLICATES[_0x5900('0x18')]&&_0x424465){var _0x5b2613={};for(var _0x4de2af=0x0,_0x574cde=DUPLICATES[_0x5900('0x18')];_0x4de2af<_0x574cde;_0x4de2af+=0x1){_0x5b2613[DUPLICATES[_0x4de2af]]=_0x36b7ef[DUPLICATES[_0x4de2af]];}var _0x5ce2c5=_['find'](_0x424465,_0x5b2613);if(_0x5ce2c5){return _0x438463(handleCheckRowError(_0x5900('0x28'),_0x5900('0x29'),_0x5ce2c5,_0x58718d));}}return db[_0x5900('0x2a')][_0x5900('0x2b')](_0x36b7ef,{'raw':!![],'hooks':![],'fields':_[_0x5900('0x2c')](_0x36b7ef)})[_0x5900('0x2d')](function(_0x3f4aea){if(DUPLICATES&&DUPLICATES[_0x5900('0x18')]&&_0x424465){_0x424465['push'](_[_0x5900('0x2e')](_0x36b7ef,DUPLICATES));}hopperContacts+=(hopperContacts?',':'')+_0x3f4aea['id'];return _0x4c9e06();})[_0x5900('0x2f')](function(_0x32e2a2){return _0x438463(handleCheckRowError(_0x5900('0x13'),_0x5900('0x30')+(_0x32e2a2[_0x5900('0x19')]||JSON[_0x5900('0x31')](_0x32e2a2)),null,_0x58718d));});});}function checkHopper(){function _0x5f36d9(){return function(_0x54e366){logger[_0x5900('0x13')](_0x5900('0x32'),_0x5900('0x33'),util['inspect'](_0x54e366,{'showHidden':![],'depth':null}));};}var _0x1c8ee5=function(_0x20f9f4,_0x2bbc5b){var _0x1c25f=squel[_0x5900('0x34')]()[_0x5900('0x35')](_0x5900('0x36'))[_0x5900('0x37')]([_0x5900('0x1f'),_0x5900('0x38'),_0x5900('0x39'),_0x5900('0x26'),_0x2bbc5b,_0x5900('0x3a'),_0x5900('0x3b')],squel['select']()[_0x5900('0x3c')](_0x5900('0x1f'),'phone')[_0x5900('0x3c')]('NOW()',_0x5900('0x38'))[_0x5900('0x3c')]('id',_0x5900('0x39'))['field'](LISTID[_0x5900('0x3d')](),'ListId')['field'](_0x20f9f4['id'][_0x5900('0x3d')](),_0x2bbc5b)[_0x5900('0x3c')]('NOW()','createdAt')[_0x5900('0x3c')](_0x5900('0x3e'),'updatedAt')[_0x5900('0x3f')](_0x5900('0x40'))[_0x5900('0x41')](_0x5900('0x42'))['where'](_0x5900('0x43'),LISTID[_0x5900('0x3d')]())['where'](_0x5900('0x44'))[_0x5900('0x41')](_0x5900('0x45'),squel[_0x5900('0x46')]()[_0x5900('0x3c')](_0x5900('0x1f'))[_0x5900('0x3f')](_0x5900('0x36'))[_0x5900('0x41')](_0x2bbc5b+_0x5900('0x47'),_0x20f9f4['id']['toString']())))[_0x5900('0x3d')]();return _0x1c25f;};var _0x47ce6b=function(_0x2033d0,_0x11f385){var _0x307ccf=squel[_0x5900('0x34')]()[_0x5900('0x35')](_0x5900('0x36'))[_0x5900('0x37')]([_0x5900('0x1f'),_0x5900('0x38'),'ContactId',_0x5900('0x26'),_0x11f385,_0x5900('0x3a'),_0x5900('0x3b')],squel[_0x5900('0x46')]()[_0x5900('0x3c')](_0x5900('0x1f'),_0x5900('0x1f'))[_0x5900('0x3c')](_0x5900('0x3e'),_0x5900('0x38'))[_0x5900('0x3c')]('id',_0x5900('0x39'))[_0x5900('0x3c')](LISTID[_0x5900('0x3d')](),_0x5900('0x26'))[_0x5900('0x3c')](_0x2033d0['id']['toString'](),_0x11f385)[_0x5900('0x3c')](_0x5900('0x3e'),'createdAt')['field'](_0x5900('0x3e'),_0x5900('0x3b'))[_0x5900('0x3f')](_0x5900('0x40'))['where'](_0x5900('0x42'))[_0x5900('0x41')](_0x5900('0x43'),LISTID[_0x5900('0x3d')]())['where'](_0x5900('0x48'),squel[_0x5900('0x49')](hopperContacts))[_0x5900('0x41')](_0x5900('0x44'))[_0x5900('0x41')](_0x5900('0x45'),squel[_0x5900('0x46')]()['field']('calleridnum')['from']('cm_hopper_final')[_0x5900('0x41')](_0x11f385+_0x5900('0x47'),_0x2033d0['id'][_0x5900('0x3d')]()))[_0x5900('0x41')](_0x5900('0x45'),squel[_0x5900('0x46')]()['field']('phone')[_0x5900('0x3f')](_0x5900('0x36'))[_0x5900('0x41')](_0x11f385+'\x20=\x20?',_0x2033d0['id'][_0x5900('0x3d')]())))[_0x5900('0x3d')]();return _0x307ccf;};function _0x1a93be(_0x3b80af,_0x51e366){var _0x4956ce=squel[_0x5900('0x34')]()[_0x5900('0x35')](_0x5900('0x36'))['fromQuery']([_0x5900('0x1f'),'scheduledAt','ContactId','ListId',_0x51e366,_0x5900('0x3a'),_0x5900('0x3b')],squel[_0x5900('0x46')]()[_0x5900('0x3c')](_0x5900('0x1f'),'phone')[_0x5900('0x3c')](_0x5900('0x3e'),'scheduledAt')['field']('id',_0x5900('0x39'))['field'](LISTID['toString'](),_0x5900('0x26'))['field'](_0x3b80af['id'][_0x5900('0x3d')](),_0x51e366)[_0x5900('0x3c')](_0x5900('0x3e'),_0x5900('0x3a'))['field'](_0x5900('0x3e'),'updatedAt')['from'](_0x5900('0x40'))[_0x5900('0x41')](_0x5900('0x42'))[_0x5900('0x41')](_0x5900('0x43'),LISTID['toString']())[_0x5900('0x41')](_0x5900('0x48'),squel['str'](hopperContacts))[_0x5900('0x41')](_0x5900('0x44')))['toString']();return _0x4956ce;}function _0x2a8a0b(_0x2b57f7,_0x1e3789){var _0x5ac1a5=squel['insert']()[_0x5900('0x35')](_0x5900('0x4a'))[_0x5900('0x37')]([_0x5900('0x1f'),'ContactId',_0x5900('0x26'),_0x1e3789,'createdAt',_0x5900('0x3b')],squel[_0x5900('0x46')]()[_0x5900('0x3c')](_0x5900('0x1f'),'phone')[_0x5900('0x3c')]('id',_0x5900('0x39'))[_0x5900('0x3c')](LISTID[_0x5900('0x3d')](),_0x5900('0x26'))[_0x5900('0x3c')](_0x2b57f7['id']['toString'](),_0x1e3789)[_0x5900('0x3c')](_0x5900('0x3e'),_0x5900('0x3a'))[_0x5900('0x3c')](_0x5900('0x3e'),_0x5900('0x3b'))[_0x5900('0x3f')](_0x5900('0x40'))[_0x5900('0x41')](_0x5900('0x42'))[_0x5900('0x41')](_0x5900('0x43'),LISTID[_0x5900('0x3d')]())[_0x5900('0x41')](_0x5900('0x48'),squel[_0x5900('0x49')](hopperContacts))[_0x5900('0x41')](_0x5900('0x44')))[_0x5900('0x3d')]();return _0x5ac1a5;}return db[_0x5900('0x4b')][_0x5900('0x4c')]({'where':{'type':_0x5900('0x4d')},'attributes':['id',_0x5900('0x4e')],'include':[{'model':db[_0x5900('0x4f')],'as':_0x5900('0x50'),'where':{'id':LISTID}}]})['then'](function(_0x4130e1){var _0x2b1545=[];if(_0x4130e1){var _0x14f035;for(var _0x299ae0=0x0,_0x273920;_0x299ae0<_0x4130e1[_0x5900('0x18')];_0x299ae0+=0x1){_0x273920=_0x4130e1[_0x299ae0][_0x5900('0x51')]({'plain':!![]});switch(_0x273920[_0x5900('0x4e')]){case'always':_0x2b1545[_0x5900('0x52')](db[_0x5900('0x53')][_0x5900('0x54')](_0x47ce6b(_0x273920,_0x5900('0x55')))[_0x5900('0x2d')](function(){})[_0x5900('0x2f')](_0x5f36d9()));break;case _0x5900('0x56'):_0x2b1545[_0x5900('0x52')](db[_0x5900('0x53')][_0x5900('0x54')](_0x1c8ee5(_0x273920,_0x5900('0x55')))[_0x5900('0x2d')](function(){})['catch'](_0x5f36d9()));break;default:_0x2b1545[_0x5900('0x52')](db[_0x5900('0x53')]['query'](_0x1a93be(_0x273920,_0x5900('0x55')))[_0x5900('0x2d')](function(){})[_0x5900('0x2f')](_0x5f36d9()));}}}return _0x2b1545;})['all']()['then'](function(){return db['VoiceQueue'][_0x5900('0x4c')]({'where':{'type':_0x5900('0x4d')},'attributes':['id'],'include':[{'model':db['CmList'],'as':_0x5900('0x57'),'where':{'id':LISTID}}]})[_0x5900('0x2d')](function(_0x15a404){var _0x3ed635=[];if(_0x15a404){var _0x3ae2d3;for(var _0x3ff8b4=0x0,_0x39c302;_0x3ff8b4<_0x15a404[_0x5900('0x18')];_0x3ff8b4+=0x1){_0x39c302=_0x15a404[_0x3ff8b4][_0x5900('0x51')]({'plain':!![]});_0x3ed635[_0x5900('0x52')](db[_0x5900('0x53')][_0x5900('0x54')](_0x2a8a0b(_0x39c302,_0x5900('0x55')))[_0x5900('0x2d')](function(){})[_0x5900('0x2f')](_0x5f36d9()));}}return _0x3ed635;})[_0x5900('0x58')]();})[_0x5900('0x2d')](function(){return db[_0x5900('0x59')][_0x5900('0x4c')]({'attributes':['id',_0x5900('0x4e')],'include':[{'model':db[_0x5900('0x4f')],'as':_0x5900('0x50'),'where':{'id':LISTID}}]})[_0x5900('0x2d')](function(_0xb485a){var _0x524951=[];if(_0xb485a){for(var _0x5cb935=0x0,_0x1fd0b2;_0x5cb935<_0xb485a[_0x5900('0x18')];_0x5cb935+=0x1){_0x1fd0b2=_0xb485a[_0x5cb935]['get']({'plain':!![]});switch(_0x1fd0b2[_0x5900('0x4e')]){case _0x5900('0x5a'):_0x524951[_0x5900('0x52')](db['sequelize']['query'](_0x47ce6b(_0x1fd0b2,_0x5900('0x5b')))[_0x5900('0x2d')](function(){})[_0x5900('0x2f')](_0x5f36d9()));break;case _0x5900('0x56'):_0x524951[_0x5900('0x52')](db[_0x5900('0x53')][_0x5900('0x54')](_0x1c8ee5(_0x1fd0b2,'CampaignId'))[_0x5900('0x2d')](function(){})['catch'](_0x5f36d9()));break;default:_0x524951[_0x5900('0x52')](db['sequelize']['query'](_0x1a93be(_0x1fd0b2,_0x5900('0x5b')))[_0x5900('0x2d')](function(){})[_0x5900('0x2f')](_0x5f36d9()));}}}return _0x524951;})['all']();})[_0x5900('0x2d')](function(){return db[_0x5900('0x59')]['findAll']({'attributes':['id'],'include':[{'model':db['CmList'],'as':_0x5900('0x57'),'where':{'id':LISTID}}]})[_0x5900('0x2d')](function(_0x282941){var _0x399ab1=[];if(_0x282941){for(var _0x5cd971=0x0,_0xd0780c;_0x5cd971<_0x282941[_0x5900('0x18')];_0x5cd971+=0x1){_0xd0780c=_0x282941[_0x5cd971][_0x5900('0x51')]({'plain':!![]});_0x399ab1['push'](db['sequelize'][_0x5900('0x54')](_0x2a8a0b(_0xd0780c,_0x5900('0x5b')))[_0x5900('0x2d')](function(){})[_0x5900('0x2f')](_0x5f36d9()));}}return _0x399ab1;})['all']();})['catch'](function(_0x2a94bc){logger[_0x5900('0x13')](_0x5900('0x5c'),'generalCheckHopper',_0x2a94bc['message']);});}var processPromises=function(_0x50fc6b){return BPromise[_0x5900('0x58')](promises)[_0x5900('0x2d')](function(_0x4d0c36){})[_0x5900('0x2f')](function(_0xc3dd4f){logger['error'](_0x5900('0x5d'),JSON['stringify'](_0xc3dd4f));})[_0x5900('0x5e')](function(){socket['emit'](_0x5900('0x5f')+SOCKET_TIMESTAMP,{'success':success,'errors':errors,'duplicates':duplicates,'rows':rows});promises=[];success=0x0;errors=0x0;duplicates=0x0;rows=[];if(_0x50fc6b){return _0x50fc6b['resume']();}});};var endCsv=function(){return BPromise[_0x5900('0x60')]()['then'](function(){if(hopperContacts){return checkHopper();}})[_0x5900('0x2d')](function(){socket[_0x5900('0x61')]('contact:csv_'+SOCKET_TIMESTAMP,{'finished':!![],'success':success,'errors':errors,'duplicates':duplicates,'rows':rows});try{fs[_0x5900('0x62')](FILEPATH);}catch(_0x7067a7){logger[_0x5900('0x13')]('Unable\x20to\x20delete\x20temp\x20file:',JSON[_0x5900('0x31')](_0x7067a7));}finally{process[_0x5900('0x63')](0x0);}});};process['on']('SIGINT',function(){logger[_0x5900('0x64')](_0x5900('0x65'));endCsv();});function main(){return BPromise[_0x5900('0x60')]()[_0x5900('0x2d')](function(){if(DUPLICATES){DUPLICATES=DUPLICATES['split'](',');return db['CmContact'][_0x5900('0x4c')]({'where':{'ListId':LISTID},'attributes':DUPLICATES,'raw':!![]});}})[_0x5900('0x2d')](function(_0x6df53d){var _0x3e17e4=fs[_0x5900('0x66')](FILEPATH,{'highWaterMark':0xf*0x400*0x400});Papa[_0x5900('0x67')](_0x3e17e4,{'header':!![],'skipEmptyLines':!![],'step':function(_0x3d6482,_0x507e95){total+=0x1;var _0x53bcb6=total;promises[_0x5900('0x52')](checkRow(_0x3d6482,_0x6df53d,_0x53bcb6)[_0x5900('0x2d')](function(){success+=0x1;})['catch'](function(_0x1bf84a){if(_0x1bf84a[_0x5900('0x13')]){errors+=0x1;delete _0x1bf84a['error'];}else if(_0x1bf84a[_0x5900('0x28')]){duplicates+=0x1;delete _0x1bf84a['duplicate'];}rows[_0x5900('0x52')](_0x1bf84a);}));if(total%0xc8===0x0){_0x507e95[_0x5900('0x68')]();return processPromises(_0x507e95);}},'complete':function(){return processPromises()[_0x5900('0x2d')](function(){logger[_0x5900('0x64')](_0x5900('0x69'));endCsv();});},'error':function(_0x3b6392,_0x24dd70){logger[_0x5900('0x64')]('CSV\x20parse\x20error',JSON[_0x5900('0x31')](_0x3b6392));endCsv();}});})[_0x5900('0x2f')](function(_0x171b10){logger[_0x5900('0x13')]('Error\x20executing\x20contact\x20csv\x20import:',JSON[_0x5900('0x31')](_0x171b10));});}main();