Built motion from commit d5e4af8c.|2.6.23
[motion2.git] / server / services / routing / server / applications / queue.js
index 51cd4b0..1421ed7 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-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
+var _0x0e1f=['create','catch','error','create\x20queue\x20report','accepted','info','Interaction','update','then','update\x20queue\x20report','timeout','[%s][END:QUEUE][NAME:%s]','toLowerCase','consequence','length','[%s][QUEUE]\x20%s','stop','find','Queues','createQueue','atimeout','qtimeout','rules','close','complete','[%s][QUEUE]\x20APPLICATION\x20END','rrmemory','beepall','[%s][QUEUE]\x20queue\x20not\x20found\x20%s','validate','util','moment','ioredis','../../../../config/environment','../../../../config/logger','routing','./strategy','redis','defaults','socket.io-emitter','account','queue','from','joinAt','clone','queue_id','push','InteractionId','format','pick','%sQueuesWaitingInteractions','%s:queue:%s','%s_queue_waiting_interaction:%s','save','remove','../../rpc/openchannelQueueReport','../../rpc/mailQueueReport','../../rpc/chatQueueReport','../../rpc/smsQueueReport','../../rpc/faxQueueReport','../../rpc/whatsappQueueReport','../../rpc/faxInteraction','../../rpc/mailInteraction','../../rpc/openchannelInteraction','../../rpc/smsInteraction','string','number','timeout\x20is\x20a\x20number','waiting','body','YYYY-MM-DD\x20HH:mm:ss','contact','upperFirst','channel','QueueId','interaction','MessageId','message','chat','AccountId','[%s][START:QUEUE][NAME:%s]','name','QueueReport'];(function(_0x2dea24,_0x2fc021){var _0x309d58=function(_0x2eb89f){while(--_0x2eb89f){_0x2dea24['push'](_0x2dea24['shift']());}};_0x309d58(++_0x2fc021);}(_0x0e1f,0x1bc));var _0xf0e1=function(_0x3947c9,_0x4d6c97){_0x3947c9=_0x3947c9-0x0;var _0x2e7871=_0x0e1f[_0x3947c9];return _0x2e7871;};'use strict';var schema=require(_0xf0e1('0x0'));var _=require('lodash');var util=require(_0xf0e1('0x1'));var seqqueue=require('seq-queue');var moment=require(_0xf0e1('0x2'));var Redis=require(_0xf0e1('0x3'));var config=require(_0xf0e1('0x4'));var logger=require(_0xf0e1('0x5'))(_0xf0e1('0x6'));var strategy=require(_0xf0e1('0x7'));config[_0xf0e1('0x8')]=_[_0xf0e1('0x9')](config[_0xf0e1('0x8')],{'host':'localhost','port':0x18eb});var io=require(_0xf0e1('0xa'))(new Redis(config['redis']));var attributes=['id','queue_id',_0xf0e1('0xb'),_0xf0e1('0xc'),_0xf0e1('0xd'),_0xf0e1('0xe')];function emit(_0x21fccb,_0x51e601,_0x4b2c05){io['to'](_0x21fccb)['emit'](_0x51e601,_0x4b2c05);}function emitChannelQueueInteraction(_0x229da5,_0x369b93,_0x39d739,_0x3112b1,_0x531b3c,_0x4d296d,_0x3ffe35,_0x1c8a3f){var _0x399fba=_[_0xf0e1('0xf')](_0x39d739);_0x399fba[_0xf0e1('0x10')]=_0x1c8a3f;_0x399fba[_0xf0e1('0xc')]=_0x369b93;_0x399fba[_0xf0e1('0xb')]=_0x3112b1;_0x399fba['id']=_0x531b3c;if(_0x4d296d){attributes[_0xf0e1('0x11')](_['capitalize'](_0x229da5)+_0xf0e1('0x12'));_0x3ffe35[util[_0xf0e1('0x13')]('%sQueuesWaitingInteractions',_0x229da5)][_0x531b3c]=_[_0xf0e1('0x14')](_0x399fba,attributes);}else{delete _0x3ffe35[util[_0xf0e1('0x13')](_0xf0e1('0x15'),_0x229da5)][_0x531b3c];}emit(util[_0xf0e1('0x13')](_0xf0e1('0x16'),_0x229da5,_0x369b93),util[_0xf0e1('0x13')](_0xf0e1('0x17'),_0x229da5,_0x4d296d?_0xf0e1('0x18'):_0xf0e1('0x19')),_['pick'](_0x399fba,attributes));}var rpc={'openchannelQueueReport':require(_0xf0e1('0x1a')),'mailQueueReport':require(_0xf0e1('0x1b')),'chatQueueReport':require(_0xf0e1('0x1c')),'smsQueueReport':require(_0xf0e1('0x1d')),'faxQueueReport':require(_0xf0e1('0x1e')),'whatsappQueueReport':require(_0xf0e1('0x1f')),'chatInteraction':require('../../rpc/chatInteraction'),'faxInteraction':require(_0xf0e1('0x20')),'mailInteraction':require(_0xf0e1('0x21')),'openchannelInteraction':require(_0xf0e1('0x22')),'smsInteraction':require(_0xf0e1('0x23')),'whatsappInteraction':require('../../rpc/whatsappInteraction')};var queue=schema({'name':{'type':_0xf0e1('0x24'),'required':!![],'message':'name\x20is\x20a\x20string\x20and\x20it\x20is\x20required'},'timeout':{'type':_0xf0e1('0x25'),'message':_0xf0e1('0x26')}});function startRouting(_0x57a4b1,_0x1edddd,_0x25ee7b,_0x18890e){if(_0x57a4b1&&_0x1edddd&&_0x25ee7b){_0x1edddd[_0xf0e1('0x27')]+=0x1;var _0x3a1d59={'uniqueid':_0x57a4b1,'from':_0x25ee7b[_0xf0e1('0x28')]?_0x25ee7b[_0xf0e1('0x28')]['from']:'','joinAt':moment()[_0xf0e1('0x13')](_0xf0e1('0x29')),'ContactId':_0x25ee7b[_0xf0e1('0x2a')]?_0x25ee7b[_0xf0e1('0x2a')]['id']:null,'ListId':_0x25ee7b['list']?_0x25ee7b['list']['id']:null};_0x3a1d59[_[_0xf0e1('0x2b')](_0x25ee7b[_0xf0e1('0x2c')])+_0xf0e1('0x2d')]=_0x1edddd['id']||null;_0x3a1d59[_['upperFirst'](_0x25ee7b[_0xf0e1('0x2c')])+_0xf0e1('0x12')]=_0x25ee7b[_0xf0e1('0x2e')]?_0x25ee7b[_0xf0e1('0x2e')]['id']:null;_0x3a1d59[_[_0xf0e1('0x2b')](_0x25ee7b[_0xf0e1('0x2c')])+_0xf0e1('0x2f')]=_0x25ee7b[_0xf0e1('0x30')]?_0x25ee7b['message']['id']:null;_0x3a1d59[_[_0xf0e1('0x2b')](_0x25ee7b['channel'])+(_0x25ee7b['channel']!==_0xf0e1('0x31')?_0xf0e1('0x32'):'WebsiteId')]=_0x25ee7b[_0xf0e1('0xb')]?_0x25ee7b['account']['id']:null;logger['info'](util[_0xf0e1('0x13')](_0xf0e1('0x33'),_0x57a4b1,_0x1edddd[_0xf0e1('0x34')]));emitChannelQueueInteraction(_0x25ee7b['channel'],_0x1edddd[_0xf0e1('0x34')],_0x3a1d59,_0x25ee7b[_0xf0e1('0xb')]['name'],_0x25ee7b['message']['id'],!![],_0x18890e,_0x1edddd['id']);if(rpc[_0x25ee7b[_0xf0e1('0x2c')]+_0xf0e1('0x35')]){return rpc[_0x25ee7b[_0xf0e1('0x2c')]+'QueueReport'][_0xf0e1('0x36')](_0x3a1d59)[_0xf0e1('0x37')](function(_0x2585ef){logger[_0xf0e1('0x38')](_0xf0e1('0x39'),_0x2585ef);});}}}function stopRouting(_0x24c4f9,_0x67cea7,_0x2c11db,_0x26e43c){if(_0x24c4f9&&_0x67cea7){_0x67cea7[_0xf0e1('0x27')]-=0x1;var _0x2c2e42={'leaveAt':moment()[_0xf0e1('0x13')](_0xf0e1('0x29')),'acceptAt':moment()['format'](_0xf0e1('0x29')),'reason':_0xf0e1('0x3a')};logger[_0xf0e1('0x3b')](util['format']('[%s][STOP:QUEUE][NAME:%s]',_0x24c4f9,_0x67cea7[_0xf0e1('0x34')]));emitChannelQueueInteraction(_0x2c11db[_0xf0e1('0x2c')],_0x67cea7[_0xf0e1('0x34')],_0x2c11db[_0xf0e1('0x28')],_0x2c11db[_0xf0e1('0xb')][_0xf0e1('0x34')],_0x2c11db[_0xf0e1('0x30')]['id'],![],_0x26e43c,_0x67cea7['id']);return rpc[_0x2c11db['channel']+_0xf0e1('0x3c')][_0xf0e1('0x3d')](_0x2c11db['interaction']['id'],{'queueId':_0x67cea7['id']})[_0xf0e1('0x3e')](function(){if(rpc[_0x2c11db['channel']+_0xf0e1('0x35')]){return rpc[_0x2c11db[_0xf0e1('0x2c')]+_0xf0e1('0x35')][_0xf0e1('0x3d')](_0x24c4f9,_0x2c2e42)['catch'](function(_0x1a2f57){logger[_0xf0e1('0x38')](_0xf0e1('0x3f'),_0x1a2f57);});}});}}function endRouting(_0x5c1815,_0x350a8c,_0x276c7d,_0x3c88e6){if(_0x5c1815&&_0x350a8c){_0x350a8c[_0xf0e1('0x27')]-=0x1;var _0x55a680={'leaveAt':moment()[_0xf0e1('0x13')](_0xf0e1('0x29')),'exitAt':moment()[_0xf0e1('0x13')]('YYYY-MM-DD\x20HH:mm:ss'),'reason':_0xf0e1('0x40')};logger[_0xf0e1('0x3b')](util['format'](_0xf0e1('0x41'),_0x5c1815,_0x350a8c[_0xf0e1('0x34')]));emitChannelQueueInteraction(_0x276c7d[_0xf0e1('0x2c')],_0x350a8c[_0xf0e1('0x34')],_0x276c7d['body'],_0x276c7d[_0xf0e1('0xb')][_0xf0e1('0x34')],_0x276c7d[_0xf0e1('0x30')]['id'],![],_0x3c88e6);if(rpc[_0x276c7d['channel']+_0xf0e1('0x35')]){return rpc[_0x276c7d[_0xf0e1('0x2c')]+_0xf0e1('0x35')]['update'](_0x5c1815,_0x55a680)[_0xf0e1('0x37')](function(_0x8b7c10){logger['error']('update\x20queue\x20report',_0x8b7c10);});}}}function handleFindQueue(_0x104539){return function(_0x1020a5){return _0x1020a5[_0xf0e1('0x34')][_0xf0e1('0x42')]()===_0x104539[_0xf0e1('0x42')]();};}exports[_0xf0e1('0x43')]=function(_0x564819,_0x261948,_0x104a80,_0x4ce78e){return function(_0x3ebb69){try{var _0x58425e={'name':_0x261948[0x0],'timeout':_0x261948[0x1]};var _0xde0717=queue[_0xf0e1('0x0')](_0x58425e,{'typecast':!![]});if(_0xde0717[_0xf0e1('0x44')]){logger[_0xf0e1('0x38')](_0xf0e1('0x45'),_0x564819,_['map'](_0xde0717,'message')['join'](',\x20'));_0x3ebb69[_0xf0e1('0x46')]();}else{var _0x2a7766=_[_0xf0e1('0x47')](_0x104a80[_0x4ce78e[_0xf0e1('0x2c')]+_0xf0e1('0x48')],handleFindQueue(_0x58425e[_0xf0e1('0x34')]));if(_0x2a7766){startRouting(_0x564819,_0x2a7766,_0x4ce78e,_0x104a80);var _0x30475c=(_0x2a7766['timeout']||0xa)*0x3e8;var _0x14a1ec=(_0x58425e[_0xf0e1('0x40')]||0x14)*0x3e8;var _0x27df23;if(_0x30475c>_0x14a1ec){_0x14a1ec=_0x30475c;}var _0x5c9a34=seqqueue[_0xf0e1('0x49')](_0x30475c);_0x5c9a34['id']=_0x564819;_0x5c9a34[_0xf0e1('0x4a')]=_0x30475c;_0x5c9a34[_0xf0e1('0x4b')]=_0x14a1ec;_0x5c9a34[_0xf0e1('0x2c')]=_0x4ce78e[_0xf0e1('0x2c')];_0x104a80[_0xf0e1('0x4c')][_0x564819]['on']('end',function(){logger[_0xf0e1('0x3b')]('[%s][QUEUE]\x20ROUTING\x20STOPPED',_0x564819);stopRouting(_0x564819,_0x2a7766,_0x4ce78e,_0x104a80);clearTimeout(_0x27df23);_0x27df23=undefined;_0x5c9a34[_0xf0e1('0x4d')](!![]);if(_0x104a80[_0xf0e1('0x4c')][_0x564819]){delete _0x104a80[_0xf0e1('0x4c')][_0x564819];}_0x3ebb69[_0xf0e1('0x46')]();});_0x104a80[_0xf0e1('0x4c')][_0x564819]['on'](_0xf0e1('0x4e'),function(){if(_0x104a80[_0xf0e1('0x4c')][_0x564819]){delete _0x104a80[_0xf0e1('0x4c')][_0x564819];}});_0x27df23=setTimeout(function(){logger[_0xf0e1('0x3b')](_0xf0e1('0x4f'),_0x564819);endRouting(_0x564819,_0x2a7766,_0x4ce78e,_0x104a80);clearTimeout(_0x27df23);_0x5c9a34['close'](!![]);_0x3ebb69['next']();},_0x14a1ec);switch(_0x2a7766['strategy']){case _0xf0e1('0x50'):strategy[_0xf0e1('0x50')](_0x5c9a34,_0x2a7766,_0x104a80,_0x4ce78e);break;default:strategy[_0xf0e1('0x51')](_0x5c9a34,_0x2a7766,_0x104a80,_0x4ce78e);}}else{logger[_0xf0e1('0x38')](_0xf0e1('0x52'),_0x564819,_0x58425e[_0xf0e1('0x34')]);_0x3ebb69[_0xf0e1('0x46')]();}}}catch(_0x419acf){logger[_0xf0e1('0x38')](_0xf0e1('0x45'),_0x564819,_0x419acf['stack']);_0x3ebb69[_0xf0e1('0x46')]();}};};
\ No newline at end of file