Built motion from commit (unavailable).|2.2.0
[motion2.git] / server / components / import / cm / csv2.js
index 6f6de48..252ee9d 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0xd1cf=['server/files/tmp','.csv','header','writeFileSync','parse','createReadStream','data','errors','hasOwnProperty','trim','replace','scheduledat','includes','email','email\x20wrong\x20format','dateOfBirth','YYYY-MM-DD','isValid','\x20not\x20specified','SystemRow','appendFileSync','emit','contact:import:','Abort\x20parser','abort','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()','length','DROP\x20TABLE\x20','voice_queues','VoiceQueueId','campaigns_has_cm_lists','campaigns','campaigns_has_cm_blacklists','each','unlink','argv','arguments\x20<filename>\x20<parameters>\x20<agents>','file\x20doesn\x27t\x20exists','binding\x20doesn\x27t\x20exists','binding','phone\x20is\x20mandatory','firstName\x20is\x20mandatory','ListId\x20is\x20mandatory','map','No\x20agent\x20available','SIGINT','uncaughtException','path','util','ioredis','../../../mysqldb','../../../config/environment','../../../config/logger','import','redis','localhost','format','YYYY-MM-DD\x20HH:mm:ss','test','select','field','phone','from','join','\x20=\x20','.dialCheckDuplicateType\x20IN\x20(','cm_contacts.scheduledat','cm_contacts.id','cm_contacts.ListId','cm_contacts.createdAt','cm_contacts.updatedAt','cm_contacts.priority','cm_contacts.UserId','insert','into','cm_hopper','fromQuery','ListId','createdAt','priority','UserId','recallme','fields','cm_contacts','cm_contacts.ListId\x20=\x20','.id\x20=\x20','where','.CmListId\x20=\x20?','cm_contacts.createdAt\x20=\x20?','\x22always\x22','\x22onlyIfOpen\x22','cm_contacts.phone\x20NOT\x20IN\x20(?)','toString','cm_contacts.phone','cm_hopper_black','updatedAt','.CmListId','ListId\x20=\x20?','\x20=\x20?','concat','keys','CompanyId','min_id','group','info','Received\x20SIGINT','message','exit','push','code','spread','catch','error','main','start','root'];(function(_0x20a584,_0xe384a5){var _0x4b41a8=function(_0x2127c6){while(--_0x2127c6){_0x20a584['push'](_0x20a584['shift']());}};_0x4b41a8(++_0xe384a5);}(_0xd1cf,0xb3));var _0xfd1c=function(_0x16aaef,_0x410651){_0x16aaef=_0x16aaef-0x0;var _0x1c82ef=_0xd1cf[_0x16aaef];return _0x1c82ef;};'use strict';var fs=require('fs');var path=require(_0xfd1c('0x0'));var _=require('lodash');var Papa=require('papaparse');var util=require(_0xfd1c('0x1'));var BPromise=require('bluebird');var moment=require('moment');var squel=require('squel');var Redis=require(_0xfd1c('0x2'));var db=require(_0xfd1c('0x3'))['db'];var config=require(_0xfd1c('0x4'));var logger=require(_0xfd1c('0x5'))(_0xfd1c('0x6'));config[_0xfd1c('0x7')]=_['defaults'](config[_0xfd1c('0x7')],{'host':_0xfd1c('0x8'),'port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config[_0xfd1c('0x7')]));var stats={'finish':![],'errors':[],'rows':0x0,'affectedRows':0x0};var results=[];var stopped=![];var NOW=moment()[_0xfd1c('0x9')](_0xfd1c('0xa'));function isEmail(_0x24e659){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))*$/[_0xfd1c('0xb')](_0x24e659);}function selectNotIn(_0x3d65f9,_0x5682f8,_0x375c18,_0x31f71e,_0x31eb11){return squel[_0xfd1c('0xc')]()[_0xfd1c('0xd')](_0xfd1c('0xe'))[_0xfd1c('0xf')](_0x31f71e)[_0xfd1c('0x10')](_0x5682f8,null,_0x5682f8+'.id\x20=\x20'+_0x31f71e+'.'+_0x375c18)['where'](_0x31f71e+'.'+_0x375c18+_0xfd1c('0x11')+_0x3d65f9+'.'+_0x375c18)['where'](_0x5682f8+_0xfd1c('0x12')+_0x31eb11['join']()+')');}function insertCmHopper(_0x2172c4,_0x3a8ab5,_0x507b75,_0x2bc062,_0x320c60){var _0x51206a=['cm_contacts.phone',_0xfd1c('0x13'),_0xfd1c('0x14'),_0xfd1c('0x15'),_0x3a8ab5+'.'+_0x2bc062,_0xfd1c('0x16'),_0xfd1c('0x17'),_0xfd1c('0x18'),_0xfd1c('0x19'),'\x22'+_0x320c60+'\x22'];return squel[_0xfd1c('0x1a')]()[_0xfd1c('0x1b')](_0xfd1c('0x1c'))[_0xfd1c('0x1d')]([_0xfd1c('0xe'),'scheduledat','ContactId',_0xfd1c('0x1e'),_0x2bc062,_0xfd1c('0x1f'),'updatedAt',_0xfd1c('0x20'),_0xfd1c('0x21'),_0xfd1c('0x22')],squel[_0xfd1c('0xc')]()[_0xfd1c('0x23')](_0x51206a)[_0xfd1c('0xf')](_0x3a8ab5)[_0xfd1c('0x10')](_0xfd1c('0x24'),null,_0xfd1c('0x25')+_0x3a8ab5+'.CmListId')['join'](_0x507b75,null,_0x507b75+_0xfd1c('0x26')+_0x3a8ab5+'.'+_0x2bc062)[_0xfd1c('0x27')](_0x3a8ab5+_0xfd1c('0x28'),_0x2172c4)[_0xfd1c('0x27')](_0xfd1c('0x29'),NOW)[_0xfd1c('0x27')]('cm_contacts.phone\x20NOT\x20IN\x20(?)',selectNotIn(_0x3a8ab5,_0x507b75,_0x2bc062,_0xfd1c('0x1c'),[_0xfd1c('0x2a'),_0xfd1c('0x2b')]))['where'](_0xfd1c('0x2c'),selectNotIn(_0x3a8ab5,_0x507b75,_0x2bc062,_0xfd1c('0x1c'),[_0xfd1c('0x2a')])))[_0xfd1c('0x2d')]();}function insertCmHopperBlack(_0x417064,_0x6e2d7b,_0x5e2573,_0x1b31e1){var _0x37afff=[_0xfd1c('0x2e'),_0xfd1c('0x14'),_0xfd1c('0x15'),_0x6e2d7b+'.'+_0x1b31e1,_0xfd1c('0x16'),_0xfd1c('0x17')];return squel[_0xfd1c('0x1a')]()[_0xfd1c('0x1b')](_0xfd1c('0x2f'))[_0xfd1c('0x1d')]([_0xfd1c('0xe'),'ContactId',_0xfd1c('0x1e'),_0x1b31e1,'createdAt',_0xfd1c('0x30')],squel[_0xfd1c('0xc')]()['fields'](_0x37afff)['from'](_0x6e2d7b)['join'](_0xfd1c('0x24'),null,_0xfd1c('0x25')+_0x6e2d7b+_0xfd1c('0x31'))[_0xfd1c('0x10')](_0x5e2573,null,_0x5e2573+_0xfd1c('0x26')+_0x6e2d7b+'.'+_0x1b31e1)[_0xfd1c('0x27')](_0x6e2d7b+_0xfd1c('0x28'),_0x417064)[_0xfd1c('0x27')]('cm_contacts.createdAt\x20=\x20?',NOW)[_0xfd1c('0x27')]('cm_contacts.phone\x20NOT\x20IN\x20(?)',squel[_0xfd1c('0xc')]()[_0xfd1c('0xd')](_0xfd1c('0xe'))[_0xfd1c('0xf')](_0xfd1c('0x2f'))[_0xfd1c('0x27')](_0xfd1c('0x32'),_0x417064)[_0xfd1c('0x27')](_0x1b31e1+_0xfd1c('0x33'),_0x6e2d7b+'.'+_0x1b31e1)))[_0xfd1c('0x2d')]();}function insertCmContact(_0x5397d6,_0x1542d8,_0x362358,_0x23e2d1){var _0x220e51=_[_0xfd1c('0x34')](_[_0xfd1c('0x35')](_0x23e2d1),[_0xfd1c('0x1e'),_0xfd1c('0x36'),_0xfd1c('0x1f'),_0xfd1c('0x30')]);return squel[_0xfd1c('0x1a')]()[_0xfd1c('0x1b')]('cm_contacts')[_0xfd1c('0x1d')](_0x220e51,squel[_0xfd1c('0xc')]()[_0xfd1c('0x23')](_0x220e51)['from'](_0x1542d8)[_0xfd1c('0x27')]('('+_0x362358['join'](',')+')\x20NOT\x20IN\x20?',squel[_0xfd1c('0xc')]()[_0xfd1c('0x23')](_0x362358)[_0xfd1c('0xf')](_0xfd1c('0x24'))[_0xfd1c('0x27')](_0xfd1c('0x32'),_0x5397d6))[_0xfd1c('0x27')]('id\x20IN\x20?',squel[_0xfd1c('0xc')]()[_0xfd1c('0xd')]('MIN(id)',_0xfd1c('0x37'))[_0xfd1c('0xf')](_0x1542d8)[_0xfd1c('0x38')](_0x362358[_0xfd1c('0x10')](','))))[_0xfd1c('0x2d')]();}function handleStop(){logger[_0xfd1c('0x39')](_0xfd1c('0x3a'));stopped=!![];}function handleUncaughtException(_0x19de61){logger['error'](_0x19de61[_0xfd1c('0x3b')]);process[_0xfd1c('0x3c')](0x1);}function handleError(_0x5c4194,_0x496600){stats['errors'][_0xfd1c('0x3d')]({'name':_0x496600[_0xfd1c('0x3e')],'message':_0x496600[_0xfd1c('0x3b')],'row':_0x5c4194});}function handleQuery(_0x376a7d){logger['info'](_0x376a7d);return db['sequelize']['query'](_0x376a7d)[_0xfd1c('0x3f')](function(_0x59d83a){results[_0xfd1c('0x3d')](_0x59d83a);})[_0xfd1c('0x40')](function(_0x1abd10){logger[_0xfd1c('0x41')](_0x1abd10['message']);});}function main(_0x1014d5,_0x3ec3b9,_0x12e51e,_0x2650b4){logger[_0xfd1c('0x39')](_0xfd1c('0x42'),_0x1014d5,JSON['stringify'](_0x3ec3b9));process['send'](_0xfd1c('0x43'));var _0x163c19=_0x3ec3b9['binding'];var _0x4b9c99=_0x3ec3b9['socket_timestamp'];var _0x927870=path[_0xfd1c('0x10')](config[_0xfd1c('0x44')],_0xfd1c('0x45'),_0x4b9c99+_0xfd1c('0x46'));var _0x3d8adf=_[_0xfd1c('0x35')](_0x163c19)['join']();logger[_0xfd1c('0x39')](_0xfd1c('0x47'),_0x3d8adf);fs[_0xfd1c('0x48')](_0x927870,_0x3d8adf+'\x0a');Papa[_0xfd1c('0x49')](fs[_0xfd1c('0x4a')](_0x1014d5),{'header':!![],'skipEmptyLines':!![],'step':function(_0xb2e6b7,_0x3a493c){try{for(var _0x34b94d=0x0,_0x8d6ed1=[];_0x34b94d<_0xb2e6b7[_0xfd1c('0x4b')]['length'];_0x34b94d++){stats['rows']+=0x1;if(_0xb2e6b7[_0xfd1c('0x4c')][_0x34b94d]){handleError(_0xb2e6b7['data'][_0x34b94d],_0xb2e6b7[_0xfd1c('0x4c')][_0x34b94d]);}else{var _0x4aa5fe=[];for(var _0x4c39e9 in _0x163c19){if(_0x163c19[_0xfd1c('0x4d')](_0x4c39e9)){if(_0xb2e6b7[_0xfd1c('0x4b')][_0x34b94d][_0x163c19[_0x4c39e9]]){var _0x489ec2=_[_0xfd1c('0x4e')](_0xb2e6b7[_0xfd1c('0x4b')][_0x34b94d][_0x163c19[_0x4c39e9]][_0xfd1c('0x4f')](/"/g,'\x27'));switch(_0x4c39e9){case _0xfd1c('0x50'):var _0x3364a3=moment(_0x489ec2,_0xfd1c('0xa'),!![]);if(_0x3364a3['isValid']()){_0x8d6ed1[_0xfd1c('0x3d')]('\x22'+_0x489ec2+'\x22');}else{_0x4aa5fe[_0xfd1c('0x3d')]('scheduledat\x20wrong\x20format\x20(YYYY-MM-DD\x20HH:mm:ss)');}break;case'priority':var _0x1b7ee7=parseInt(_0x489ec2);_0x489ec2=_['isNaN'](_0x1b7ee7)||_0x1b7ee7<0x0||_0x1b7ee7>0x4?_0x2650b4?0x3:0x2:_0x1b7ee7;_0x8d6ed1[_0xfd1c('0x3d')]('\x22'+_0x489ec2+'\x22');break;case _0xfd1c('0x21'):var _0x26836b=parseInt(_0x489ec2);if(_['isNumber'](_0x26836b)&&_[_0xfd1c('0x51')](_0x12e51e,_0x26836b)){_0x8d6ed1['push']('\x22'+_0x26836b+'\x22');}else{_0x4aa5fe[_0xfd1c('0x3d')]('agent\x20not\x20exists');}break;case _0xfd1c('0x52'):if(isEmail(_0x489ec2)){_0x8d6ed1['push']('\x22'+_0x489ec2+'\x22');}else{_0x4aa5fe[_0xfd1c('0x3d')](_0xfd1c('0x53'));}break;case _0xfd1c('0x54'):var _0xc93452=moment(_0x489ec2,_0xfd1c('0x55'),!![]);if(_0xc93452[_0xfd1c('0x56')]()){_0x8d6ed1['push']('\x22'+_0x489ec2+'\x22');}else{_0x4aa5fe[_0xfd1c('0x3d')]('dateOfBirth\x20wrong\x20format\x20(YYYY-MM-DD)');}break;default:_0x8d6ed1[_0xfd1c('0x3d')]('\x22'+_0x489ec2+'\x22');}}else{switch(_0x4c39e9){case'firstName':case'phone':_0x4aa5fe[_0xfd1c('0x3d')](_0x4c39e9+_0xfd1c('0x57'));break;default:_0x8d6ed1[_0xfd1c('0x3d')]('\x22\x22');}}}}if(_0x4aa5fe['length']){handleError(_0xb2e6b7[_0xfd1c('0x4b')][_0x34b94d],{'code':_0xfd1c('0x58'),'message':_0x4aa5fe[_0xfd1c('0x10')]()});}else{fs[_0xfd1c('0x59')](_0x927870,_0x8d6ed1[_0xfd1c('0x10')]()+'\x0a');}_0x8d6ed1=[];}if(!(stats['rows']%0xc8)){socket[_0xfd1c('0x5a')](_0xfd1c('0x5b')+_0x4b9c99,stats);stats[_0xfd1c('0x4c')]=[];}}if(stopped){logger[_0xfd1c('0x39')](_0xfd1c('0x5c'));_0x3a493c[_0xfd1c('0x5d')]();}}catch(_0x2995bd){handleError(_0xb2e6b7[_0xfd1c('0x4b')][_0x34b94d],{'code':_0xfd1c('0x5e'),'message':_0x2995bd['message']});logger[_0xfd1c('0x41')](_0xfd1c('0x5f'),_0x2995bd[_0xfd1c('0x3b')]);}},'complete':function(){try{var _0x5d087e=[];var _0x4c8231='cm_contacts';if(_0x3ec3b9[_0xfd1c('0x60')]&&_0x3ec3b9[_0xfd1c('0x60')]['length']){_0x4c8231=_0xfd1c('0x61')+_0x4b9c99;_0x5d087e[_0xfd1c('0x3d')](_0xfd1c('0x62')+_0x4c8231+_0xfd1c('0x63'));}var _0x4c033c=util[_0xfd1c('0x9')](_0xfd1c('0x64'),_0x927870,_0x4c8231,_0x3d8adf,_0x3ec3b9['ListId'],_0x3ec3b9['CompanyId']||null,NOW,NOW);if(_[_0xfd1c('0x65')](_0x163c19[_0xfd1c('0x50')])){_0x4c033c+=_0xfd1c('0x66');}_0x5d087e['push'](_0x4c033c);if(_0x3ec3b9[_0xfd1c('0x60')]&&_0x3ec3b9['duplicates'][_0xfd1c('0x67')]){_0x5d087e[_0xfd1c('0x3d')](insertCmContact(_0x3ec3b9[_0xfd1c('0x1e')],_0x4c8231,_0x3ec3b9[_0xfd1c('0x60')],_0x163c19));_0x5d087e[_0xfd1c('0x3d')](_0xfd1c('0x68')+_0x4c8231+';');}_0x5d087e[_0xfd1c('0x3d')](insertCmHopper(_0x3ec3b9[_0xfd1c('0x1e')],'voice_queues_has_cm_lists',_0xfd1c('0x69'),_0xfd1c('0x6a'),_0x2650b4));_0x5d087e['push'](insertCmHopperBlack(_0x3ec3b9[_0xfd1c('0x1e')],'voice_queues_has_cm_blacklists',_0xfd1c('0x69'),_0xfd1c('0x6a')));_0x5d087e[_0xfd1c('0x3d')](insertCmHopper(_0x3ec3b9[_0xfd1c('0x1e')],_0xfd1c('0x6b'),_0xfd1c('0x6c'),'CampaignId',_0x2650b4));_0x5d087e[_0xfd1c('0x3d')](insertCmHopperBlack(_0x3ec3b9[_0xfd1c('0x1e')],_0xfd1c('0x6d'),_0xfd1c('0x6c'),'CampaignId'));BPromise[_0xfd1c('0x6e')](_0x5d087e,handleQuery)['then'](function(_0x106edf){stats['finish']=!![];stats['affectedRows']=_0x3ec3b9[_0xfd1c('0x60')]&&_0x3ec3b9[_0xfd1c('0x60')]['length']?results[0x2]['affectedRows']:results[0x0]['affectedRows'];socket[_0xfd1c('0x5a')](_0xfd1c('0x5b')+_0x4b9c99,stats);fs['unlink'](_0x1014d5);fs[_0xfd1c('0x6f')](_0x927870);process[_0xfd1c('0x3c')](0x0);})[_0xfd1c('0x40')](function(_0x3c4019){logger['error'](_0x3c4019['message']);process['exit'](0x1);});}catch(_0x36533b){logger[_0xfd1c('0x41')]('complete',_0x36533b[_0xfd1c('0x3b')]);process[_0xfd1c('0x3c')](0x1);}},'error':function(_0x4530dc,_0xe92171,_0xb359ab,_0x12c8f8){throw new Error(_0x12c8f8);}});}function validate(){if(process[_0xfd1c('0x70')]&&process[_0xfd1c('0x70')][_0xfd1c('0x67')]<0x4){throw new Error(_0xfd1c('0x71'));}var _0x3a9d0e=path['join'](config[_0xfd1c('0x44')],_0xfd1c('0x45'),process[_0xfd1c('0x70')][0x2]);if(!fs['existsSync'](_0x3a9d0e)){throw new Error(_0xfd1c('0x72'));}var _0x30f7a8={};try{_0x30f7a8=JSON['parse'](process['argv'][0x3]);if(!_0x30f7a8['binding']){throw new Error(_0xfd1c('0x73'));}if(!_0x30f7a8[_0xfd1c('0x74')]['phone']){throw new Error(_0xfd1c('0x75'));}if(!_0x30f7a8['binding']['firstName']){throw new Error(_0xfd1c('0x76'));}var _0x25169d=0x0;if(_0x30f7a8[_0xfd1c('0x74')][_0xfd1c('0x21')]){_0x25169d=0x1;}if(!_0x30f7a8['ListId']){throw new Error(_0xfd1c('0x77'));}}catch(_0x134fe5){throw new Error('body\x20id\x20mandatory');}var _0x330c7b=[];try{_0x330c7b=_[_0xfd1c('0x78')](JSON[_0xfd1c('0x49')](process[_0xfd1c('0x70')][0x4]),'id');}catch(_0x17fd5c){logger[_0xfd1c('0x39')](_0xfd1c('0x79'));}main(_0x3a9d0e,_0x30f7a8,_0x330c7b,_0x25169d);}validate();process['on'](_0xfd1c('0x7a'),handleStop);process['on'](_0xfd1c('0x7b'),handleUncaughtException);
\ No newline at end of file
+var _0xe813=['cm_contacts.UserId','insert','into','cm_hopper','fromQuery','scheduledat','ContactId','ListId','updatedAt','priority','fields','cm_contacts','cm_contacts.ListId\x20=\x20','.CmListId','.CmListId\x20=\x20?','where','cm_contacts.createdAt\x20=\x20?','\x22onlyIfOpen\x22','toString','createdAt','cm_contacts.phone\x20NOT\x20IN\x20(?)','field','cm_hopper_black','ListId\x20=\x20?','CompanyId','id\x20IN\x20?','MIN(id)','min_id','info','Received\x20SIGINT','error','message','exit','push','sequelize','query','spread','catch','main','start','socket_timestamp','.csv','header','writeFileSync','parse','createReadStream','data','length','rows','errors','hasOwnProperty','trim','replace','isValid','scheduledat\x20wrong\x20format\x20(YYYY-MM-DD\x20HH:mm:ss)','includes','agent\x20not\x20exists','email','email\x20wrong\x20format','dateOfBirth','YYYY-MM-DD','dateOfBirth\x20wrong\x20format\x20(YYYY-MM-DD)','firstName','SystemRow','emit','contact:import:','Abort\x20parser','abort','step','duplicates','\x20LIKE\x20cm_contacts;','format',',\x20scheduledAt\x20=\x20NOW()','voice_queues','VoiceQueueId','campaigns_has_cm_lists','campaigns','CampaignId','campaigns_has_cm_blacklists','each','then','affectedRows','unlink','complete','argv','arguments\x20<filename>\x20<parameters>\x20<agents>','root','server/files/tmp','existsSync','file\x20doesn\x27t\x20exists','binding','binding\x20doesn\x27t\x20exists','phone\x20is\x20mandatory','firstName\x20is\x20mandatory','UserId','ListId\x20is\x20mandatory','body\x20id\x20mandatory','map','No\x20agent\x20available','path','lodash','papaparse','bluebird','squel','../../../mysqldb','../../../config/environment','import','redis','defaults','socket.io-emitter','YYYY-MM-DD\x20HH:mm:ss','select','phone','from','join','.id\x20=\x20','\x20=\x20','.dialCheckDuplicateType\x20IN\x20(','cm_contacts.phone','cm_contacts.scheduledat','cm_contacts.id','cm_contacts.ListId','cm_contacts.createdAt','cm_contacts.priority'];(function(_0x352413,_0x327e3b){var _0x232ff6=function(_0x59afd9){while(--_0x59afd9){_0x352413['push'](_0x352413['shift']());}};_0x232ff6(++_0x327e3b);}(_0xe813,0xdf));var _0x3e81=function(_0x20522a,_0x11bb0){_0x20522a=_0x20522a-0x0;var _0x3105e0=_0xe813[_0x20522a];return _0x3105e0;};'use strict';var fs=require('fs');var path=require(_0x3e81('0x0'));var _=require(_0x3e81('0x1'));var Papa=require(_0x3e81('0x2'));var util=require('util');var BPromise=require(_0x3e81('0x3'));var moment=require('moment');var squel=require(_0x3e81('0x4'));var Redis=require('ioredis');var db=require(_0x3e81('0x5'))['db'];var config=require(_0x3e81('0x6'));var logger=require('../../../config/logger')(_0x3e81('0x7'));config[_0x3e81('0x8')]=_[_0x3e81('0x9')](config[_0x3e81('0x8')],{'host':'localhost','port':0x18eb});var socket=require(_0x3e81('0xa'))(new Redis(config[_0x3e81('0x8')]));var stats={'finish':![],'errors':[],'rows':0x0,'affectedRows':0x0};var results=[];var stopped=![];var NOW=moment()['format'](_0x3e81('0xb'));function isEmail(_0x32242d){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'](_0x32242d);}function selectNotIn(_0x5a942e,_0x2c3745,_0x2c8701,_0x54d152,_0x4f235d){return squel[_0x3e81('0xc')]()['field'](_0x3e81('0xd'))[_0x3e81('0xe')](_0x54d152)[_0x3e81('0xf')](_0x2c3745,null,_0x2c3745+_0x3e81('0x10')+_0x54d152+'.'+_0x2c8701)['where'](_0x54d152+'.'+_0x2c8701+_0x3e81('0x11')+_0x5a942e+'.'+_0x2c8701)['where'](_0x2c3745+_0x3e81('0x12')+_0x4f235d['join']()+')');}function insertCmHopper(_0x1496ae,_0x10052d,_0x1b5c33,_0x198e54,_0x251298){var _0x43c5f3=[_0x3e81('0x13'),_0x3e81('0x14'),_0x3e81('0x15'),_0x3e81('0x16'),_0x10052d+'.'+_0x198e54,_0x3e81('0x17'),'cm_contacts.updatedAt',_0x3e81('0x18'),_0x3e81('0x19'),'\x22'+_0x251298+'\x22'];return squel[_0x3e81('0x1a')]()[_0x3e81('0x1b')](_0x3e81('0x1c'))[_0x3e81('0x1d')]([_0x3e81('0xd'),_0x3e81('0x1e'),_0x3e81('0x1f'),_0x3e81('0x20'),_0x198e54,'createdAt',_0x3e81('0x21'),_0x3e81('0x22'),'UserId','recallme'],squel[_0x3e81('0xc')]()[_0x3e81('0x23')](_0x43c5f3)[_0x3e81('0xe')](_0x10052d)['join'](_0x3e81('0x24'),null,_0x3e81('0x25')+_0x10052d+_0x3e81('0x26'))['join'](_0x1b5c33,null,_0x1b5c33+_0x3e81('0x10')+_0x10052d+'.'+_0x198e54)['where'](_0x10052d+_0x3e81('0x27'),_0x1496ae)[_0x3e81('0x28')](_0x3e81('0x29'),NOW)[_0x3e81('0x28')]('cm_contacts.phone\x20NOT\x20IN\x20(?)',selectNotIn(_0x10052d,_0x1b5c33,_0x198e54,_0x3e81('0x1c'),['\x22always\x22',_0x3e81('0x2a')]))[_0x3e81('0x28')]('cm_contacts.phone\x20NOT\x20IN\x20(?)',selectNotIn(_0x10052d,_0x1b5c33,_0x198e54,_0x3e81('0x1c'),['\x22always\x22'])))[_0x3e81('0x2b')]();}function insertCmHopperBlack(_0x1b9df3,_0x2ed3ca,_0x48191f,_0x1696e7){var _0x11a28b=[_0x3e81('0x13'),'cm_contacts.id','cm_contacts.ListId',_0x2ed3ca+'.'+_0x1696e7,'cm_contacts.createdAt','cm_contacts.updatedAt'];return squel[_0x3e81('0x1a')]()[_0x3e81('0x1b')]('cm_hopper_black')['fromQuery'](['phone',_0x3e81('0x1f'),'ListId',_0x1696e7,_0x3e81('0x2c'),_0x3e81('0x21')],squel['select']()[_0x3e81('0x23')](_0x11a28b)[_0x3e81('0xe')](_0x2ed3ca)[_0x3e81('0xf')](_0x3e81('0x24'),null,_0x3e81('0x25')+_0x2ed3ca+_0x3e81('0x26'))[_0x3e81('0xf')](_0x48191f,null,_0x48191f+_0x3e81('0x10')+_0x2ed3ca+'.'+_0x1696e7)[_0x3e81('0x28')](_0x2ed3ca+_0x3e81('0x27'),_0x1b9df3)['where']('cm_contacts.createdAt\x20=\x20?',NOW)[_0x3e81('0x28')](_0x3e81('0x2d'),squel[_0x3e81('0xc')]()[_0x3e81('0x2e')]('phone')[_0x3e81('0xe')](_0x3e81('0x2f'))[_0x3e81('0x28')](_0x3e81('0x30'),_0x1b9df3)['where'](_0x1696e7+'\x20=\x20?',_0x2ed3ca+'.'+_0x1696e7)))[_0x3e81('0x2b')]();}function insertCmContact(_0x5db26c,_0x3028ce,_0x1a1301,_0x35c269){var _0x4ead0e=_['concat'](_['keys'](_0x35c269),[_0x3e81('0x20'),_0x3e81('0x31'),'createdAt',_0x3e81('0x21')]);return squel[_0x3e81('0x1a')]()[_0x3e81('0x1b')](_0x3e81('0x24'))[_0x3e81('0x1d')](_0x4ead0e,squel[_0x3e81('0xc')]()[_0x3e81('0x23')](_0x4ead0e)[_0x3e81('0xe')](_0x3028ce)[_0x3e81('0x28')]('('+_0x1a1301[_0x3e81('0xf')](',')+')\x20NOT\x20IN\x20?',squel[_0x3e81('0xc')]()[_0x3e81('0x23')](_0x1a1301)[_0x3e81('0xe')](_0x3e81('0x24'))[_0x3e81('0x28')](_0x3e81('0x30'),_0x5db26c))[_0x3e81('0x28')](_0x3e81('0x32'),squel[_0x3e81('0xc')]()[_0x3e81('0x2e')](_0x3e81('0x33'),_0x3e81('0x34'))[_0x3e81('0xe')](_0x3028ce)['group'](_0x1a1301['join'](','))))['toString']();}function handleStop(){logger[_0x3e81('0x35')](_0x3e81('0x36'));stopped=!![];}function handleUncaughtException(_0x51d003){logger[_0x3e81('0x37')](_0x51d003[_0x3e81('0x38')]);process[_0x3e81('0x39')](0x1);}function handleError(_0x33e9ce,_0x2dd00c){stats['errors'][_0x3e81('0x3a')]({'name':_0x2dd00c['code'],'message':_0x2dd00c[_0x3e81('0x38')],'row':_0x33e9ce});}function handleQuery(_0x147b22){logger[_0x3e81('0x35')](_0x147b22);return db[_0x3e81('0x3b')][_0x3e81('0x3c')](_0x147b22)[_0x3e81('0x3d')](function(_0xef4882){results[_0x3e81('0x3a')](_0xef4882);})[_0x3e81('0x3e')](function(_0x1adb39){logger['error'](_0x1adb39[_0x3e81('0x38')]);});}function main(_0x27a907,_0x214b46,_0x4bf845,_0x9cb1da){logger[_0x3e81('0x35')](_0x3e81('0x3f'),_0x27a907,JSON['stringify'](_0x214b46));process['send'](_0x3e81('0x40'));var _0x2d72be=_0x214b46['binding'];var _0x566d79=_0x214b46[_0x3e81('0x41')];var _0x2b5355=path['join'](config['root'],'server/files/tmp',_0x566d79+_0x3e81('0x42'));var _0x17c8de=_['keys'](_0x2d72be)[_0x3e81('0xf')]();logger[_0x3e81('0x35')](_0x3e81('0x43'),_0x17c8de);fs[_0x3e81('0x44')](_0x2b5355,_0x17c8de+'\x0a');Papa[_0x3e81('0x45')](fs[_0x3e81('0x46')](_0x27a907),{'header':!![],'skipEmptyLines':!![],'step':function(_0x4b0af3,_0x94647e){try{for(var _0x15efec=0x0,_0x237416=[];_0x15efec<_0x4b0af3[_0x3e81('0x47')][_0x3e81('0x48')];_0x15efec++){stats[_0x3e81('0x49')]+=0x1;if(_0x4b0af3[_0x3e81('0x4a')][_0x15efec]){handleError(_0x4b0af3[_0x3e81('0x47')][_0x15efec],_0x4b0af3[_0x3e81('0x4a')][_0x15efec]);}else{var _0x1ea478=[];for(var _0x3cc4b0 in _0x2d72be){if(_0x2d72be[_0x3e81('0x4b')](_0x3cc4b0)){if(_0x4b0af3['data'][_0x15efec][_0x2d72be[_0x3cc4b0]]){var _0x2fabd6=_[_0x3e81('0x4c')](_0x4b0af3[_0x3e81('0x47')][_0x15efec][_0x2d72be[_0x3cc4b0]][_0x3e81('0x4d')](/"/g,'\x27'));switch(_0x3cc4b0){case _0x3e81('0x1e'):var _0xbf6871=moment(_0x2fabd6,'YYYY-MM-DD\x20HH:mm:ss',!![]);if(_0xbf6871[_0x3e81('0x4e')]()){_0x237416[_0x3e81('0x3a')]('\x22'+_0x2fabd6+'\x22');}else{_0x1ea478[_0x3e81('0x3a')](_0x3e81('0x4f'));}break;case _0x3e81('0x22'):var _0x24e831=parseInt(_0x2fabd6);_0x2fabd6=_['isNaN'](_0x24e831)||_0x24e831<0x0||_0x24e831>0x4?_0x9cb1da?0x3:0x2:_0x24e831;_0x237416[_0x3e81('0x3a')]('\x22'+_0x2fabd6+'\x22');break;case'UserId':var _0x297056=parseInt(_0x2fabd6);if(_['isNumber'](_0x297056)&&_[_0x3e81('0x50')](_0x4bf845,_0x297056)){_0x237416[_0x3e81('0x3a')]('\x22'+_0x297056+'\x22');}else{_0x1ea478[_0x3e81('0x3a')](_0x3e81('0x51'));}break;case _0x3e81('0x52'):if(isEmail(_0x2fabd6)){_0x237416[_0x3e81('0x3a')]('\x22'+_0x2fabd6+'\x22');}else{_0x1ea478[_0x3e81('0x3a')](_0x3e81('0x53'));}break;case _0x3e81('0x54'):var _0x4bd76a=moment(_0x2fabd6,_0x3e81('0x55'),!![]);if(_0x4bd76a['isValid']()){_0x237416[_0x3e81('0x3a')]('\x22'+_0x2fabd6+'\x22');}else{_0x1ea478[_0x3e81('0x3a')](_0x3e81('0x56'));}break;default:_0x237416[_0x3e81('0x3a')]('\x22'+_0x2fabd6+'\x22');}}else{switch(_0x3cc4b0){case _0x3e81('0x57'):case'phone':_0x1ea478[_0x3e81('0x3a')](_0x3cc4b0+'\x20not\x20specified');break;default:_0x237416[_0x3e81('0x3a')]('\x22\x22');}}}}if(_0x1ea478['length']){handleError(_0x4b0af3['data'][_0x15efec],{'code':_0x3e81('0x58'),'message':_0x1ea478[_0x3e81('0xf')]()});}else{fs['appendFileSync'](_0x2b5355,_0x237416[_0x3e81('0xf')]()+'\x0a');}_0x237416=[];}if(!(stats[_0x3e81('0x49')]%0xc8)){socket[_0x3e81('0x59')](_0x3e81('0x5a')+_0x566d79,stats);stats[_0x3e81('0x4a')]=[];}}if(stopped){logger[_0x3e81('0x35')](_0x3e81('0x5b'));_0x94647e[_0x3e81('0x5c')]();}}catch(_0x4857ba){handleError(_0x4b0af3[_0x3e81('0x47')][_0x15efec],{'code':'SystemError','message':_0x4857ba[_0x3e81('0x38')]});logger[_0x3e81('0x37')](_0x3e81('0x5d'),_0x4857ba[_0x3e81('0x38')]);}},'complete':function(){try{var _0x259397=[];var _0x1b40ce='cm_contacts';if(_0x214b46[_0x3e81('0x5e')]&&_0x214b46[_0x3e81('0x5e')][_0x3e81('0x48')]){_0x1b40ce='cm_contacts_'+_0x566d79;_0x259397['push']('CREATE\x20TABLE\x20'+_0x1b40ce+_0x3e81('0x5f'));}var _0x75bd4a=util[_0x3e81('0x60')]('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',_0x2b5355,_0x1b40ce,_0x17c8de,_0x214b46[_0x3e81('0x20')],_0x214b46[_0x3e81('0x31')]||null,NOW,NOW);if(_['isNil'](_0x2d72be[_0x3e81('0x1e')])){_0x75bd4a+=_0x3e81('0x61');}_0x259397[_0x3e81('0x3a')](_0x75bd4a);if(_0x214b46['duplicates']&&_0x214b46['duplicates'][_0x3e81('0x48')]){_0x259397[_0x3e81('0x3a')](insertCmContact(_0x214b46[_0x3e81('0x20')],_0x1b40ce,_0x214b46['duplicates'],_0x2d72be));_0x259397[_0x3e81('0x3a')]('DROP\x20TABLE\x20'+_0x1b40ce+';');}_0x259397[_0x3e81('0x3a')](insertCmHopper(_0x214b46[_0x3e81('0x20')],'voice_queues_has_cm_lists',_0x3e81('0x62'),'VoiceQueueId',_0x9cb1da));_0x259397[_0x3e81('0x3a')](insertCmHopperBlack(_0x214b46['ListId'],'voice_queues_has_cm_blacklists',_0x3e81('0x62'),_0x3e81('0x63')));_0x259397[_0x3e81('0x3a')](insertCmHopper(_0x214b46['ListId'],_0x3e81('0x64'),_0x3e81('0x65'),_0x3e81('0x66'),_0x9cb1da));_0x259397[_0x3e81('0x3a')](insertCmHopperBlack(_0x214b46[_0x3e81('0x20')],_0x3e81('0x67'),_0x3e81('0x65'),_0x3e81('0x66')));BPromise[_0x3e81('0x68')](_0x259397,handleQuery)[_0x3e81('0x69')](function(_0x4b2049){stats['finish']=!![];stats[_0x3e81('0x6a')]=_0x214b46['duplicates']&&_0x214b46['duplicates'][_0x3e81('0x48')]?results[0x2]['affectedRows']:results[0x0]['affectedRows'];socket[_0x3e81('0x59')]('contact:import:'+_0x566d79,stats);fs[_0x3e81('0x6b')](_0x27a907);fs[_0x3e81('0x6b')](_0x2b5355);process[_0x3e81('0x39')](0x0);})['catch'](function(_0x9b8de4){logger['error'](_0x9b8de4[_0x3e81('0x38')]);process['exit'](0x1);});}catch(_0x5b8b9f){logger['error'](_0x3e81('0x6c'),_0x5b8b9f[_0x3e81('0x38')]);process['exit'](0x1);}},'error':function(_0x300101,_0x4ae007,_0x11079f,_0x41db09){throw new Error(_0x41db09);}});}function validate(){if(process[_0x3e81('0x6d')]&&process[_0x3e81('0x6d')][_0x3e81('0x48')]<0x4){throw new Error(_0x3e81('0x6e'));}var _0x3e8287=path[_0x3e81('0xf')](config[_0x3e81('0x6f')],_0x3e81('0x70'),process[_0x3e81('0x6d')][0x2]);if(!fs[_0x3e81('0x71')](_0x3e8287)){throw new Error(_0x3e81('0x72'));}var _0x5301b4={};try{_0x5301b4=JSON[_0x3e81('0x45')](process['argv'][0x3]);if(!_0x5301b4[_0x3e81('0x73')]){throw new Error(_0x3e81('0x74'));}if(!_0x5301b4[_0x3e81('0x73')]['phone']){throw new Error(_0x3e81('0x75'));}if(!_0x5301b4[_0x3e81('0x73')]['firstName']){throw new Error(_0x3e81('0x76'));}var _0x5ae477=0x0;if(_0x5301b4[_0x3e81('0x73')][_0x3e81('0x77')]){_0x5ae477=0x1;}if(!_0x5301b4['ListId']){throw new Error(_0x3e81('0x78'));}}catch(_0xb27cfa){throw new Error(_0x3e81('0x79'));}var _0x16b485=[];try{_0x16b485=_[_0x3e81('0x7a')](JSON[_0x3e81('0x45')](process[_0x3e81('0x6d')][0x4]),'id');}catch(_0x4b2efc){logger[_0x3e81('0x35')](_0x3e81('0x7b'));}main(_0x3e8287,_0x5301b4,_0x16b485,_0x5ae477);}validate();process['on']('SIGINT',handleStop);process['on']('uncaughtException',handleUncaughtException);
\ No newline at end of file