1b6f6c25855a890725114dfcb29dd14c8f6dc00c
[motion2.git] / server / components / import / cm / csv2.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 _0xedd8=['ListId\x20=\x20?','cm_contacts.phone','date_add(cm_contacts.scheduledat,interval\x20','.offset-cm_contacts.utcOffset\x20minute)','concat',')\x20NOT\x20IN\x20?','id\x20IN\x20?','MIN(id)','min_id','group','info','Received\x20SIGINT','error','message','errors','push','code','sequelize','query','spread','catch','campaigns.id','campaigns.dialTimezone','campaigns','campaigns.id\x20=\x20campaigns_has_cm_lists.CampaignId','campaigns_has_cm_lists.CmListId=','all','then','voice_queues.id','voice_queues','voice_queues_has_cm_lists','voice_queues_has_cm_lists.CmListId=','length','dialTimezone','isNil','utcOffset','set','offset','send','binding','socket_timestamp','root','server/files/tmp','.csv','keys','includes',',utcOffset','writeFileSync','parse','data','rows','trim','scheduledat','isValid','scheduledat\x20wrong\x20format\x20(YYYY-MM-DD\x20HH:mm:ss)','isNaN','isNumber','agent\x20not\x20exists','email','email\x20wrong\x20format','dateOfBirth','YYYY-MM-DD','dateOfBirth\x20wrong\x20format\x20(YYYY-MM-DD)','timezones','firstName','\x20not\x20specified','appendFileSync','abort','duplicates','CREATE\x20TABLE\x20','\x20LIKE\x20cm_contacts;','campaigns_','(id\x20int,dialTimezone\x20varchar(255),offset\x20int);','each','format','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','CompanyId','DROP\x20TABLE\x20','VoiceQueueId','voice_queues_has_cm_blacklists','CampaignId','campaigns_has_cm_blacklists','finish','affectedRows','emit','contact:import:','unlink','exit','complete','argv','existsSync','file\x20doesn\x27t\x20exists','binding\x20doesn\x27t\x20exists','phone\x20is\x20mandatory','firstName\x20is\x20mandatory','ListId\x20is\x20mandatory','body\x20id\x20mandatory','map','No\x20agent\x20available','SIGINT','path','papaparse','bluebird','moment','squel','ioredis','../../../config/environment','../../../config/logger','import','defaults','localhost','socket.io-emitter','YYYY-MM-DD\x20HH:mm:ss','test','select','field','join','where','.dialCheckDuplicateType\x20IN\x20(','cm_contacts.id','cm_contacts.ListId','cm_contacts.updatedAt','cm_contacts.priority','cm_contacts.UserId','insert','into','cm_hopper','fromQuery','phone','ListId','createdAt','updatedAt','priority','UserId','recallme','from','cm_contacts','cm_contacts.ListId\x20=\x20','.CmListId','.id\x20=\x20','.CmListId\x20=\x20?','cm_contacts.createdAt\x20=\x20?','cm_contacts.phone\x20NOT\x20IN\x20(?)','\x22always\x22','\x22onlyIfOpen\x22','toString','cm_contacts.createdAt','cm_hopper_black','ContactId','fields'];(function(_0x579d58,_0x1517da){var _0x155d36=function(_0x2e0c28){while(--_0x2e0c28){_0x579d58['push'](_0x579d58['shift']());}};_0x155d36(++_0x1517da);}(_0xedd8,0xfa));var _0x8edd=function(_0x5a1cc9,_0x28f54d){_0x5a1cc9=_0x5a1cc9-0x0;var _0x471761=_0xedd8[_0x5a1cc9];return _0x471761;};'use strict';var fs=require('fs');var path=require(_0x8edd('0x0'));var _=require('lodash');var Papa=require(_0x8edd('0x1'));var util=require('util');var BPromise=require(_0x8edd('0x2'));var moment=require(_0x8edd('0x3'));var squel=require(_0x8edd('0x4'));var Redis=require(_0x8edd('0x5'));var db=require('../../../mysqldb')['db'];var config=require(_0x8edd('0x6'));var shared=require('../../../config/environment/shared');var logger=require(_0x8edd('0x7'))(_0x8edd('0x8'));config['redis']=_[_0x8edd('0x9')](config['redis'],{'host':_0x8edd('0xa'),'port':0x18eb});var socket=require(_0x8edd('0xb'))(new Redis(config['redis']));var stats={'finish':![],'errors':[],'rows':0x0,'affectedRows':0x0};var results=[];var stopped=![];var tmp_voice_queues;var tmp_campaigns;var tzOffset=0x0;var hasTZ;var NOW=moment()['format'](_0x8edd('0xc'));function isEmail(_0x349349){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))*$/[_0x8edd('0xd')](_0x349349);}function selectNotIn(_0x5090ef,_0x59e5b9,_0x15141c,_0x4d5bee,_0x588175){return squel[_0x8edd('0xe')]()[_0x8edd('0xf')]('phone')['from'](_0x4d5bee)[_0x8edd('0x10')](_0x59e5b9,null,_0x59e5b9+'.id\x20=\x20'+_0x4d5bee+'.'+_0x15141c)[_0x8edd('0x11')](_0x4d5bee+'.'+_0x15141c+'\x20=\x20'+_0x5090ef+'.'+_0x15141c)['where'](_0x59e5b9+_0x8edd('0x12')+_0x588175[_0x8edd('0x10')]()+')');}function insertCmHopper(_0x508f90,_0xfaf45e,_0x53f901,_0x2f941d,_0x1820ae){var _0x4b5859=['cm_contacts.phone','cm_contacts.scheduledat',_0x8edd('0x13'),_0x8edd('0x14'),_0xfaf45e+'.'+_0x2f941d,'cm_contacts.createdAt',_0x8edd('0x15'),_0x8edd('0x16'),_0x8edd('0x17'),'\x22'+_0x1820ae+'\x22'];return squel[_0x8edd('0x18')]()[_0x8edd('0x19')](_0x8edd('0x1a'))[_0x8edd('0x1b')]([_0x8edd('0x1c'),'scheduledat','ContactId',_0x8edd('0x1d'),_0x2f941d,_0x8edd('0x1e'),_0x8edd('0x1f'),_0x8edd('0x20'),_0x8edd('0x21'),_0x8edd('0x22')],squel[_0x8edd('0xe')]()['fields'](_0x4b5859)[_0x8edd('0x23')](_0xfaf45e)['join'](_0x8edd('0x24'),null,_0x8edd('0x25')+_0xfaf45e+_0x8edd('0x26'))[_0x8edd('0x10')](_0x53f901,null,_0x53f901+_0x8edd('0x27')+_0xfaf45e+'.'+_0x2f941d)[_0x8edd('0x11')](_0xfaf45e+_0x8edd('0x28'),_0x508f90)['where'](_0x8edd('0x29'),NOW)[_0x8edd('0x11')](_0x8edd('0x2a'),selectNotIn(_0xfaf45e,_0x53f901,_0x2f941d,_0x8edd('0x1a'),[_0x8edd('0x2b'),_0x8edd('0x2c')]))[_0x8edd('0x11')](_0x8edd('0x2a'),selectNotIn(_0xfaf45e,_0x53f901,_0x2f941d,_0x8edd('0x1a'),['\x22always\x22'])))[_0x8edd('0x2d')]();}function insertCmHopperBlack(_0x5853ee,_0x1a6c2e,_0x237727,_0x4f4f7c){var _0x444fbc=['cm_contacts.phone','cm_contacts.id',_0x8edd('0x14'),_0x1a6c2e+'.'+_0x4f4f7c,_0x8edd('0x2e'),_0x8edd('0x15')];return squel[_0x8edd('0x18')]()[_0x8edd('0x19')](_0x8edd('0x2f'))[_0x8edd('0x1b')]([_0x8edd('0x1c'),_0x8edd('0x30'),_0x8edd('0x1d'),_0x4f4f7c,_0x8edd('0x1e'),_0x8edd('0x1f')],squel[_0x8edd('0xe')]()[_0x8edd('0x31')](_0x444fbc)[_0x8edd('0x23')](_0x1a6c2e)[_0x8edd('0x10')]('cm_contacts',null,'cm_contacts.ListId\x20=\x20'+_0x1a6c2e+_0x8edd('0x26'))[_0x8edd('0x10')](_0x237727,null,_0x237727+_0x8edd('0x27')+_0x1a6c2e+'.'+_0x4f4f7c)[_0x8edd('0x11')](_0x1a6c2e+_0x8edd('0x28'),_0x5853ee)[_0x8edd('0x11')](_0x8edd('0x29'),NOW)[_0x8edd('0x11')](_0x8edd('0x2a'),squel[_0x8edd('0xe')]()[_0x8edd('0xf')](_0x8edd('0x1c'))[_0x8edd('0x23')](_0x8edd('0x2f'))['where'](_0x8edd('0x32'),_0x5853ee)['where'](_0x4f4f7c+'\x20=\x20?',_0x1a6c2e+'.'+_0x4f4f7c)))[_0x8edd('0x2d')]();}function insertTzCmHopper(_0x2869d5,_0x5d01db,_0x432163,_0x120227,_0x50442f,_0x32dfae){var _0x1d2ed6=[_0x8edd('0x33'),_0x8edd('0x34')+_0x32dfae+_0x8edd('0x35'),_0x8edd('0x13'),_0x8edd('0x14'),_0x5d01db+'.'+_0x120227,'cm_contacts.createdAt',_0x8edd('0x15'),_0x8edd('0x16'),_0x8edd('0x17'),'\x22'+_0x50442f+'\x22'];var _0xcc706b=squel[_0x8edd('0x18')]()[_0x8edd('0x19')](_0x8edd('0x1a'))[_0x8edd('0x1b')]([_0x8edd('0x1c'),'scheduledat',_0x8edd('0x30'),_0x8edd('0x1d'),_0x120227,_0x8edd('0x1e'),_0x8edd('0x1f'),_0x8edd('0x20'),_0x8edd('0x21'),'recallme'],squel[_0x8edd('0xe')]()[_0x8edd('0x31')](_0x1d2ed6)[_0x8edd('0x23')](_0x5d01db)[_0x8edd('0x10')](_0x8edd('0x24'),null,'cm_contacts.ListId\x20=\x20'+_0x5d01db+_0x8edd('0x26'))[_0x8edd('0x10')](_0x432163,null,_0x432163+_0x8edd('0x27')+_0x5d01db+'.'+_0x120227)[_0x8edd('0x10')](_0x32dfae,null,_0x32dfae+_0x8edd('0x27')+_0x5d01db+'.'+_0x120227)[_0x8edd('0x11')](_0x5d01db+'.CmListId\x20=\x20?',_0x2869d5)[_0x8edd('0x11')](_0x8edd('0x29'),NOW)[_0x8edd('0x11')](_0x8edd('0x2a'),selectNotIn(_0x5d01db,_0x432163,_0x120227,_0x8edd('0x1a'),[_0x8edd('0x2b'),_0x8edd('0x2c')]))[_0x8edd('0x11')](_0x8edd('0x2a'),selectNotIn(_0x5d01db,_0x432163,_0x120227,_0x8edd('0x1a'),[_0x8edd('0x2b')])))[_0x8edd('0x2d')]();return _0xcc706b;}function insertTzCmHopperBlack(_0x5f5265,_0x1ebe2d,_0x9747e,_0x3df93){var _0x5f35e1=[_0x8edd('0x33'),_0x8edd('0x13'),'cm_contacts.ListId',_0x1ebe2d+'.'+_0x3df93,'cm_contacts.createdAt',_0x8edd('0x15')];return squel['insert']()['into'](_0x8edd('0x2f'))['fromQuery']([_0x8edd('0x1c'),_0x8edd('0x30'),_0x8edd('0x1d'),_0x3df93,_0x8edd('0x1e'),_0x8edd('0x1f')],squel['select']()['fields'](_0x5f35e1)['from'](_0x1ebe2d)[_0x8edd('0x10')]('cm_contacts',null,_0x8edd('0x25')+_0x1ebe2d+'.CmListId')['join'](_0x9747e,null,_0x9747e+_0x8edd('0x27')+_0x1ebe2d+'.'+_0x3df93)[_0x8edd('0x11')](_0x1ebe2d+_0x8edd('0x28'),_0x5f5265)['where']('cm_contacts.createdAt\x20=\x20?',NOW)[_0x8edd('0x11')](_0x8edd('0x2a'),squel[_0x8edd('0xe')]()[_0x8edd('0xf')]('phone')[_0x8edd('0x23')](_0x8edd('0x2f'))['where'](_0x8edd('0x32'),_0x5f5265)[_0x8edd('0x11')](_0x3df93+'\x20=\x20?',_0x1ebe2d+'.'+_0x3df93)))[_0x8edd('0x2d')]();}function insertCmContact(_0x183eb1,_0x4f5859,_0x5a55fa,_0x18b492){var _0x2a402e=_[_0x8edd('0x36')](_['keys'](_0x18b492),['ListId','CompanyId',_0x8edd('0x1e'),'updatedAt']);return squel[_0x8edd('0x18')]()[_0x8edd('0x19')]('cm_contacts')[_0x8edd('0x1b')](_0x2a402e,squel['select']()[_0x8edd('0x31')](_0x2a402e)[_0x8edd('0x23')](_0x4f5859)[_0x8edd('0x11')]('('+_0x5a55fa[_0x8edd('0x10')](',')+_0x8edd('0x37'),squel[_0x8edd('0xe')]()[_0x8edd('0x31')](_0x5a55fa)[_0x8edd('0x23')]('cm_contacts')[_0x8edd('0x11')](_0x8edd('0x32'),_0x183eb1)[_0x8edd('0x11')]('deletedAt\x20IS\x20NULL'))['where'](_0x8edd('0x38'),squel[_0x8edd('0xe')]()[_0x8edd('0xf')](_0x8edd('0x39'),_0x8edd('0x3a'))[_0x8edd('0x23')](_0x4f5859)[_0x8edd('0x3b')](_0x5a55fa[_0x8edd('0x10')](','))))['toString']();}function handleStop(){logger[_0x8edd('0x3c')](_0x8edd('0x3d'));stopped=!![];}function handleUncaughtException(_0x364f6d){logger[_0x8edd('0x3e')](_0x364f6d[_0x8edd('0x3f')]);process['exit'](0x1);}function handleError(_0x2a8aac,_0x3c01a2){stats[_0x8edd('0x40')][_0x8edd('0x41')]({'name':_0x3c01a2[_0x8edd('0x42')],'message':_0x3c01a2[_0x8edd('0x3f')],'row':_0x2a8aac});}function handleQuery(_0x948f7b){logger['info'](_0x948f7b);return db[_0x8edd('0x43')][_0x8edd('0x44')](_0x948f7b)[_0x8edd('0x45')](function(_0x597307){results['push'](_0x597307);})[_0x8edd('0x46')](function(_0xb816d){logger['error'](_0xb816d[_0x8edd('0x3f')]);});}function updateTzCampaigns(_0x399def){return new Promise(function(_0xa53ae5,_0x413a19){var _0x268b2a=squel['select']()[_0x8edd('0x31')]([_0x8edd('0x47'),_0x8edd('0x48')])['from'](_0x8edd('0x49'))[_0x8edd('0x10')]('campaigns_has_cm_lists',null,_0x8edd('0x4a'))['where'](_0x8edd('0x4b')+_0x399def);db['sequelize'][_0x8edd('0x44')](_0x268b2a[_0x8edd('0x2d')]())['spread'](function(_0x5b225d){var _0xa067ed=[];for(var _0x2c0ee5=0x0;_0x2c0ee5<_0x5b225d['length'];_0x2c0ee5++){_0xa067ed['push'](getTimezoneData(_0x5b225d[_0x2c0ee5],tmp_campaigns));}BPromise[_0x8edd('0x4c')](_0xa067ed)[_0x8edd('0x4d')](function(){_0xa53ae5({'val':0x1});});})[_0x8edd('0x46')](function(_0xbc1e99){logger[_0x8edd('0x3e')](_0xbc1e99[_0x8edd('0x3f')]);_0xa53ae5({'val':0x0});});});}function updateTzVoiceQueues(_0x517452){return new Promise(function(_0x26fed5,_0x4d310e){var _0x24a372=squel[_0x8edd('0xe')]()[_0x8edd('0x31')]([_0x8edd('0x4e'),'voice_queues.dialTimezone'])[_0x8edd('0x23')](_0x8edd('0x4f'))['join'](_0x8edd('0x50'),null,'voice_queues.id\x20=\x20voice_queues_has_cm_lists.VoiceQueueId')['where'](_0x8edd('0x51')+_0x517452);db[_0x8edd('0x43')][_0x8edd('0x44')](_0x24a372['toString']())[_0x8edd('0x45')](function(_0x559992){var _0xf77a64=[];for(var _0xb49713=0x0;_0xb49713<_0x559992[_0x8edd('0x52')];_0xb49713++){_0xf77a64[_0x8edd('0x41')](getTimezoneData(_0x559992[_0xb49713],tmp_voice_queues));}BPromise[_0x8edd('0x4c')](_0xf77a64)[_0x8edd('0x4d')](function(){_0x26fed5({'val':0x1});});})[_0x8edd('0x46')](function(_0x544e47){logger[_0x8edd('0x3e')](_0x544e47[_0x8edd('0x3f')]);_0x26fed5({'val':0x0});});});}function getTimezoneData(_0xe215d6,_0x3de7ff){return new Promise(function(_0x25bd35,_0x5ea980){var _0x3571c0=shared['timezones'];var _0x1000b4=_0x3571c0[_0xe215d6[_0x8edd('0x53')]];if(_[_0x8edd('0x54')](_0x1000b4)){_0x25bd35({'ret':0x1});}else{var _0x2b6b43=_0x1000b4[_0x8edd('0x55')];var _0x31014f=squel[_0x8edd('0x18')]()[_0x8edd('0x19')](_0x3de7ff)[_0x8edd('0x56')]('id',_0xe215d6['id'])[_0x8edd('0x56')](_0x8edd('0x57'),_0x2b6b43)[_0x8edd('0x56')](_0x8edd('0x53'),_0xe215d6[_0x8edd('0x53')])[_0x8edd('0x2d')]();return db[_0x8edd('0x43')][_0x8edd('0x44')](_0x31014f)[_0x8edd('0x45')](function(_0x385e78){_0x25bd35({'ret':0x1});})[_0x8edd('0x46')](function(_0x1c25ad){logger[_0x8edd('0x3e')](_0x1c25ad['message']);_0x5ea980({'ret':0x1});});}});}function handleTZQuery(_0x52e603){logger[_0x8edd('0x3c')](_0x52e603);return db[_0x8edd('0x43')][_0x8edd('0x44')](_0x52e603)['spread'](function(_0x588228){})[_0x8edd('0x46')](function(_0x46c04a){logger[_0x8edd('0x3e')](_0x46c04a[_0x8edd('0x3f')]);});}function main(_0x4f006f,_0x210762,_0xc4d417,_0xfc22b){logger[_0x8edd('0x3c')]('main',_0x4f006f,JSON['stringify'](_0x210762));process[_0x8edd('0x58')]('start');var _0x503148=_0x210762[_0x8edd('0x59')];var _0x243de9=_0x210762[_0x8edd('0x5a')];var _0x3d2809=path[_0x8edd('0x10')](config[_0x8edd('0x5b')],_0x8edd('0x5c'),_0x243de9+_0x8edd('0x5d'));hasTZ=_[_0x8edd('0x5e')](_0x503148)[_0x8edd('0x5f')](_0x8edd('0x53'));var _0x338fa5=_[_0x8edd('0x5e')](_0x503148)[_0x8edd('0x10')]();logger[_0x8edd('0x3c')]('header',_0x338fa5);if(hasTZ)_0x338fa5+=_0x8edd('0x60');fs[_0x8edd('0x61')](_0x3d2809,_0x338fa5+'\x0a');Papa[_0x8edd('0x62')](fs['createReadStream'](_0x4f006f),{'header':!![],'skipEmptyLines':!![],'step':function(_0x24d14e,_0x437843){try{for(var _0xb0daea=0x0,_0x4f0567=[];_0xb0daea<_0x24d14e[_0x8edd('0x63')]['length'];_0xb0daea++){stats[_0x8edd('0x64')]+=0x1;if(_0x24d14e[_0x8edd('0x40')][_0xb0daea]){handleError(_0x24d14e['data'][_0xb0daea],_0x24d14e['errors'][_0xb0daea]);}else{var _0x4447c6=[];for(var _0x474a02 in _0x503148){if(_0x503148['hasOwnProperty'](_0x474a02)){if(_0x24d14e[_0x8edd('0x63')][_0xb0daea][_0x503148[_0x474a02]]){var _0x4cd6f3=_[_0x8edd('0x65')](_0x24d14e[_0x8edd('0x63')][_0xb0daea][_0x503148[_0x474a02]]['replace'](/"/g,'\x27'));switch(_0x474a02){case _0x8edd('0x66'):var _0x5ecfe4=moment(_0x4cd6f3,_0x8edd('0xc'),!![]);if(_0x5ecfe4[_0x8edd('0x67')]()){_0x4f0567['push']('\x22'+_0x4cd6f3+'\x22');}else{_0x4447c6[_0x8edd('0x41')](_0x8edd('0x68'));}break;case _0x8edd('0x20'):var _0x108e69=parseInt(_0x4cd6f3);_0x4cd6f3=_[_0x8edd('0x69')](_0x108e69)||_0x108e69<0x0||_0x108e69>0x4?_0xfc22b?0x3:0x2:_0x108e69;_0x4f0567['push']('\x22'+_0x4cd6f3+'\x22');break;case _0x8edd('0x21'):var _0x2da68a=parseInt(_0x4cd6f3);if(_[_0x8edd('0x6a')](_0x2da68a)&&_[_0x8edd('0x5f')](_0xc4d417,_0x2da68a)){_0x4f0567[_0x8edd('0x41')]('\x22'+_0x2da68a+'\x22');}else{_0x4447c6['push'](_0x8edd('0x6b'));}break;case _0x8edd('0x6c'):if(isEmail(_0x4cd6f3)){_0x4f0567[_0x8edd('0x41')]('\x22'+_0x4cd6f3+'\x22');}else{_0x4447c6[_0x8edd('0x41')](_0x8edd('0x6d'));}break;case _0x8edd('0x6e'):var _0xfb63ce=moment(_0x4cd6f3,_0x8edd('0x6f'),!![]);if(_0xfb63ce['isValid']()){_0x4f0567['push']('\x22'+_0x4cd6f3+'\x22');}else{_0x4447c6[_0x8edd('0x41')](_0x8edd('0x70'));}break;case _0x8edd('0x53'):var _0x2ec4e0=shared[_0x8edd('0x71')];var _0x39fc0f=_0x2ec4e0[_0x4cd6f3];if(!_[_0x8edd('0x54')](_0x39fc0f)){var _0x2ee9df=_0x39fc0f['utcOffset'];_0x4f0567['push']('\x22'+_0x4cd6f3+'\x22');_0x4f0567[_0x8edd('0x41')]('\x22'+_0x2ee9df+'\x22');}break;default:_0x4f0567[_0x8edd('0x41')]('\x22'+_0x4cd6f3+'\x22');}}else{switch(_0x474a02){case _0x8edd('0x72'):case _0x8edd('0x1c'):_0x4447c6['push'](_0x474a02+_0x8edd('0x73'));break;default:_0x4f0567['push']('\x22\x22');}}}}if(_0x4447c6[_0x8edd('0x52')]){handleError(_0x24d14e['data'][_0xb0daea],{'code':'SystemRow','message':_0x4447c6[_0x8edd('0x10')]()});}else{fs[_0x8edd('0x74')](_0x3d2809,_0x4f0567[_0x8edd('0x10')]()+'\x0a');}_0x4f0567=[];}if(!(stats[_0x8edd('0x64')]%0xc8)){socket['emit']('contact:import:'+_0x243de9,stats);stats[_0x8edd('0x40')]=[];}}if(stopped){logger[_0x8edd('0x3c')]('Abort\x20parser');_0x437843[_0x8edd('0x75')]();}}catch(_0x55b0db){handleError(_0x24d14e[_0x8edd('0x63')][_0xb0daea],{'code':'SystemError','message':_0x55b0db[_0x8edd('0x3f')]});logger['error']('step',_0x55b0db['message']);}},'complete':function(){try{var _0x1d9535=[];var _0x4fe92c=[];var _0x55992a=_0x8edd('0x24');if(_0x210762['duplicates']&&_0x210762[_0x8edd('0x76')]['length']){_0x55992a='cm_contacts_'+_0x243de9;_0x1d9535[_0x8edd('0x41')](_0x8edd('0x77')+_0x55992a+_0x8edd('0x78'));}tmp_campaigns=_0x8edd('0x79')+_0x243de9;tmp_voice_queues='voice_queues_'+_0x243de9;_0x4fe92c[_0x8edd('0x41')](_0x8edd('0x77')+tmp_campaigns+_0x8edd('0x7a'));_0x4fe92c['push'](_0x8edd('0x77')+tmp_voice_queues+'(id\x20int,dialTimezone\x20varchar(255),offset\x20int);');BPromise[_0x8edd('0x7b')](_0x4fe92c,handleTZQuery)['then'](function(_0x307496){updateTzCampaigns(_0x210762[_0x8edd('0x1d')])[_0x8edd('0x4d')](function(_0x5e63de){updateTzVoiceQueues(_0x210762['ListId'])[_0x8edd('0x4d')](function(_0x321e0b){var _0x214473=util[_0x8edd('0x7c')](_0x8edd('0x7d'),_0x3d2809,_0x55992a,_0x338fa5,_0x210762[_0x8edd('0x1d')],_0x210762[_0x8edd('0x7e')]||null,NOW,NOW);if(_[_0x8edd('0x54')](_0x503148[_0x8edd('0x66')])){_0x214473+=',\x20scheduledAt\x20=\x20NOW()';}_0x1d9535[_0x8edd('0x41')](_0x214473);if(_0x210762['duplicates']&&_0x210762['duplicates'][_0x8edd('0x52')]){_0x1d9535[_0x8edd('0x41')](insertCmContact(_0x210762['ListId'],_0x55992a,_0x210762[_0x8edd('0x76')],_0x503148));_0x1d9535[_0x8edd('0x41')](_0x8edd('0x7f')+_0x55992a+';');}if(hasTZ){_0x1d9535[_0x8edd('0x41')](insertTzCmHopper(_0x210762[_0x8edd('0x1d')],_0x8edd('0x50'),_0x8edd('0x4f'),_0x8edd('0x80'),_0xfc22b,tmp_voice_queues));_0x1d9535[_0x8edd('0x41')](insertTzCmHopperBlack(_0x210762['ListId'],_0x8edd('0x81'),'voice_queues',_0x8edd('0x80')));_0x1d9535[_0x8edd('0x41')](insertTzCmHopper(_0x210762[_0x8edd('0x1d')],'campaigns_has_cm_lists',_0x8edd('0x49'),_0x8edd('0x82'),_0xfc22b,tmp_campaigns));_0x1d9535[_0x8edd('0x41')](insertTzCmHopperBlack(_0x210762['ListId'],_0x8edd('0x83'),'campaigns',_0x8edd('0x82')));}else{_0x1d9535[_0x8edd('0x41')](insertCmHopper(_0x210762[_0x8edd('0x1d')],'voice_queues_has_cm_lists',_0x8edd('0x4f'),_0x8edd('0x80'),_0xfc22b));_0x1d9535[_0x8edd('0x41')](insertCmHopperBlack(_0x210762['ListId'],_0x8edd('0x81'),_0x8edd('0x4f'),'VoiceQueueId'));_0x1d9535['push'](insertCmHopper(_0x210762['ListId'],'campaigns_has_cm_lists','campaigns',_0x8edd('0x82'),_0xfc22b));_0x1d9535[_0x8edd('0x41')](insertCmHopperBlack(_0x210762[_0x8edd('0x1d')],_0x8edd('0x83'),_0x8edd('0x49'),'CampaignId'));}_0x1d9535[_0x8edd('0x41')](_0x8edd('0x7f')+tmp_campaigns+';');_0x1d9535[_0x8edd('0x41')]('DROP\x20TABLE\x20'+tmp_voice_queues+';');BPromise[_0x8edd('0x7b')](_0x1d9535,handleQuery)[_0x8edd('0x4d')](function(_0x11cc34){stats[_0x8edd('0x84')]=!![];stats[_0x8edd('0x85')]=_0x210762[_0x8edd('0x76')]&&_0x210762['duplicates']['length']?results[0x2]['affectedRows']:results[0x0][_0x8edd('0x85')];socket[_0x8edd('0x86')](_0x8edd('0x87')+_0x243de9,stats);fs[_0x8edd('0x88')](_0x4f006f);fs[_0x8edd('0x88')](_0x3d2809);process['exit'](0x0);})['catch'](function(_0x247bae){logger[_0x8edd('0x3e')](_0x247bae[_0x8edd('0x3f')]);process[_0x8edd('0x89')](0x1);});});});});}catch(_0x2e7b91){logger[_0x8edd('0x3e')](_0x8edd('0x8a'),_0x2e7b91[_0x8edd('0x3f')]);process[_0x8edd('0x89')](0x1);}},'error':function(_0x3387a0,_0x271cb9,_0x34859b,_0x54f4e8){throw new Error(_0x54f4e8);}});}function validate(){if(process[_0x8edd('0x8b')]&&process[_0x8edd('0x8b')][_0x8edd('0x52')]<0x4){throw new Error('arguments\x20<filename>\x20<parameters>\x20<agents>');}var _0xbfc649=path[_0x8edd('0x10')](config[_0x8edd('0x5b')],_0x8edd('0x5c'),process['argv'][0x2]);if(!fs[_0x8edd('0x8c')](_0xbfc649)){throw new Error(_0x8edd('0x8d'));}var _0x3e7994={};try{_0x3e7994=JSON[_0x8edd('0x62')](process['argv'][0x3]);if(!_0x3e7994[_0x8edd('0x59')]){throw new Error(_0x8edd('0x8e'));}if(!_0x3e7994[_0x8edd('0x59')][_0x8edd('0x1c')]){throw new Error(_0x8edd('0x8f'));}if(!_0x3e7994[_0x8edd('0x59')][_0x8edd('0x72')]){throw new Error(_0x8edd('0x90'));}var _0x5a4cc1=0x0;if(_0x3e7994['binding'][_0x8edd('0x21')]){_0x5a4cc1=0x1;}if(!_0x3e7994[_0x8edd('0x1d')]){throw new Error(_0x8edd('0x91'));}}catch(_0x147998){throw new Error(_0x8edd('0x92'));}var _0x47d5b9=[];try{_0x47d5b9=_[_0x8edd('0x93')](JSON[_0x8edd('0x62')](process['argv'][0x4]),'id');}catch(_0x35ee77){logger[_0x8edd('0x3c')](_0x8edd('0x94'));}main(_0xbfc649,_0x3e7994,_0x47d5b9,_0x5a4cc1);}validate();process['on'](_0x8edd('0x95'),handleStop);process['on']('uncaughtException',handleUncaughtException);