Built motion from commit ab870f9e.|2.5.44
[motion2.git] / server / services / routing / server / applications / queue.js
index 3e4a31d..51cd4b0 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x3e74=['beepall','log','stack','validate','util','seq-queue','moment','../../../../config/logger','./strategy','redis','defaults','localhost','queue_id','account','queue','from','emit','clone','format','%sQueuesWaitingInteractions','pick','%s:queue:%s','%s_queue_waiting_interaction:%s','../../rpc/openchannelQueueReport','../../rpc/mailQueueReport','../../rpc/faxQueueReport','../../rpc/whatsappQueueReport','string','name\x20is\x20a\x20string\x20and\x20it\x20is\x20required','number','timeout\x20is\x20a\x20number','waiting','body','YYYY-MM-DD\x20HH:mm:ss','contact','list','upperFirst','QueueId','InteractionId','interaction','MessageId','message','channel','WebsiteId','info','[%s][START:QUEUE][NAME:%s]','name','QueueReport','create','catch','error','create\x20queue\x20report','accepted','update\x20queue\x20report','timeout','[%s][END:QUEUE][NAME:%s]','update','toLowerCase','consequence','length','[%s][QUEUE]\x20%s','map','stop','find','atimeout','qtimeout','end','[%s][QUEUE]\x20ROUTING\x20STOPPED','close','rules','complete','next','strategy','rrmemory'];(function(_0x1030ce,_0xbe3f74){var _0x3367fd=function(_0x387153){while(--_0x387153){_0x1030ce['push'](_0x1030ce['shift']());}};_0x3367fd(++_0xbe3f74);}(_0x3e74,0x175));var _0x43e7=function(_0x50cefe,_0x13b0ce){_0x50cefe=_0x50cefe-0x0;var _0x3be4e9=_0x3e74[_0x50cefe];return _0x3be4e9;};'use strict';var schema=require(_0x43e7('0x0'));var _=require('lodash');var util=require(_0x43e7('0x1'));var seqqueue=require(_0x43e7('0x2'));var moment=require(_0x43e7('0x3'));var Redis=require('ioredis');var config=require('../../../../config/environment');var logger=require(_0x43e7('0x4'))('routing');var strategy=require(_0x43e7('0x5'));config[_0x43e7('0x6')]=_[_0x43e7('0x7')](config[_0x43e7('0x6')],{'host':_0x43e7('0x8'),'port':0x18eb});var io=require('socket.io-emitter')(new Redis(config[_0x43e7('0x6')]));var attributes=['id',_0x43e7('0x9'),_0x43e7('0xa'),_0x43e7('0xb'),_0x43e7('0xc'),'joinAt'];function emit(_0x212c6c,_0x554d44,_0x54948c){io['to'](_0x212c6c)[_0x43e7('0xd')](_0x554d44,_0x54948c);}function emitChannelQueueInteraction(_0x4139c9,_0x5c34f4,_0x2803d9,_0x513707,_0xf7c520,_0x37302c,_0x4ebc8e,_0x3eb206){var _0xc960ea=_[_0x43e7('0xe')](_0x2803d9);_0xc960ea[_0x43e7('0x9')]=_0x3eb206;_0xc960ea['queue']=_0x5c34f4;_0xc960ea['account']=_0x513707;_0xc960ea['id']=_0xf7c520;if(_0x37302c){_0x4ebc8e[util[_0x43e7('0xf')](_0x43e7('0x10'),_0x4139c9)][_0xf7c520]=_[_0x43e7('0x11')](_0xc960ea,attributes);}else{delete _0x4ebc8e[util['format']('%sQueuesWaitingInteractions',_0x4139c9)][_0xf7c520];}emit(util[_0x43e7('0xf')](_0x43e7('0x12'),_0x4139c9,_0x5c34f4),util[_0x43e7('0xf')](_0x43e7('0x13'),_0x4139c9,_0x37302c?'save':'remove'),_[_0x43e7('0x11')](_0xc960ea,attributes));}var rpc={'openchannelQueueReport':require(_0x43e7('0x14')),'mailQueueReport':require(_0x43e7('0x15')),'chatQueueReport':require('../../rpc/chatQueueReport'),'smsQueueReport':require('../../rpc/smsQueueReport'),'faxQueueReport':require(_0x43e7('0x16')),'whatsappQueueReport':require(_0x43e7('0x17'))};var queue=schema({'name':{'type':_0x43e7('0x18'),'required':!![],'message':_0x43e7('0x19')},'timeout':{'type':_0x43e7('0x1a'),'message':_0x43e7('0x1b')}});function startRouting(_0x619236,_0x1441ef,_0x2377a3,_0xab63cf){if(_0x619236&&_0x1441ef&&_0x2377a3){_0x1441ef[_0x43e7('0x1c')]+=0x1;var _0x177ee1={'uniqueid':_0x619236,'from':_0x2377a3['body']?_0x2377a3[_0x43e7('0x1d')][_0x43e7('0xc')]:'','joinAt':moment()['format'](_0x43e7('0x1e')),'ContactId':_0x2377a3[_0x43e7('0x1f')]?_0x2377a3[_0x43e7('0x1f')]['id']:null,'ListId':_0x2377a3[_0x43e7('0x20')]?_0x2377a3[_0x43e7('0x20')]['id']:null};_0x177ee1[_[_0x43e7('0x21')](_0x2377a3['channel'])+_0x43e7('0x22')]=_0x1441ef['id']||null;_0x177ee1[_['upperFirst'](_0x2377a3['channel'])+_0x43e7('0x23')]=_0x2377a3[_0x43e7('0x24')]?_0x2377a3['interaction']['id']:null;_0x177ee1[_[_0x43e7('0x21')](_0x2377a3['channel'])+_0x43e7('0x25')]=_0x2377a3['message']?_0x2377a3[_0x43e7('0x26')]['id']:null;_0x177ee1[_[_0x43e7('0x21')](_0x2377a3[_0x43e7('0x27')])+(_0x2377a3[_0x43e7('0x27')]!=='chat'?'AccountId':_0x43e7('0x28'))]=_0x2377a3['account']?_0x2377a3[_0x43e7('0xa')]['id']:null;logger[_0x43e7('0x29')](util[_0x43e7('0xf')](_0x43e7('0x2a'),_0x619236,_0x1441ef['name']));emitChannelQueueInteraction(_0x2377a3[_0x43e7('0x27')],_0x1441ef[_0x43e7('0x2b')],_0x177ee1,_0x2377a3[_0x43e7('0xa')][_0x43e7('0x2b')],_0x2377a3[_0x43e7('0x26')]['id'],!![],_0xab63cf,_0x1441ef['id']);if(rpc[_0x2377a3[_0x43e7('0x27')]+_0x43e7('0x2c')]){return rpc[_0x2377a3[_0x43e7('0x27')]+_0x43e7('0x2c')][_0x43e7('0x2d')](_0x177ee1)[_0x43e7('0x2e')](function(_0x19725a){logger[_0x43e7('0x2f')](_0x43e7('0x30'));});}}}function stopRouting(_0x4bdb17,_0x238321,_0x44f6b0,_0x3b8f78){if(_0x4bdb17&&_0x238321){_0x238321[_0x43e7('0x1c')]-=0x1;var _0x4251c8={'leaveAt':moment()['format'](_0x43e7('0x1e')),'acceptAt':moment()[_0x43e7('0xf')](_0x43e7('0x1e')),'reason':_0x43e7('0x31')};logger['info'](util['format']('[%s][STOP:QUEUE][NAME:%s]',_0x4bdb17,_0x238321[_0x43e7('0x2b')]));emitChannelQueueInteraction(_0x44f6b0[_0x43e7('0x27')],_0x238321[_0x43e7('0x2b')],_0x44f6b0[_0x43e7('0x1d')],_0x44f6b0[_0x43e7('0xa')][_0x43e7('0x2b')],_0x44f6b0['message']['id'],![],_0x3b8f78,_0x238321['id']);if(rpc[_0x44f6b0['channel']+'QueueReport']){return rpc[_0x44f6b0['channel']+'QueueReport']['update'](_0x4bdb17,_0x4251c8)['catch'](function(_0x14d888){logger['error'](_0x43e7('0x32'));});}}}function endRouting(_0x8e9f40,_0x31bc78,_0x50a2d0,_0x40f72f){if(_0x8e9f40&&_0x31bc78){_0x31bc78[_0x43e7('0x1c')]-=0x1;var _0x101d45={'leaveAt':moment()['format']('YYYY-MM-DD\x20HH:mm:ss'),'exitAt':moment()['format'](_0x43e7('0x1e')),'reason':_0x43e7('0x33')};logger[_0x43e7('0x29')](util[_0x43e7('0xf')](_0x43e7('0x34'),_0x8e9f40,_0x31bc78[_0x43e7('0x2b')]));emitChannelQueueInteraction(_0x50a2d0[_0x43e7('0x27')],_0x31bc78[_0x43e7('0x2b')],_0x50a2d0['body'],_0x50a2d0[_0x43e7('0xa')][_0x43e7('0x2b')],_0x50a2d0['message']['id'],![],_0x40f72f);if(rpc[_0x50a2d0[_0x43e7('0x27')]+'QueueReport']){return rpc[_0x50a2d0[_0x43e7('0x27')]+_0x43e7('0x2c')][_0x43e7('0x35')](_0x8e9f40,_0x101d45)[_0x43e7('0x2e')](function(_0x35ac85){logger[_0x43e7('0x2f')]('update\x20queue\x20report');});}}}function handleFindQueue(_0x574a93){return function(_0x30dfa9){return _0x30dfa9[_0x43e7('0x2b')][_0x43e7('0x36')]()===_0x574a93[_0x43e7('0x36')]();};}exports[_0x43e7('0x37')]=function(_0x4a4a85,_0x32a451,_0x4227c4,_0x575439){return function(_0x3628e0){try{var _0x51a69c={'name':_0x32a451[0x0],'timeout':_0x32a451[0x1]};var _0x2ad8ef=queue['validate'](_0x51a69c,{'typecast':!![]});if(_0x2ad8ef[_0x43e7('0x38')]){logger[_0x43e7('0x2f')](_0x43e7('0x39'),_0x4a4a85,_[_0x43e7('0x3a')](_0x2ad8ef,'message')['join'](',\x20'));_0x3628e0[_0x43e7('0x3b')]();}else{var _0x40c509=_[_0x43e7('0x3c')](_0x4227c4[_0x575439[_0x43e7('0x27')]+'Queues'],handleFindQueue(_0x51a69c['name']));if(_0x40c509){startRouting(_0x4a4a85,_0x40c509,_0x575439,_0x4227c4);var _0x5dd988=(_0x40c509[_0x43e7('0x33')]||0xa)*0x3e8;var _0x57f5d0=(_0x51a69c[_0x43e7('0x33')]||0x14)*0x3e8;var _0x4b3a59,_0x5b28db;if(_0x5dd988>_0x57f5d0){_0x57f5d0=_0x5dd988;}var _0x46b2e6=seqqueue['createQueue'](_0x5dd988);_0x46b2e6['id']=_0x4a4a85;_0x46b2e6[_0x43e7('0x3d')]=_0x5dd988;_0x46b2e6[_0x43e7('0x3e')]=_0x57f5d0;_0x46b2e6[_0x43e7('0x27')]=_0x575439[_0x43e7('0x27')];_0x4227c4['rules'][_0x4a4a85]['on'](_0x43e7('0x3f'),function(){logger[_0x43e7('0x29')](_0x43e7('0x40'),_0x4a4a85);stopRouting(_0x4a4a85,_0x40c509,_0x575439,_0x4227c4);clearTimeout(_0x4b3a59);_0x4b3a59=undefined;_0x46b2e6[_0x43e7('0x41')](!![]);if(_0x4227c4[_0x43e7('0x42')][_0x4a4a85]){delete _0x4227c4[_0x43e7('0x42')][_0x4a4a85];}_0x3628e0['stop']();});_0x4227c4['rules'][_0x4a4a85]['on'](_0x43e7('0x43'),function(){if(_0x4227c4[_0x43e7('0x42')][_0x4a4a85]){delete _0x4227c4[_0x43e7('0x42')][_0x4a4a85];}});_0x4b3a59=setTimeout(function(){logger['info']('[%s][QUEUE]\x20APPLICATION\x20END',_0x4a4a85);endRouting(_0x4a4a85,_0x40c509,_0x575439,_0x4227c4);clearTimeout(_0x4b3a59);_0x46b2e6['close'](!![]);_0x3628e0[_0x43e7('0x44')]();},_0x57f5d0);switch(_0x40c509[_0x43e7('0x45')]){case'rrmemory':strategy[_0x43e7('0x46')](_0x46b2e6,_0x40c509,_0x4227c4,_0x575439);break;default:strategy[_0x43e7('0x47')](_0x46b2e6,_0x40c509,_0x4227c4,_0x575439);}}else{logger[_0x43e7('0x2f')]('[%s][QUEUE]\x20queue\x20not\x20found\x20%s',_0x4a4a85,_0x51a69c['name']);_0x3628e0['stop']();}}}catch(_0x4de644){console[_0x43e7('0x48')](_0x4de644);logger[_0x43e7('0x2f')]('[%s][QUEUE]\x20%s',_0x4a4a85,_0x4de644[_0x43e7('0x49')]);_0x3628e0[_0x43e7('0x3b')]();}};};
\ No newline at end of file
+var _0xe7e1=['close','complete','[%s][QUEUE]\x20APPLICATION\x20END','next','rrmemory','beepall','[%s][QUEUE]\x20queue\x20not\x20found\x20%s','log','stack','validate','lodash','util','seq-queue','moment','../../../../config/environment','routing','./strategy','redis','defaults','queue_id','queue','from','joinAt','clone','account','format','%sQueuesWaitingInteractions','%s:queue:%s','%s_queue_waiting_interaction:%s','save','remove','../../rpc/openchannelQueueReport','../../rpc/mailQueueReport','../../rpc/chatQueueReport','../../rpc/faxQueueReport','name\x20is\x20a\x20string\x20and\x20it\x20is\x20required','timeout\x20is\x20a\x20number','waiting','body','YYYY-MM-DD\x20HH:mm:ss','contact','list','upperFirst','channel','QueueId','InteractionId','interaction','MessageId','chat','AccountId','WebsiteId','info','[%s][START:QUEUE][NAME:%s]','name','message','QueueReport','catch','error','accepted','[%s][STOP:QUEUE][NAME:%s]','update','update\x20queue\x20report','timeout','[%s][END:QUEUE][NAME:%s]','toLowerCase','consequence','[%s][QUEUE]\x20%s','stop','find','Queues','createQueue','atimeout','qtimeout','rules','end','[%s][QUEUE]\x20ROUTING\x20STOPPED'];(function(_0x46d0c9,_0x526bfa){var _0x174506=function(_0x654bc6){while(--_0x654bc6){_0x46d0c9['push'](_0x46d0c9['shift']());}};_0x174506(++_0x526bfa);}(_0xe7e1,0x185));var _0x1e7e=function(_0x4b2436,_0x452299){_0x4b2436=_0x4b2436-0x0;var _0x4f5ab2=_0xe7e1[_0x4b2436];return _0x4f5ab2;};'use strict';var schema=require(_0x1e7e('0x0'));var _=require(_0x1e7e('0x1'));var util=require(_0x1e7e('0x2'));var seqqueue=require(_0x1e7e('0x3'));var moment=require(_0x1e7e('0x4'));var Redis=require('ioredis');var config=require(_0x1e7e('0x5'));var logger=require('../../../../config/logger')(_0x1e7e('0x6'));var strategy=require(_0x1e7e('0x7'));config[_0x1e7e('0x8')]=_[_0x1e7e('0x9')](config[_0x1e7e('0x8')],{'host':'localhost','port':0x18eb});var io=require('socket.io-emitter')(new Redis(config['redis']));var attributes=['id',_0x1e7e('0xa'),'account',_0x1e7e('0xb'),_0x1e7e('0xc'),_0x1e7e('0xd')];function emit(_0x27ffd8,_0x3d8787,_0xaca878){io['to'](_0x27ffd8)['emit'](_0x3d8787,_0xaca878);}function emitChannelQueueInteraction(_0x4634f1,_0xf9d787,_0x66e5c5,_0x545ce4,_0x1cb8b9,_0x236600,_0x3e2e3a,_0x156dc9){var _0x1ba1b7=_[_0x1e7e('0xe')](_0x66e5c5);_0x1ba1b7[_0x1e7e('0xa')]=_0x156dc9;_0x1ba1b7['queue']=_0xf9d787;_0x1ba1b7[_0x1e7e('0xf')]=_0x545ce4;_0x1ba1b7['id']=_0x1cb8b9;if(_0x236600){_0x3e2e3a[util[_0x1e7e('0x10')]('%sQueuesWaitingInteractions',_0x4634f1)][_0x1cb8b9]=_['pick'](_0x1ba1b7,attributes);}else{delete _0x3e2e3a[util[_0x1e7e('0x10')](_0x1e7e('0x11'),_0x4634f1)][_0x1cb8b9];}emit(util[_0x1e7e('0x10')](_0x1e7e('0x12'),_0x4634f1,_0xf9d787),util['format'](_0x1e7e('0x13'),_0x4634f1,_0x236600?_0x1e7e('0x14'):_0x1e7e('0x15')),_['pick'](_0x1ba1b7,attributes));}var rpc={'openchannelQueueReport':require(_0x1e7e('0x16')),'mailQueueReport':require(_0x1e7e('0x17')),'chatQueueReport':require(_0x1e7e('0x18')),'smsQueueReport':require('../../rpc/smsQueueReport'),'faxQueueReport':require(_0x1e7e('0x19')),'whatsappQueueReport':require('../../rpc/whatsappQueueReport')};var queue=schema({'name':{'type':'string','required':!![],'message':_0x1e7e('0x1a')},'timeout':{'type':'number','message':_0x1e7e('0x1b')}});function startRouting(_0x36602c,_0x1f822c,_0x413959,_0x16a60d){if(_0x36602c&&_0x1f822c&&_0x413959){_0x1f822c[_0x1e7e('0x1c')]+=0x1;var _0x2c0cb5={'uniqueid':_0x36602c,'from':_0x413959[_0x1e7e('0x1d')]?_0x413959['body']['from']:'','joinAt':moment()['format'](_0x1e7e('0x1e')),'ContactId':_0x413959[_0x1e7e('0x1f')]?_0x413959[_0x1e7e('0x1f')]['id']:null,'ListId':_0x413959[_0x1e7e('0x20')]?_0x413959['list']['id']:null};_0x2c0cb5[_[_0x1e7e('0x21')](_0x413959[_0x1e7e('0x22')])+_0x1e7e('0x23')]=_0x1f822c['id']||null;_0x2c0cb5[_[_0x1e7e('0x21')](_0x413959[_0x1e7e('0x22')])+_0x1e7e('0x24')]=_0x413959[_0x1e7e('0x25')]?_0x413959[_0x1e7e('0x25')]['id']:null;_0x2c0cb5[_[_0x1e7e('0x21')](_0x413959['channel'])+_0x1e7e('0x26')]=_0x413959['message']?_0x413959['message']['id']:null;_0x2c0cb5[_[_0x1e7e('0x21')](_0x413959[_0x1e7e('0x22')])+(_0x413959[_0x1e7e('0x22')]!==_0x1e7e('0x27')?_0x1e7e('0x28'):_0x1e7e('0x29'))]=_0x413959[_0x1e7e('0xf')]?_0x413959[_0x1e7e('0xf')]['id']:null;logger[_0x1e7e('0x2a')](util[_0x1e7e('0x10')](_0x1e7e('0x2b'),_0x36602c,_0x1f822c[_0x1e7e('0x2c')]));emitChannelQueueInteraction(_0x413959[_0x1e7e('0x22')],_0x1f822c['name'],_0x2c0cb5,_0x413959[_0x1e7e('0xf')][_0x1e7e('0x2c')],_0x413959[_0x1e7e('0x2d')]['id'],!![],_0x16a60d,_0x1f822c['id']);if(rpc[_0x413959['channel']+'QueueReport']){return rpc[_0x413959[_0x1e7e('0x22')]+_0x1e7e('0x2e')]['create'](_0x2c0cb5)[_0x1e7e('0x2f')](function(_0x436a91){logger[_0x1e7e('0x30')]('create\x20queue\x20report');});}}}function stopRouting(_0x211800,_0x587f35,_0x35c645,_0x5c8f09){if(_0x211800&&_0x587f35){_0x587f35['waiting']-=0x1;var _0x1a02a9={'leaveAt':moment()[_0x1e7e('0x10')]('YYYY-MM-DD\x20HH:mm:ss'),'acceptAt':moment()[_0x1e7e('0x10')](_0x1e7e('0x1e')),'reason':_0x1e7e('0x31')};logger[_0x1e7e('0x2a')](util[_0x1e7e('0x10')](_0x1e7e('0x32'),_0x211800,_0x587f35[_0x1e7e('0x2c')]));emitChannelQueueInteraction(_0x35c645[_0x1e7e('0x22')],_0x587f35[_0x1e7e('0x2c')],_0x35c645[_0x1e7e('0x1d')],_0x35c645[_0x1e7e('0xf')][_0x1e7e('0x2c')],_0x35c645['message']['id'],![],_0x5c8f09,_0x587f35['id']);if(rpc[_0x35c645[_0x1e7e('0x22')]+_0x1e7e('0x2e')]){return rpc[_0x35c645[_0x1e7e('0x22')]+_0x1e7e('0x2e')][_0x1e7e('0x33')](_0x211800,_0x1a02a9)['catch'](function(_0x1b0d41){logger[_0x1e7e('0x30')](_0x1e7e('0x34'));});}}}function endRouting(_0x424400,_0x330c07,_0x4bb229,_0x4003cd){if(_0x424400&&_0x330c07){_0x330c07[_0x1e7e('0x1c')]-=0x1;var _0x542bb7={'leaveAt':moment()[_0x1e7e('0x10')](_0x1e7e('0x1e')),'exitAt':moment()[_0x1e7e('0x10')](_0x1e7e('0x1e')),'reason':_0x1e7e('0x35')};logger[_0x1e7e('0x2a')](util[_0x1e7e('0x10')](_0x1e7e('0x36'),_0x424400,_0x330c07['name']));emitChannelQueueInteraction(_0x4bb229[_0x1e7e('0x22')],_0x330c07[_0x1e7e('0x2c')],_0x4bb229[_0x1e7e('0x1d')],_0x4bb229[_0x1e7e('0xf')][_0x1e7e('0x2c')],_0x4bb229[_0x1e7e('0x2d')]['id'],![],_0x4003cd);if(rpc[_0x4bb229[_0x1e7e('0x22')]+'QueueReport']){return rpc[_0x4bb229[_0x1e7e('0x22')]+_0x1e7e('0x2e')][_0x1e7e('0x33')](_0x424400,_0x542bb7)[_0x1e7e('0x2f')](function(_0x3c3930){logger['error'](_0x1e7e('0x34'));});}}}function handleFindQueue(_0x22f01d){return function(_0x1826f5){return _0x1826f5[_0x1e7e('0x2c')][_0x1e7e('0x37')]()===_0x22f01d[_0x1e7e('0x37')]();};}exports[_0x1e7e('0x38')]=function(_0x174713,_0x26c3e0,_0x54743c,_0x333e21){return function(_0x2e33f6){try{var _0x337f43={'name':_0x26c3e0[0x0],'timeout':_0x26c3e0[0x1]};var _0x30401f=queue[_0x1e7e('0x0')](_0x337f43,{'typecast':!![]});if(_0x30401f['length']){logger[_0x1e7e('0x30')](_0x1e7e('0x39'),_0x174713,_['map'](_0x30401f,_0x1e7e('0x2d'))['join'](',\x20'));_0x2e33f6[_0x1e7e('0x3a')]();}else{var _0x1f9aca=_[_0x1e7e('0x3b')](_0x54743c[_0x333e21['channel']+_0x1e7e('0x3c')],handleFindQueue(_0x337f43[_0x1e7e('0x2c')]));if(_0x1f9aca){startRouting(_0x174713,_0x1f9aca,_0x333e21,_0x54743c);var _0x2e33be=(_0x1f9aca[_0x1e7e('0x35')]||0xa)*0x3e8;var _0x336d07=(_0x337f43[_0x1e7e('0x35')]||0x14)*0x3e8;var _0x32ff8d,_0x82b171;if(_0x2e33be>_0x336d07){_0x336d07=_0x2e33be;}var _0x22c947=seqqueue[_0x1e7e('0x3d')](_0x2e33be);_0x22c947['id']=_0x174713;_0x22c947[_0x1e7e('0x3e')]=_0x2e33be;_0x22c947[_0x1e7e('0x3f')]=_0x336d07;_0x22c947[_0x1e7e('0x22')]=_0x333e21[_0x1e7e('0x22')];_0x54743c[_0x1e7e('0x40')][_0x174713]['on'](_0x1e7e('0x41'),function(){logger['info'](_0x1e7e('0x42'),_0x174713);stopRouting(_0x174713,_0x1f9aca,_0x333e21,_0x54743c);clearTimeout(_0x32ff8d);_0x32ff8d=undefined;_0x22c947[_0x1e7e('0x43')](!![]);if(_0x54743c[_0x1e7e('0x40')][_0x174713]){delete _0x54743c[_0x1e7e('0x40')][_0x174713];}_0x2e33f6['stop']();});_0x54743c['rules'][_0x174713]['on'](_0x1e7e('0x44'),function(){if(_0x54743c['rules'][_0x174713]){delete _0x54743c[_0x1e7e('0x40')][_0x174713];}});_0x32ff8d=setTimeout(function(){logger[_0x1e7e('0x2a')](_0x1e7e('0x45'),_0x174713);endRouting(_0x174713,_0x1f9aca,_0x333e21,_0x54743c);clearTimeout(_0x32ff8d);_0x22c947[_0x1e7e('0x43')](!![]);_0x2e33f6[_0x1e7e('0x46')]();},_0x336d07);switch(_0x1f9aca['strategy']){case _0x1e7e('0x47'):strategy[_0x1e7e('0x47')](_0x22c947,_0x1f9aca,_0x54743c,_0x333e21);break;default:strategy[_0x1e7e('0x48')](_0x22c947,_0x1f9aca,_0x54743c,_0x333e21);}}else{logger[_0x1e7e('0x30')](_0x1e7e('0x49'),_0x174713,_0x337f43['name']);_0x2e33f6[_0x1e7e('0x3a')]();}}}catch(_0x3deb32){console[_0x1e7e('0x4a')](_0x3deb32);logger['error'](_0x1e7e('0x39'),_0x174713,_0x3deb32[_0x1e7e('0x4b')]);_0x2e33f6[_0x1e7e('0x3a')]();}};};
\ No newline at end of file