Built motion from commit (unavailable).|2.5.0
[motion2.git] / server / components / import / cm / csv2.js
index 12864eb..6c18e6e 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x1e14=['.id\x20=\x20','.CmListId\x20=\x20?','cm_contacts.createdAt\x20=\x20?','cm_contacts.phone\x20NOT\x20IN\x20(?)','\x22onlyIfOpen\x22','\x22always\x22','toString','into','cm_hopper_black','cm_contacts.ListId\x20=\x20','ListId\x20=\x20?','\x20=\x20?','concat','keys',')\x20NOT\x20IN\x20?','deletedAt\x20IS\x20NULL','id\x20IN\x20?','MIN(id)','group','error','message','exit','push','code','sequelize','query','spread','send','start','binding','server/files/tmp','.csv','info','header','writeFileSync','parse','createReadStream','data','length','errors','hasOwnProperty','trim','isValid','scheduledat\x20wrong\x20format\x20(YYYY-MM-DD\x20HH:mm:ss)','priority','isNumber','includes','email','email\x20wrong\x20format','YYYY-MM-DD','\x20not\x20specified','SystemRow','appendFileSync','rows','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()','DROP\x20TABLE\x20','voice_queues_has_cm_lists','voice_queues','VoiceQueueId','campaigns_has_cm_lists','CampaignId','campaigns_has_cm_blacklists','campaigns','each','then','finish','affectedRows','emit','unlink','catch','argv','arguments\x20<filename>\x20<parameters>\x20<agents>','root','existsSync','file\x20doesn\x27t\x20exists','binding\x20doesn\x27t\x20exists','phone\x20is\x20mandatory','firstName','ListId\x20is\x20mandatory','body\x20id\x20mandatory','map','No\x20agent\x20available','SIGINT','path','lodash','papaparse','util','bluebird','moment','ioredis','import','redis','localhost','socket.io-emitter','format','YYYY-MM-DD\x20HH:mm:ss','test','select','field','phone','join','\x20=\x20','where','cm_contacts.phone','cm_contacts.id','cm_contacts.ListId','cm_contacts.createdAt','cm_contacts.updatedAt','cm_contacts.priority','cm_contacts.UserId','insert','cm_hopper','fromQuery','scheduledat','ContactId','ListId','createdAt','updatedAt','UserId','fields','from','cm_contacts','.CmListId'];(function(_0x444bd0,_0x283898){var _0x1f3fb7=function(_0x5cb609){while(--_0x5cb609){_0x444bd0['push'](_0x444bd0['shift']());}};_0x1f3fb7(++_0x283898);}(_0x1e14,0x1f0));var _0x41e1=function(_0x4d6133,_0x2460d1){_0x4d6133=_0x4d6133-0x0;var _0x5f21e9=_0x1e14[_0x4d6133];return _0x5f21e9;};'use strict';var fs=require('fs');var path=require(_0x41e1('0x0'));var _=require(_0x41e1('0x1'));var Papa=require(_0x41e1('0x2'));var util=require(_0x41e1('0x3'));var BPromise=require(_0x41e1('0x4'));var moment=require(_0x41e1('0x5'));var squel=require('squel');var Redis=require(_0x41e1('0x6'));var db=require('../../../mysqldb')['db'];var config=require('../../../config/environment');var logger=require('../../../config/logger')(_0x41e1('0x7'));config['redis']=_['defaults'](config[_0x41e1('0x8')],{'host':_0x41e1('0x9'),'port':0x18eb});var socket=require(_0x41e1('0xa'))(new Redis(config['redis']));var stats={'finish':![],'errors':[],'rows':0x0,'affectedRows':0x0};var results=[];var stopped=![];var NOW=moment()[_0x41e1('0xb')](_0x41e1('0xc'));function isEmail(_0x54bfa3){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))*$/[_0x41e1('0xd')](_0x54bfa3);}function selectNotIn(_0x232f8a,_0xffdd30,_0x524a09,_0x16663c,_0x1ce2fc){return squel[_0x41e1('0xe')]()[_0x41e1('0xf')](_0x41e1('0x10'))['from'](_0x16663c)[_0x41e1('0x11')](_0xffdd30,null,_0xffdd30+'.id\x20=\x20'+_0x16663c+'.'+_0x524a09)['where'](_0x16663c+'.'+_0x524a09+_0x41e1('0x12')+_0x232f8a+'.'+_0x524a09)[_0x41e1('0x13')](_0xffdd30+'.dialCheckDuplicateType\x20IN\x20('+_0x1ce2fc[_0x41e1('0x11')]()+')');}function insertCmHopper(_0x3a8469,_0x4e9f22,_0x156446,_0x2d3ed5,_0x18ca7f){var _0x32814e=[_0x41e1('0x14'),'cm_contacts.scheduledat',_0x41e1('0x15'),_0x41e1('0x16'),_0x4e9f22+'.'+_0x2d3ed5,_0x41e1('0x17'),_0x41e1('0x18'),_0x41e1('0x19'),_0x41e1('0x1a'),'\x22'+_0x18ca7f+'\x22'];return squel[_0x41e1('0x1b')]()['into'](_0x41e1('0x1c'))[_0x41e1('0x1d')]([_0x41e1('0x10'),_0x41e1('0x1e'),_0x41e1('0x1f'),_0x41e1('0x20'),_0x2d3ed5,_0x41e1('0x21'),_0x41e1('0x22'),'priority',_0x41e1('0x23'),'recallme'],squel['select']()[_0x41e1('0x24')](_0x32814e)[_0x41e1('0x25')](_0x4e9f22)[_0x41e1('0x11')](_0x41e1('0x26'),null,'cm_contacts.ListId\x20=\x20'+_0x4e9f22+_0x41e1('0x27'))['join'](_0x156446,null,_0x156446+_0x41e1('0x28')+_0x4e9f22+'.'+_0x2d3ed5)['where'](_0x4e9f22+_0x41e1('0x29'),_0x3a8469)[_0x41e1('0x13')](_0x41e1('0x2a'),NOW)[_0x41e1('0x13')](_0x41e1('0x2b'),selectNotIn(_0x4e9f22,_0x156446,_0x2d3ed5,'cm_hopper',['\x22always\x22',_0x41e1('0x2c')]))['where'](_0x41e1('0x2b'),selectNotIn(_0x4e9f22,_0x156446,_0x2d3ed5,_0x41e1('0x1c'),[_0x41e1('0x2d')])))[_0x41e1('0x2e')]();}function insertCmHopperBlack(_0x511002,_0xd72650,_0x5de5da,_0x4bf3f5){var _0x5390aa=['cm_contacts.phone',_0x41e1('0x15'),_0x41e1('0x16'),_0xd72650+'.'+_0x4bf3f5,_0x41e1('0x17'),'cm_contacts.updatedAt'];return squel[_0x41e1('0x1b')]()[_0x41e1('0x2f')](_0x41e1('0x30'))[_0x41e1('0x1d')]([_0x41e1('0x10'),_0x41e1('0x1f'),'ListId',_0x4bf3f5,_0x41e1('0x21'),_0x41e1('0x22')],squel[_0x41e1('0xe')]()[_0x41e1('0x24')](_0x5390aa)['from'](_0xd72650)[_0x41e1('0x11')](_0x41e1('0x26'),null,_0x41e1('0x31')+_0xd72650+_0x41e1('0x27'))[_0x41e1('0x11')](_0x5de5da,null,_0x5de5da+_0x41e1('0x28')+_0xd72650+'.'+_0x4bf3f5)[_0x41e1('0x13')](_0xd72650+_0x41e1('0x29'),_0x511002)[_0x41e1('0x13')]('cm_contacts.createdAt\x20=\x20?',NOW)[_0x41e1('0x13')](_0x41e1('0x2b'),squel[_0x41e1('0xe')]()['field'](_0x41e1('0x10'))[_0x41e1('0x25')](_0x41e1('0x30'))['where'](_0x41e1('0x32'),_0x511002)['where'](_0x4bf3f5+_0x41e1('0x33'),_0xd72650+'.'+_0x4bf3f5)))[_0x41e1('0x2e')]();}function insertCmContact(_0x347a5e,_0x51f573,_0x41959b,_0x5567e9){var _0x467fc2=_[_0x41e1('0x34')](_[_0x41e1('0x35')](_0x5567e9),[_0x41e1('0x20'),'CompanyId',_0x41e1('0x21'),_0x41e1('0x22')]);return squel[_0x41e1('0x1b')]()[_0x41e1('0x2f')](_0x41e1('0x26'))[_0x41e1('0x1d')](_0x467fc2,squel[_0x41e1('0xe')]()[_0x41e1('0x24')](_0x467fc2)['from'](_0x51f573)[_0x41e1('0x13')]('('+_0x41959b[_0x41e1('0x11')](',')+_0x41e1('0x36'),squel[_0x41e1('0xe')]()['fields'](_0x41959b)[_0x41e1('0x25')]('cm_contacts')['where'](_0x41e1('0x32'),_0x347a5e)[_0x41e1('0x13')](_0x41e1('0x37')))[_0x41e1('0x13')](_0x41e1('0x38'),squel[_0x41e1('0xe')]()[_0x41e1('0xf')](_0x41e1('0x39'),'min_id')[_0x41e1('0x25')](_0x51f573)[_0x41e1('0x3a')](_0x41959b[_0x41e1('0x11')](','))))[_0x41e1('0x2e')]();}function handleStop(){logger['info']('Received\x20SIGINT');stopped=!![];}function handleUncaughtException(_0x2db7a6){logger[_0x41e1('0x3b')](_0x2db7a6[_0x41e1('0x3c')]);process[_0x41e1('0x3d')](0x1);}function handleError(_0x136940,_0x3b540c){stats['errors'][_0x41e1('0x3e')]({'name':_0x3b540c[_0x41e1('0x3f')],'message':_0x3b540c[_0x41e1('0x3c')],'row':_0x136940});}function handleQuery(_0xb31be4){logger['info'](_0xb31be4);return db[_0x41e1('0x40')][_0x41e1('0x41')](_0xb31be4)[_0x41e1('0x42')](function(_0x5876a1){results[_0x41e1('0x3e')](_0x5876a1);})['catch'](function(_0x2a1aa4){logger[_0x41e1('0x3b')](_0x2a1aa4[_0x41e1('0x3c')]);});}function main(_0x148841,_0x3418ab,_0x1ba3d2,_0xcaf33b){logger['info']('main',_0x148841,JSON['stringify'](_0x3418ab));process[_0x41e1('0x43')](_0x41e1('0x44'));var _0x31efbf=_0x3418ab[_0x41e1('0x45')];var _0x175732=_0x3418ab['socket_timestamp'];var _0x2d8fa1=path[_0x41e1('0x11')](config['root'],_0x41e1('0x46'),_0x175732+_0x41e1('0x47'));var _0x52d913=_[_0x41e1('0x35')](_0x31efbf)[_0x41e1('0x11')]();logger[_0x41e1('0x48')](_0x41e1('0x49'),_0x52d913);fs[_0x41e1('0x4a')](_0x2d8fa1,_0x52d913+'\x0a');Papa[_0x41e1('0x4b')](fs[_0x41e1('0x4c')](_0x148841),{'header':!![],'skipEmptyLines':!![],'step':function(_0x445e38,_0x24aa0d){try{for(var _0x60093e=0x0,_0x593542=[];_0x60093e<_0x445e38[_0x41e1('0x4d')][_0x41e1('0x4e')];_0x60093e++){stats['rows']+=0x1;if(_0x445e38[_0x41e1('0x4f')][_0x60093e]){handleError(_0x445e38[_0x41e1('0x4d')][_0x60093e],_0x445e38[_0x41e1('0x4f')][_0x60093e]);}else{var _0x280a8c=[];for(var _0x28aafe in _0x31efbf){if(_0x31efbf[_0x41e1('0x50')](_0x28aafe)){if(_0x445e38[_0x41e1('0x4d')][_0x60093e][_0x31efbf[_0x28aafe]]){var _0x2c7589=_[_0x41e1('0x51')](_0x445e38[_0x41e1('0x4d')][_0x60093e][_0x31efbf[_0x28aafe]]['replace'](/"/g,'\x27'));switch(_0x28aafe){case _0x41e1('0x1e'):var _0x3fd18a=moment(_0x2c7589,_0x41e1('0xc'),!![]);if(_0x3fd18a[_0x41e1('0x52')]()){_0x593542[_0x41e1('0x3e')]('\x22'+_0x2c7589+'\x22');}else{_0x280a8c['push'](_0x41e1('0x53'));}break;case _0x41e1('0x54'):var _0x31dbc5=parseInt(_0x2c7589);_0x2c7589=_['isNaN'](_0x31dbc5)||_0x31dbc5<0x0||_0x31dbc5>0x4?_0xcaf33b?0x3:0x2:_0x31dbc5;_0x593542['push']('\x22'+_0x2c7589+'\x22');break;case _0x41e1('0x23'):var _0x6e00d6=parseInt(_0x2c7589);if(_[_0x41e1('0x55')](_0x6e00d6)&&_[_0x41e1('0x56')](_0x1ba3d2,_0x6e00d6)){_0x593542[_0x41e1('0x3e')]('\x22'+_0x6e00d6+'\x22');}else{_0x280a8c[_0x41e1('0x3e')]('agent\x20not\x20exists');}break;case _0x41e1('0x57'):if(isEmail(_0x2c7589)){_0x593542[_0x41e1('0x3e')]('\x22'+_0x2c7589+'\x22');}else{_0x280a8c['push'](_0x41e1('0x58'));}break;case'dateOfBirth':var _0x389f6e=moment(_0x2c7589,_0x41e1('0x59'),!![]);if(_0x389f6e[_0x41e1('0x52')]()){_0x593542[_0x41e1('0x3e')]('\x22'+_0x2c7589+'\x22');}else{_0x280a8c['push']('dateOfBirth\x20wrong\x20format\x20(YYYY-MM-DD)');}break;default:_0x593542[_0x41e1('0x3e')]('\x22'+_0x2c7589+'\x22');}}else{switch(_0x28aafe){case'firstName':case _0x41e1('0x10'):_0x280a8c[_0x41e1('0x3e')](_0x28aafe+_0x41e1('0x5a'));break;default:_0x593542[_0x41e1('0x3e')]('\x22\x22');}}}}if(_0x280a8c['length']){handleError(_0x445e38['data'][_0x60093e],{'code':_0x41e1('0x5b'),'message':_0x280a8c[_0x41e1('0x11')]()});}else{fs[_0x41e1('0x5c')](_0x2d8fa1,_0x593542[_0x41e1('0x11')]()+'\x0a');}_0x593542=[];}if(!(stats[_0x41e1('0x5d')]%0xc8)){socket['emit'](_0x41e1('0x5e')+_0x175732,stats);stats[_0x41e1('0x4f')]=[];}}if(stopped){logger['info'](_0x41e1('0x5f'));_0x24aa0d[_0x41e1('0x60')]();}}catch(_0x4e304d){handleError(_0x445e38['data'][_0x60093e],{'code':_0x41e1('0x61'),'message':_0x4e304d[_0x41e1('0x3c')]});logger[_0x41e1('0x3b')](_0x41e1('0x62'),_0x4e304d[_0x41e1('0x3c')]);}},'complete':function(){try{var _0xcdf647=[];var _0x408775=_0x41e1('0x26');if(_0x3418ab[_0x41e1('0x63')]&&_0x3418ab[_0x41e1('0x63')]['length']){_0x408775=_0x41e1('0x64')+_0x175732;_0xcdf647[_0x41e1('0x3e')](_0x41e1('0x65')+_0x408775+_0x41e1('0x66'));}var _0x2c34c4=util[_0x41e1('0xb')](_0x41e1('0x67'),_0x2d8fa1,_0x408775,_0x52d913,_0x3418ab[_0x41e1('0x20')],_0x3418ab['CompanyId']||null,NOW,NOW);if(_[_0x41e1('0x68')](_0x31efbf[_0x41e1('0x1e')])){_0x2c34c4+=_0x41e1('0x69');}_0xcdf647[_0x41e1('0x3e')](_0x2c34c4);if(_0x3418ab[_0x41e1('0x63')]&&_0x3418ab[_0x41e1('0x63')]['length']){_0xcdf647[_0x41e1('0x3e')](insertCmContact(_0x3418ab[_0x41e1('0x20')],_0x408775,_0x3418ab[_0x41e1('0x63')],_0x31efbf));_0xcdf647[_0x41e1('0x3e')](_0x41e1('0x6a')+_0x408775+';');}_0xcdf647[_0x41e1('0x3e')](insertCmHopper(_0x3418ab[_0x41e1('0x20')],_0x41e1('0x6b'),_0x41e1('0x6c'),'VoiceQueueId',_0xcaf33b));_0xcdf647[_0x41e1('0x3e')](insertCmHopperBlack(_0x3418ab['ListId'],'voice_queues_has_cm_blacklists',_0x41e1('0x6c'),_0x41e1('0x6d')));_0xcdf647['push'](insertCmHopper(_0x3418ab['ListId'],_0x41e1('0x6e'),'campaigns',_0x41e1('0x6f'),_0xcaf33b));_0xcdf647[_0x41e1('0x3e')](insertCmHopperBlack(_0x3418ab['ListId'],_0x41e1('0x70'),_0x41e1('0x71'),_0x41e1('0x6f')));BPromise[_0x41e1('0x72')](_0xcdf647,handleQuery)[_0x41e1('0x73')](function(_0x36aaa8){stats[_0x41e1('0x74')]=!![];stats['affectedRows']=_0x3418ab['duplicates']&&_0x3418ab[_0x41e1('0x63')][_0x41e1('0x4e')]?results[0x2][_0x41e1('0x75')]:results[0x0][_0x41e1('0x75')];socket[_0x41e1('0x76')]('contact:import:'+_0x175732,stats);fs['unlink'](_0x148841);fs[_0x41e1('0x77')](_0x2d8fa1);process[_0x41e1('0x3d')](0x0);})[_0x41e1('0x78')](function(_0x5465e1){logger[_0x41e1('0x3b')](_0x5465e1[_0x41e1('0x3c')]);process[_0x41e1('0x3d')](0x1);});}catch(_0x3a9b2d){logger[_0x41e1('0x3b')]('complete',_0x3a9b2d[_0x41e1('0x3c')]);process[_0x41e1('0x3d')](0x1);}},'error':function(_0x52edba,_0x2f2f3a,_0x23f4d6,_0x12bf70){throw new Error(_0x12bf70);}});}function validate(){if(process[_0x41e1('0x79')]&&process['argv']['length']<0x4){throw new Error(_0x41e1('0x7a'));}var _0x12fa9e=path[_0x41e1('0x11')](config[_0x41e1('0x7b')],'server/files/tmp',process[_0x41e1('0x79')][0x2]);if(!fs[_0x41e1('0x7c')](_0x12fa9e)){throw new Error(_0x41e1('0x7d'));}var _0x5f1b64={};try{_0x5f1b64=JSON[_0x41e1('0x4b')](process[_0x41e1('0x79')][0x3]);if(!_0x5f1b64[_0x41e1('0x45')]){throw new Error(_0x41e1('0x7e'));}if(!_0x5f1b64[_0x41e1('0x45')][_0x41e1('0x10')]){throw new Error(_0x41e1('0x7f'));}if(!_0x5f1b64[_0x41e1('0x45')][_0x41e1('0x80')]){throw new Error('firstName\x20is\x20mandatory');}var _0xf15220=0x0;if(_0x5f1b64[_0x41e1('0x45')]['UserId']){_0xf15220=0x1;}if(!_0x5f1b64[_0x41e1('0x20')]){throw new Error(_0x41e1('0x81'));}}catch(_0x33de55){throw new Error(_0x41e1('0x82'));}var _0x107c6e=[];try{_0x107c6e=_[_0x41e1('0x83')](JSON[_0x41e1('0x4b')](process[_0x41e1('0x79')][0x4]),'id');}catch(_0x18f6af){logger['info'](_0x41e1('0x84'));}main(_0x12fa9e,_0x5f1b64,_0x107c6e,_0xf15220);}validate();process['on'](_0x41e1('0x85'),handleStop);process['on']('uncaughtException',handleUncaughtException);
\ No newline at end of file
+var _0x662e=['from','join','.id\x20=\x20','.dialCheckDuplicateType\x20IN\x20(','cm_contacts.phone','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','scheduledat','createdAt','updatedAt','recallme','fields','cm_contacts.ListId\x20=\x20','.CmListId','where','.CmListId\x20=\x20?','cm_contacts.createdAt\x20=\x20?','\x22always\x22','\x22onlyIfOpen\x22','cm_contacts.phone\x20NOT\x20IN\x20(?)','toString','cm_hopper_black','ContactId','ListId','cm_contacts','ListId\x20=\x20?','\x20=\x20?','concat','keys','CompanyId',')\x20NOT\x20IN\x20?','deletedAt\x20IS\x20NULL','MIN(id)','min_id','message','errors','push','query','spread','error','main','start','binding','root','server/files/tmp','.csv','info','header','writeFileSync','parse','createReadStream','data','length','rows','hasOwnProperty','trim','replace','YYYY-MM-DD\x20HH:mm:ss','isValid','scheduledat\x20wrong\x20format\x20(YYYY-MM-DD\x20HH:mm:ss)','priority','isNaN','UserId','isNumber','agent\x20not\x20exists','email','email\x20wrong\x20format','YYYY-MM-DD','firstName','contact:import:','Abort\x20parser','abort','SystemError','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',',\x20scheduledAt\x20=\x20NOW()','DROP\x20TABLE\x20','voice_queues_has_cm_lists','VoiceQueueId','voice_queues_has_cm_blacklists','voice_queues','campaigns_has_cm_lists','CampaignId','campaigns','each','then','finish','affectedRows','unlink','catch','exit','complete','argv','arguments\x20<filename>\x20<parameters>\x20<agents>','file\x20doesn\x27t\x20exists','binding\x20doesn\x27t\x20exists','firstName\x20is\x20mandatory','ListId\x20is\x20mandatory','body\x20id\x20mandatory','map','SIGINT','uncaughtException','path','lodash','papaparse','bluebird','moment','squel','ioredis','../../../mysqldb','../../../config/environment','../../../config/logger','redis','defaults','localhost','socket.io-emitter','format','select','field','phone'];(function(_0x3f17fe,_0x1777c8){var _0x5eb221=function(_0x42550e){while(--_0x42550e){_0x3f17fe['push'](_0x3f17fe['shift']());}};_0x5eb221(++_0x1777c8);}(_0x662e,0x17a));var _0xe662=function(_0x231e02,_0x15ebb6){_0x231e02=_0x231e02-0x0;var _0x562398=_0x662e[_0x231e02];return _0x562398;};'use strict';var fs=require('fs');var path=require(_0xe662('0x0'));var _=require(_0xe662('0x1'));var Papa=require(_0xe662('0x2'));var util=require('util');var BPromise=require(_0xe662('0x3'));var moment=require(_0xe662('0x4'));var squel=require(_0xe662('0x5'));var Redis=require(_0xe662('0x6'));var db=require(_0xe662('0x7'))['db'];var config=require(_0xe662('0x8'));var logger=require(_0xe662('0x9'))('import');config[_0xe662('0xa')]=_[_0xe662('0xb')](config[_0xe662('0xa')],{'host':_0xe662('0xc'),'port':0x18eb});var socket=require(_0xe662('0xd'))(new Redis(config[_0xe662('0xa')]));var stats={'finish':![],'errors':[],'rows':0x0,'affectedRows':0x0};var results=[];var stopped=![];var NOW=moment()[_0xe662('0xe')]('YYYY-MM-DD\x20HH:mm:ss');function isEmail(_0xfef7dd){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'](_0xfef7dd);}function selectNotIn(_0x3114c3,_0x55901f,_0x58d8de,_0x1d7536,_0x4c5f2c){return squel[_0xe662('0xf')]()[_0xe662('0x10')](_0xe662('0x11'))[_0xe662('0x12')](_0x1d7536)[_0xe662('0x13')](_0x55901f,null,_0x55901f+_0xe662('0x14')+_0x1d7536+'.'+_0x58d8de)['where'](_0x1d7536+'.'+_0x58d8de+'\x20=\x20'+_0x3114c3+'.'+_0x58d8de)['where'](_0x55901f+_0xe662('0x15')+_0x4c5f2c['join']()+')');}function insertCmHopper(_0x528678,_0x264451,_0x2b4f68,_0x37f43c,_0x1eb66b){var _0x1b0207=[_0xe662('0x16'),_0xe662('0x17'),_0xe662('0x18'),_0xe662('0x19'),_0x264451+'.'+_0x37f43c,_0xe662('0x1a'),_0xe662('0x1b'),_0xe662('0x1c'),_0xe662('0x1d'),'\x22'+_0x1eb66b+'\x22'];return squel[_0xe662('0x1e')]()[_0xe662('0x1f')](_0xe662('0x20'))[_0xe662('0x21')]([_0xe662('0x11'),_0xe662('0x22'),'ContactId','ListId',_0x37f43c,_0xe662('0x23'),_0xe662('0x24'),'priority','UserId',_0xe662('0x25')],squel[_0xe662('0xf')]()[_0xe662('0x26')](_0x1b0207)[_0xe662('0x12')](_0x264451)['join']('cm_contacts',null,_0xe662('0x27')+_0x264451+_0xe662('0x28'))[_0xe662('0x13')](_0x2b4f68,null,_0x2b4f68+_0xe662('0x14')+_0x264451+'.'+_0x37f43c)[_0xe662('0x29')](_0x264451+_0xe662('0x2a'),_0x528678)[_0xe662('0x29')](_0xe662('0x2b'),NOW)[_0xe662('0x29')]('cm_contacts.phone\x20NOT\x20IN\x20(?)',selectNotIn(_0x264451,_0x2b4f68,_0x37f43c,_0xe662('0x20'),[_0xe662('0x2c'),_0xe662('0x2d')]))[_0xe662('0x29')](_0xe662('0x2e'),selectNotIn(_0x264451,_0x2b4f68,_0x37f43c,'cm_hopper',[_0xe662('0x2c')])))[_0xe662('0x2f')]();}function insertCmHopperBlack(_0x45132f,_0x4047fe,_0x457488,_0x43cdf2){var _0x95ad1c=[_0xe662('0x16'),_0xe662('0x18'),'cm_contacts.ListId',_0x4047fe+'.'+_0x43cdf2,_0xe662('0x1a'),'cm_contacts.updatedAt'];return squel[_0xe662('0x1e')]()[_0xe662('0x1f')](_0xe662('0x30'))[_0xe662('0x21')]([_0xe662('0x11'),_0xe662('0x31'),_0xe662('0x32'),_0x43cdf2,'createdAt','updatedAt'],squel['select']()['fields'](_0x95ad1c)[_0xe662('0x12')](_0x4047fe)['join'](_0xe662('0x33'),null,_0xe662('0x27')+_0x4047fe+'.CmListId')[_0xe662('0x13')](_0x457488,null,_0x457488+'.id\x20=\x20'+_0x4047fe+'.'+_0x43cdf2)[_0xe662('0x29')](_0x4047fe+'.CmListId\x20=\x20?',_0x45132f)['where'](_0xe662('0x2b'),NOW)[_0xe662('0x29')](_0xe662('0x2e'),squel['select']()['field'](_0xe662('0x11'))['from'](_0xe662('0x30'))[_0xe662('0x29')](_0xe662('0x34'),_0x45132f)['where'](_0x43cdf2+_0xe662('0x35'),_0x4047fe+'.'+_0x43cdf2)))[_0xe662('0x2f')]();}function insertCmContact(_0x2ddfe6,_0x36795f,_0x415f5d,_0x2dd247){var _0x4efc1c=_[_0xe662('0x36')](_[_0xe662('0x37')](_0x2dd247),[_0xe662('0x32'),_0xe662('0x38'),_0xe662('0x23'),_0xe662('0x24')]);return squel['insert']()[_0xe662('0x1f')](_0xe662('0x33'))[_0xe662('0x21')](_0x4efc1c,squel[_0xe662('0xf')]()['fields'](_0x4efc1c)['from'](_0x36795f)[_0xe662('0x29')]('('+_0x415f5d[_0xe662('0x13')](',')+_0xe662('0x39'),squel[_0xe662('0xf')]()[_0xe662('0x26')](_0x415f5d)[_0xe662('0x12')](_0xe662('0x33'))[_0xe662('0x29')](_0xe662('0x34'),_0x2ddfe6)[_0xe662('0x29')](_0xe662('0x3a')))[_0xe662('0x29')]('id\x20IN\x20?',squel['select']()[_0xe662('0x10')](_0xe662('0x3b'),_0xe662('0x3c'))['from'](_0x36795f)['group'](_0x415f5d['join'](','))))[_0xe662('0x2f')]();}function handleStop(){logger['info']('Received\x20SIGINT');stopped=!![];}function handleUncaughtException(_0x3efb60){logger['error'](_0x3efb60[_0xe662('0x3d')]);process['exit'](0x1);}function handleError(_0xd59dd9,_0x2e13a5){stats[_0xe662('0x3e')][_0xe662('0x3f')]({'name':_0x2e13a5['code'],'message':_0x2e13a5[_0xe662('0x3d')],'row':_0xd59dd9});}function handleQuery(_0xbba176){logger['info'](_0xbba176);return db['sequelize'][_0xe662('0x40')](_0xbba176)[_0xe662('0x41')](function(_0x34af25){results[_0xe662('0x3f')](_0x34af25);})['catch'](function(_0x582263){logger[_0xe662('0x42')](_0x582263['message']);});}function main(_0x26b4dc,_0x41eb64,_0x5ada4a,_0x265218){logger['info'](_0xe662('0x43'),_0x26b4dc,JSON['stringify'](_0x41eb64));process['send'](_0xe662('0x44'));var _0x58d411=_0x41eb64[_0xe662('0x45')];var _0x393fd1=_0x41eb64['socket_timestamp'];var _0x309ac8=path[_0xe662('0x13')](config[_0xe662('0x46')],_0xe662('0x47'),_0x393fd1+_0xe662('0x48'));var _0x324d93=_['keys'](_0x58d411)[_0xe662('0x13')]();logger[_0xe662('0x49')](_0xe662('0x4a'),_0x324d93);fs[_0xe662('0x4b')](_0x309ac8,_0x324d93+'\x0a');Papa[_0xe662('0x4c')](fs[_0xe662('0x4d')](_0x26b4dc),{'header':!![],'skipEmptyLines':!![],'step':function(_0xba105d,_0x2a5610){try{for(var _0x1e9ea0=0x0,_0x2f0e40=[];_0x1e9ea0<_0xba105d[_0xe662('0x4e')][_0xe662('0x4f')];_0x1e9ea0++){stats[_0xe662('0x50')]+=0x1;if(_0xba105d[_0xe662('0x3e')][_0x1e9ea0]){handleError(_0xba105d['data'][_0x1e9ea0],_0xba105d[_0xe662('0x3e')][_0x1e9ea0]);}else{var _0x114b8a=[];for(var _0x1ef451 in _0x58d411){if(_0x58d411[_0xe662('0x51')](_0x1ef451)){if(_0xba105d[_0xe662('0x4e')][_0x1e9ea0][_0x58d411[_0x1ef451]]){var _0x422a11=_[_0xe662('0x52')](_0xba105d[_0xe662('0x4e')][_0x1e9ea0][_0x58d411[_0x1ef451]][_0xe662('0x53')](/"/g,'\x27'));switch(_0x1ef451){case _0xe662('0x22'):var _0x1ada6d=moment(_0x422a11,_0xe662('0x54'),!![]);if(_0x1ada6d[_0xe662('0x55')]()){_0x2f0e40[_0xe662('0x3f')]('\x22'+_0x422a11+'\x22');}else{_0x114b8a['push'](_0xe662('0x56'));}break;case _0xe662('0x57'):var _0x1385be=parseInt(_0x422a11);_0x422a11=_[_0xe662('0x58')](_0x1385be)||_0x1385be<0x0||_0x1385be>0x4?_0x265218?0x3:0x2:_0x1385be;_0x2f0e40['push']('\x22'+_0x422a11+'\x22');break;case _0xe662('0x59'):var _0x3e8180=parseInt(_0x422a11);if(_[_0xe662('0x5a')](_0x3e8180)&&_['includes'](_0x5ada4a,_0x3e8180)){_0x2f0e40['push']('\x22'+_0x3e8180+'\x22');}else{_0x114b8a[_0xe662('0x3f')](_0xe662('0x5b'));}break;case _0xe662('0x5c'):if(isEmail(_0x422a11)){_0x2f0e40[_0xe662('0x3f')]('\x22'+_0x422a11+'\x22');}else{_0x114b8a[_0xe662('0x3f')](_0xe662('0x5d'));}break;case'dateOfBirth':var _0x3693d7=moment(_0x422a11,_0xe662('0x5e'),!![]);if(_0x3693d7[_0xe662('0x55')]()){_0x2f0e40['push']('\x22'+_0x422a11+'\x22');}else{_0x114b8a[_0xe662('0x3f')]('dateOfBirth\x20wrong\x20format\x20(YYYY-MM-DD)');}break;default:_0x2f0e40[_0xe662('0x3f')]('\x22'+_0x422a11+'\x22');}}else{switch(_0x1ef451){case _0xe662('0x5f'):case _0xe662('0x11'):_0x114b8a[_0xe662('0x3f')](_0x1ef451+'\x20not\x20specified');break;default:_0x2f0e40['push']('\x22\x22');}}}}if(_0x114b8a[_0xe662('0x4f')]){handleError(_0xba105d['data'][_0x1e9ea0],{'code':'SystemRow','message':_0x114b8a[_0xe662('0x13')]()});}else{fs['appendFileSync'](_0x309ac8,_0x2f0e40[_0xe662('0x13')]()+'\x0a');}_0x2f0e40=[];}if(!(stats[_0xe662('0x50')]%0xc8)){socket['emit'](_0xe662('0x60')+_0x393fd1,stats);stats[_0xe662('0x3e')]=[];}}if(stopped){logger[_0xe662('0x49')](_0xe662('0x61'));_0x2a5610[_0xe662('0x62')]();}}catch(_0x5f4ad4){handleError(_0xba105d[_0xe662('0x4e')][_0x1e9ea0],{'code':_0xe662('0x63'),'message':_0x5f4ad4[_0xe662('0x3d')]});logger[_0xe662('0x42')]('step',_0x5f4ad4[_0xe662('0x3d')]);}},'complete':function(){try{var _0x5e00e4=[];var _0x632f38='cm_contacts';if(_0x41eb64[_0xe662('0x64')]&&_0x41eb64[_0xe662('0x64')][_0xe662('0x4f')]){_0x632f38=_0xe662('0x65')+_0x393fd1;_0x5e00e4[_0xe662('0x3f')](_0xe662('0x66')+_0x632f38+_0xe662('0x67'));}var _0x53c681=util[_0xe662('0xe')](_0xe662('0x68'),_0x309ac8,_0x632f38,_0x324d93,_0x41eb64[_0xe662('0x32')],_0x41eb64[_0xe662('0x38')]||null,NOW,NOW);if(_['isNil'](_0x58d411[_0xe662('0x22')])){_0x53c681+=_0xe662('0x69');}_0x5e00e4['push'](_0x53c681);if(_0x41eb64['duplicates']&&_0x41eb64[_0xe662('0x64')][_0xe662('0x4f')]){_0x5e00e4[_0xe662('0x3f')](insertCmContact(_0x41eb64[_0xe662('0x32')],_0x632f38,_0x41eb64[_0xe662('0x64')],_0x58d411));_0x5e00e4[_0xe662('0x3f')](_0xe662('0x6a')+_0x632f38+';');}_0x5e00e4['push'](insertCmHopper(_0x41eb64[_0xe662('0x32')],_0xe662('0x6b'),'voice_queues',_0xe662('0x6c'),_0x265218));_0x5e00e4['push'](insertCmHopperBlack(_0x41eb64['ListId'],_0xe662('0x6d'),_0xe662('0x6e'),_0xe662('0x6c')));_0x5e00e4[_0xe662('0x3f')](insertCmHopper(_0x41eb64[_0xe662('0x32')],_0xe662('0x6f'),'campaigns',_0xe662('0x70'),_0x265218));_0x5e00e4[_0xe662('0x3f')](insertCmHopperBlack(_0x41eb64[_0xe662('0x32')],'campaigns_has_cm_blacklists',_0xe662('0x71'),_0xe662('0x70')));BPromise[_0xe662('0x72')](_0x5e00e4,handleQuery)[_0xe662('0x73')](function(_0x4edd4f){stats[_0xe662('0x74')]=!![];stats[_0xe662('0x75')]=_0x41eb64[_0xe662('0x64')]&&_0x41eb64['duplicates']['length']?results[0x2][_0xe662('0x75')]:results[0x0][_0xe662('0x75')];socket['emit'](_0xe662('0x60')+_0x393fd1,stats);fs[_0xe662('0x76')](_0x26b4dc);fs['unlink'](_0x309ac8);process['exit'](0x0);})[_0xe662('0x77')](function(_0x31cce5){logger['error'](_0x31cce5[_0xe662('0x3d')]);process[_0xe662('0x78')](0x1);});}catch(_0x42052c){logger[_0xe662('0x42')](_0xe662('0x79'),_0x42052c['message']);process['exit'](0x1);}},'error':function(_0x4d4f42,_0x5565a8,_0x214353,_0xfa4d67){throw new Error(_0xfa4d67);}});}function validate(){if(process[_0xe662('0x7a')]&&process[_0xe662('0x7a')][_0xe662('0x4f')]<0x4){throw new Error(_0xe662('0x7b'));}var _0x28d59e=path[_0xe662('0x13')](config[_0xe662('0x46')],'server/files/tmp',process[_0xe662('0x7a')][0x2]);if(!fs['existsSync'](_0x28d59e)){throw new Error(_0xe662('0x7c'));}var _0x5d546a={};try{_0x5d546a=JSON['parse'](process[_0xe662('0x7a')][0x3]);if(!_0x5d546a[_0xe662('0x45')]){throw new Error(_0xe662('0x7d'));}if(!_0x5d546a[_0xe662('0x45')][_0xe662('0x11')]){throw new Error('phone\x20is\x20mandatory');}if(!_0x5d546a[_0xe662('0x45')][_0xe662('0x5f')]){throw new Error(_0xe662('0x7e'));}var _0x3ed929=0x0;if(_0x5d546a['binding'][_0xe662('0x59')]){_0x3ed929=0x1;}if(!_0x5d546a[_0xe662('0x32')]){throw new Error(_0xe662('0x7f'));}}catch(_0x1b1355){throw new Error(_0xe662('0x80'));}var _0x25b1f1=[];try{_0x25b1f1=_[_0xe662('0x81')](JSON[_0xe662('0x4c')](process['argv'][0x4]),'id');}catch(_0x2cf36e){logger[_0xe662('0x49')]('No\x20agent\x20available');}main(_0x28d59e,_0x5d546a,_0x25b1f1,_0x3ed929);}validate();process['on'](_0xe662('0x82'),handleStop);process['on'](_0xe662('0x83'),handleUncaughtException);
\ No newline at end of file