Built motion from commit 3c2ce842.|2.6.31
[motion2.git] / server / services / routing / server / applications / queue.js
index df52daa..b9a4d3f 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x5d2a=['lodash','moment','ioredis','../../../../config/environment','../../../../config/logger','routing','./strategy','redis','defaults','localhost','socket.io-emitter','queue_id','account','queue','from','joinAt','clone','push','capitalize','%sQueuesWaitingInteractions','format','save','pick','../../rpc/openchannelQueueReport','../../rpc/mailQueueReport','../../rpc/chatQueueReport','../../rpc/faxQueueReport','../../rpc/whatsappQueueReport','name\x20is\x20a\x20string\x20and\x20it\x20is\x20required','timeout\x20is\x20a\x20number','body','YYYY-MM-DD\x20HH:mm:ss','contact','list','upperFirst','channel','QueueId','InteractionId','interaction','MessageId','message','chat','AccountId','WebsiteId','info','name','QueueReport','create','catch','error','create\x20queue\x20report','waiting','accepted','[%s][STOP:QUEUE][NAME:%s]','update','timeout','[%s][END:QUEUE][NAME:%s]','update\x20queue\x20report','toLowerCase','consequence','length','[%s][QUEUE]\x20%s','map','join','stop','find','atimeout','qtimeout','rules','end','[%s][QUEUE]\x20ROUTING\x20STOPPED','complete','[%s][QUEUE]\x20APPLICATION\x20END','next','strategy','rrmemory','[%s][QUEUE]\x20queue\x20not\x20found\x20%s','log','stack'];(function(_0x288903,_0xfef0fd){var _0xe6c7e4=function(_0x534daf){while(--_0x534daf){_0x288903['push'](_0x288903['shift']());}};_0xe6c7e4(++_0xfef0fd);}(_0x5d2a,0x9e));var _0xa5d2=function(_0x941970,_0x555c12){_0x941970=_0x941970-0x0;var _0x2d53f9=_0x5d2a[_0x941970];return _0x2d53f9;};'use strict';var schema=require('validate');var _=require(_0xa5d2('0x0'));var util=require('util');var seqqueue=require('seq-queue');var moment=require(_0xa5d2('0x1'));var Redis=require(_0xa5d2('0x2'));var config=require(_0xa5d2('0x3'));var logger=require(_0xa5d2('0x4'))(_0xa5d2('0x5'));var strategy=require(_0xa5d2('0x6'));config[_0xa5d2('0x7')]=_[_0xa5d2('0x8')](config[_0xa5d2('0x7')],{'host':_0xa5d2('0x9'),'port':0x18eb});var io=require(_0xa5d2('0xa'))(new Redis(config[_0xa5d2('0x7')]));var attributes=['id',_0xa5d2('0xb'),_0xa5d2('0xc'),_0xa5d2('0xd'),_0xa5d2('0xe'),_0xa5d2('0xf')];function emit(_0x17e3b6,_0x10f697,_0x526b1b){io['to'](_0x17e3b6)['emit'](_0x10f697,_0x526b1b);}function emitChannelQueueInteraction(_0x697ef5,_0x190c48,_0x4348df,_0x28b5f4,_0x341425,_0x5b49ee,_0x2364d5,_0x234df5){var _0x46baad=_[_0xa5d2('0x10')](_0x4348df);_0x46baad[_0xa5d2('0xb')]=_0x234df5;_0x46baad['queue']=_0x190c48;_0x46baad['account']=_0x28b5f4;_0x46baad['id']=_0x341425;if(_0x5b49ee){attributes[_0xa5d2('0x11')](_[_0xa5d2('0x12')](_0x697ef5)+'InteractionId');_0x2364d5[util['format'](_0xa5d2('0x13'),_0x697ef5)][_0x341425]=_['pick'](_0x46baad,attributes);}else{delete _0x2364d5[util[_0xa5d2('0x14')](_0xa5d2('0x13'),_0x697ef5)][_0x341425];}emit(util[_0xa5d2('0x14')]('%s:queue:%s',_0x697ef5,_0x190c48),util[_0xa5d2('0x14')]('%s_queue_waiting_interaction:%s',_0x697ef5,_0x5b49ee?_0xa5d2('0x15'):'remove'),_[_0xa5d2('0x16')](_0x46baad,attributes));}var rpc={'openchannelQueueReport':require(_0xa5d2('0x17')),'mailQueueReport':require(_0xa5d2('0x18')),'chatQueueReport':require(_0xa5d2('0x19')),'smsQueueReport':require('../../rpc/smsQueueReport'),'faxQueueReport':require(_0xa5d2('0x1a')),'whatsappQueueReport':require(_0xa5d2('0x1b'))};var queue=schema({'name':{'type':'string','required':!![],'message':_0xa5d2('0x1c')},'timeout':{'type':'number','message':_0xa5d2('0x1d')}});function startRouting(_0x565c2d,_0x125176,_0x1b20ab,_0x5332b8){if(_0x565c2d&&_0x125176&&_0x1b20ab){_0x125176['waiting']+=0x1;var _0x469f7f={'uniqueid':_0x565c2d,'from':_0x1b20ab[_0xa5d2('0x1e')]?_0x1b20ab['body'][_0xa5d2('0xe')]:'','joinAt':moment()['format'](_0xa5d2('0x1f')),'ContactId':_0x1b20ab[_0xa5d2('0x20')]?_0x1b20ab[_0xa5d2('0x20')]['id']:null,'ListId':_0x1b20ab['list']?_0x1b20ab[_0xa5d2('0x21')]['id']:null};_0x469f7f[_[_0xa5d2('0x22')](_0x1b20ab[_0xa5d2('0x23')])+_0xa5d2('0x24')]=_0x125176['id']||null;_0x469f7f[_[_0xa5d2('0x22')](_0x1b20ab[_0xa5d2('0x23')])+_0xa5d2('0x25')]=_0x1b20ab[_0xa5d2('0x26')]?_0x1b20ab[_0xa5d2('0x26')]['id']:null;_0x469f7f[_[_0xa5d2('0x22')](_0x1b20ab[_0xa5d2('0x23')])+_0xa5d2('0x27')]=_0x1b20ab[_0xa5d2('0x28')]?_0x1b20ab[_0xa5d2('0x28')]['id']:null;_0x469f7f[_[_0xa5d2('0x22')](_0x1b20ab[_0xa5d2('0x23')])+(_0x1b20ab[_0xa5d2('0x23')]!==_0xa5d2('0x29')?_0xa5d2('0x2a'):_0xa5d2('0x2b'))]=_0x1b20ab[_0xa5d2('0xc')]?_0x1b20ab[_0xa5d2('0xc')]['id']:null;logger[_0xa5d2('0x2c')](util[_0xa5d2('0x14')]('[%s][START:QUEUE][NAME:%s]',_0x565c2d,_0x125176[_0xa5d2('0x2d')]));emitChannelQueueInteraction(_0x1b20ab[_0xa5d2('0x23')],_0x125176[_0xa5d2('0x2d')],_0x469f7f,_0x1b20ab[_0xa5d2('0xc')][_0xa5d2('0x2d')],_0x1b20ab['message']['id'],!![],_0x5332b8,_0x125176['id']);if(rpc[_0x1b20ab[_0xa5d2('0x23')]+_0xa5d2('0x2e')]){return rpc[_0x1b20ab[_0xa5d2('0x23')]+_0xa5d2('0x2e')][_0xa5d2('0x2f')](_0x469f7f)[_0xa5d2('0x30')](function(_0x5b2a45){logger[_0xa5d2('0x31')](_0xa5d2('0x32'));});}}}function stopRouting(_0x56d74a,_0x4aa913,_0xfff3d4,_0x5173cc){if(_0x56d74a&&_0x4aa913){_0x4aa913[_0xa5d2('0x33')]-=0x1;var _0x527408={'leaveAt':moment()[_0xa5d2('0x14')](_0xa5d2('0x1f')),'acceptAt':moment()['format'](_0xa5d2('0x1f')),'reason':_0xa5d2('0x34')};logger[_0xa5d2('0x2c')](util[_0xa5d2('0x14')](_0xa5d2('0x35'),_0x56d74a,_0x4aa913[_0xa5d2('0x2d')]));emitChannelQueueInteraction(_0xfff3d4[_0xa5d2('0x23')],_0x4aa913[_0xa5d2('0x2d')],_0xfff3d4['body'],_0xfff3d4[_0xa5d2('0xc')][_0xa5d2('0x2d')],_0xfff3d4[_0xa5d2('0x28')]['id'],![],_0x5173cc,_0x4aa913['id']);if(rpc[_0xfff3d4[_0xa5d2('0x23')]+_0xa5d2('0x2e')]){return rpc[_0xfff3d4[_0xa5d2('0x23')]+_0xa5d2('0x2e')][_0xa5d2('0x36')](_0x56d74a,_0x527408)['catch'](function(_0x264ce3){logger[_0xa5d2('0x31')]('update\x20queue\x20report');});}}}function endRouting(_0x3d4376,_0x25185b,_0x2cf995,_0x76b40f){if(_0x3d4376&&_0x25185b){_0x25185b[_0xa5d2('0x33')]-=0x1;var _0x90dbf6={'leaveAt':moment()[_0xa5d2('0x14')](_0xa5d2('0x1f')),'exitAt':moment()[_0xa5d2('0x14')](_0xa5d2('0x1f')),'reason':_0xa5d2('0x37')};logger['info'](util[_0xa5d2('0x14')](_0xa5d2('0x38'),_0x3d4376,_0x25185b[_0xa5d2('0x2d')]));emitChannelQueueInteraction(_0x2cf995[_0xa5d2('0x23')],_0x25185b[_0xa5d2('0x2d')],_0x2cf995['body'],_0x2cf995[_0xa5d2('0xc')][_0xa5d2('0x2d')],_0x2cf995[_0xa5d2('0x28')]['id'],![],_0x76b40f);if(rpc[_0x2cf995[_0xa5d2('0x23')]+_0xa5d2('0x2e')]){return rpc[_0x2cf995['channel']+'QueueReport']['update'](_0x3d4376,_0x90dbf6)[_0xa5d2('0x30')](function(_0xea3fd2){logger[_0xa5d2('0x31')](_0xa5d2('0x39'));});}}}function handleFindQueue(_0xf3c93e){return function(_0x27ff39){return _0x27ff39[_0xa5d2('0x2d')][_0xa5d2('0x3a')]()===_0xf3c93e[_0xa5d2('0x3a')]();};}exports[_0xa5d2('0x3b')]=function(_0x29ffab,_0x5bd814,_0x42dbf7,_0x172660){return function(_0x188fa7){try{var _0xb31056={'name':_0x5bd814[0x0],'timeout':_0x5bd814[0x1]};var _0x116f05=queue['validate'](_0xb31056,{'typecast':!![]});if(_0x116f05[_0xa5d2('0x3c')]){logger[_0xa5d2('0x31')](_0xa5d2('0x3d'),_0x29ffab,_[_0xa5d2('0x3e')](_0x116f05,_0xa5d2('0x28'))[_0xa5d2('0x3f')](',\x20'));_0x188fa7[_0xa5d2('0x40')]();}else{var _0x332877=_[_0xa5d2('0x41')](_0x42dbf7[_0x172660[_0xa5d2('0x23')]+'Queues'],handleFindQueue(_0xb31056[_0xa5d2('0x2d')]));if(_0x332877){startRouting(_0x29ffab,_0x332877,_0x172660,_0x42dbf7);var _0x2e72ea=(_0x332877[_0xa5d2('0x37')]||0xa)*0x3e8;var _0x451216=(_0xb31056[_0xa5d2('0x37')]||0x14)*0x3e8;var _0x128534;if(_0x2e72ea>_0x451216){_0x451216=_0x2e72ea;}var _0x9f0d90=seqqueue['createQueue'](_0x2e72ea);_0x9f0d90['id']=_0x29ffab;_0x9f0d90[_0xa5d2('0x42')]=_0x2e72ea;_0x9f0d90[_0xa5d2('0x43')]=_0x451216;_0x9f0d90['channel']=_0x172660[_0xa5d2('0x23')];_0x42dbf7[_0xa5d2('0x44')][_0x29ffab]['on'](_0xa5d2('0x45'),function(){logger[_0xa5d2('0x2c')](_0xa5d2('0x46'),_0x29ffab);stopRouting(_0x29ffab,_0x332877,_0x172660,_0x42dbf7);clearTimeout(_0x128534);_0x128534=undefined;_0x9f0d90['close'](!![]);if(_0x42dbf7['rules'][_0x29ffab]){delete _0x42dbf7['rules'][_0x29ffab];}_0x188fa7[_0xa5d2('0x40')]();});_0x42dbf7[_0xa5d2('0x44')][_0x29ffab]['on'](_0xa5d2('0x47'),function(){if(_0x42dbf7[_0xa5d2('0x44')][_0x29ffab]){delete _0x42dbf7[_0xa5d2('0x44')][_0x29ffab];}});_0x128534=setTimeout(function(){logger[_0xa5d2('0x2c')](_0xa5d2('0x48'),_0x29ffab);endRouting(_0x29ffab,_0x332877,_0x172660,_0x42dbf7);clearTimeout(_0x128534);_0x9f0d90['close'](!![]);_0x188fa7[_0xa5d2('0x49')]();},_0x451216);switch(_0x332877[_0xa5d2('0x4a')]){case _0xa5d2('0x4b'):strategy[_0xa5d2('0x4b')](_0x9f0d90,_0x332877,_0x42dbf7,_0x172660);break;default:strategy['beepall'](_0x9f0d90,_0x332877,_0x42dbf7,_0x172660);}}else{logger[_0xa5d2('0x31')](_0xa5d2('0x4c'),_0x29ffab,_0xb31056[_0xa5d2('0x2d')]);_0x188fa7[_0xa5d2('0x40')]();}}}catch(_0x479fbe){console[_0xa5d2('0x4d')](_0x479fbe);logger['error'](_0xa5d2('0x3d'),_0x29ffab,_0x479fbe[_0xa5d2('0x4e')]);_0x188fa7[_0xa5d2('0x40')]();}};};
\ No newline at end of file
+var _0xaf00=['redis','defaults','localhost','socket.io-emitter','queue_id','queue','from','joinAt','emit','clone','capitalize','InteractionId','format','pick','%sQueuesWaitingInteractions','%s:queue:%s','%s_queue_waiting_interaction:%s','save','remove','../../rpc/openchannelQueueReport','../../rpc/mailQueueReport','../../rpc/smsQueueReport','../../rpc/whatsappQueueReport','../../rpc/chatInteraction','../../rpc/faxInteraction','../../rpc/mailInteraction','../../rpc/openchannelInteraction','../../rpc/smsInteraction','../../rpc/whatsappInteraction','name\x20is\x20a\x20string\x20and\x20it\x20is\x20required','timeout\x20is\x20a\x20number','waiting','body','YYYY-MM-DD\x20HH:mm:ss','contact','list','upperFirst','interaction','channel','MessageId','message','chat','WebsiteId','account','info','name','QueueReport','create','catch','[%s][STOP:QUEUE][NAME:%s]','Interaction','update','then','error','update\x20queue\x20report','[%s][END:QUEUE][NAME:%s]','toLowerCase','consequence','length','[%s][QUEUE]\x20%s','map','join','Queues','timeout','createQueue','atimeout','qtimeout','rules','end','stop','[%s][QUEUE]\x20APPLICATION\x20END','close','next','strategy','rrmemory','beepall','[%s][QUEUE]\x20queue\x20not\x20found\x20%s','validate','util','seq-queue','moment','../../../../config/logger','routing','./strategy'];(function(_0x5510a6,_0x4975b9){var _0x962a10=function(_0x5cca76){while(--_0x5cca76){_0x5510a6['push'](_0x5510a6['shift']());}};_0x962a10(++_0x4975b9);}(_0xaf00,0xf5));var _0x0af0=function(_0x1d83db,_0x89d115){_0x1d83db=_0x1d83db-0x0;var _0x2dc1d1=_0xaf00[_0x1d83db];return _0x2dc1d1;};'use strict';var schema=require(_0x0af0('0x0'));var _=require('lodash');var util=require(_0x0af0('0x1'));var seqqueue=require(_0x0af0('0x2'));var moment=require(_0x0af0('0x3'));var Redis=require('ioredis');var config=require('../../../../config/environment');var logger=require(_0x0af0('0x4'))(_0x0af0('0x5'));var strategy=require(_0x0af0('0x6'));config[_0x0af0('0x7')]=_[_0x0af0('0x8')](config[_0x0af0('0x7')],{'host':_0x0af0('0x9'),'port':0x18eb});var io=require(_0x0af0('0xa'))(new Redis(config[_0x0af0('0x7')]));var attributes=['id',_0x0af0('0xb'),'account',_0x0af0('0xc'),_0x0af0('0xd'),_0x0af0('0xe')];function emit(_0x1bb550,_0x1bd51d,_0x6bcc5a){io['to'](_0x1bb550)[_0x0af0('0xf')](_0x1bd51d,_0x6bcc5a);}function emitChannelQueueInteraction(_0x245193,_0x4cc9fa,_0x1f1a79,_0xca5aed,_0x1df7a3,_0xf68742,_0xa2a860,_0x56c5b9){var _0x12a27b=_[_0x0af0('0x10')](_0x1f1a79);_0x12a27b[_0x0af0('0xb')]=_0x56c5b9;_0x12a27b[_0x0af0('0xc')]=_0x4cc9fa;_0x12a27b['account']=_0xca5aed;_0x12a27b['id']=_0x1df7a3;if(_0xf68742){attributes['push'](_[_0x0af0('0x11')](_0x245193)+_0x0af0('0x12'));_0xa2a860[util[_0x0af0('0x13')]('%sQueuesWaitingInteractions',_0x245193)][_0x1df7a3]=_[_0x0af0('0x14')](_0x12a27b,attributes);}else{delete _0xa2a860[util[_0x0af0('0x13')](_0x0af0('0x15'),_0x245193)][_0x1df7a3];}emit(util[_0x0af0('0x13')](_0x0af0('0x16'),_0x245193,_0x4cc9fa),util[_0x0af0('0x13')](_0x0af0('0x17'),_0x245193,_0xf68742?_0x0af0('0x18'):_0x0af0('0x19')),_['pick'](_0x12a27b,attributes));}var rpc={'openchannelQueueReport':require(_0x0af0('0x1a')),'mailQueueReport':require(_0x0af0('0x1b')),'chatQueueReport':require('../../rpc/chatQueueReport'),'smsQueueReport':require(_0x0af0('0x1c')),'faxQueueReport':require('../../rpc/faxQueueReport'),'whatsappQueueReport':require(_0x0af0('0x1d')),'chatInteraction':require(_0x0af0('0x1e')),'faxInteraction':require(_0x0af0('0x1f')),'mailInteraction':require(_0x0af0('0x20')),'openchannelInteraction':require(_0x0af0('0x21')),'smsInteraction':require(_0x0af0('0x22')),'whatsappInteraction':require(_0x0af0('0x23'))};var queue=schema({'name':{'type':'string','required':!![],'message':_0x0af0('0x24')},'timeout':{'type':'number','message':_0x0af0('0x25')}});function startRouting(_0x38d0a3,_0x287d30,_0x622824,_0x22e55d){if(_0x38d0a3&&_0x287d30&&_0x622824){_0x287d30[_0x0af0('0x26')]+=0x1;var _0x276a0b={'uniqueid':_0x38d0a3,'from':_0x622824[_0x0af0('0x27')]?_0x622824['body'][_0x0af0('0xd')]:'','joinAt':moment()[_0x0af0('0x13')](_0x0af0('0x28')),'ContactId':_0x622824[_0x0af0('0x29')]?_0x622824[_0x0af0('0x29')]['id']:null,'ListId':_0x622824['list']?_0x622824[_0x0af0('0x2a')]['id']:null};_0x276a0b[_['upperFirst'](_0x622824['channel'])+'QueueId']=_0x287d30['id']||null;_0x276a0b[_[_0x0af0('0x2b')](_0x622824['channel'])+'InteractionId']=_0x622824['interaction']?_0x622824[_0x0af0('0x2c')]['id']:null;_0x276a0b[_[_0x0af0('0x2b')](_0x622824[_0x0af0('0x2d')])+_0x0af0('0x2e')]=_0x622824[_0x0af0('0x2f')]?_0x622824[_0x0af0('0x2f')]['id']:null;_0x276a0b[_[_0x0af0('0x2b')](_0x622824[_0x0af0('0x2d')])+(_0x622824[_0x0af0('0x2d')]!==_0x0af0('0x30')?'AccountId':_0x0af0('0x31'))]=_0x622824[_0x0af0('0x32')]?_0x622824[_0x0af0('0x32')]['id']:null;logger[_0x0af0('0x33')](util['format']('[%s][START:QUEUE][NAME:%s]',_0x38d0a3,_0x287d30[_0x0af0('0x34')]));emitChannelQueueInteraction(_0x622824['channel'],_0x287d30[_0x0af0('0x34')],_0x276a0b,_0x622824[_0x0af0('0x32')][_0x0af0('0x34')],_0x622824[_0x0af0('0x2f')]['id'],!![],_0x22e55d,_0x287d30['id']);if(rpc[_0x622824[_0x0af0('0x2d')]+_0x0af0('0x35')]){return rpc[_0x622824[_0x0af0('0x2d')]+'QueueReport'][_0x0af0('0x36')](_0x276a0b)[_0x0af0('0x37')](function(_0x1f2053){logger['error']('create\x20queue\x20report',_0x1f2053);});}}}function stopRouting(_0x36bc5a,_0x1ee20c,_0x4e5268,_0xa7831c){if(_0x36bc5a&&_0x1ee20c){_0x1ee20c['waiting']-=0x1;var _0x31acae={'leaveAt':moment()['format'](_0x0af0('0x28')),'acceptAt':moment()[_0x0af0('0x13')](_0x0af0('0x28')),'reason':'accepted'};logger[_0x0af0('0x33')](util[_0x0af0('0x13')](_0x0af0('0x38'),_0x36bc5a,_0x1ee20c[_0x0af0('0x34')]));emitChannelQueueInteraction(_0x4e5268[_0x0af0('0x2d')],_0x1ee20c[_0x0af0('0x34')],_0x4e5268[_0x0af0('0x27')],_0x4e5268[_0x0af0('0x32')][_0x0af0('0x34')],_0x4e5268[_0x0af0('0x2f')]['id'],![],_0xa7831c,_0x1ee20c['id']);return rpc[_0x4e5268[_0x0af0('0x2d')]+_0x0af0('0x39')][_0x0af0('0x3a')](_0x4e5268[_0x0af0('0x2c')]['id'],{'queueId':_0x1ee20c['id']})[_0x0af0('0x3b')](function(){if(rpc[_0x4e5268[_0x0af0('0x2d')]+_0x0af0('0x35')]){return rpc[_0x4e5268[_0x0af0('0x2d')]+'QueueReport'][_0x0af0('0x3a')](_0x36bc5a,_0x31acae)[_0x0af0('0x37')](function(_0x346afd){logger[_0x0af0('0x3c')](_0x0af0('0x3d'),_0x346afd);});}});}}function endRouting(_0x252876,_0x58d0cf,_0xcae2ec,_0x43b005){if(_0x252876&&_0x58d0cf){_0x58d0cf[_0x0af0('0x26')]-=0x1;var _0x1d4c2f={'leaveAt':moment()['format'](_0x0af0('0x28')),'exitAt':moment()[_0x0af0('0x13')]('YYYY-MM-DD\x20HH:mm:ss'),'reason':'timeout'};logger[_0x0af0('0x33')](util[_0x0af0('0x13')](_0x0af0('0x3e'),_0x252876,_0x58d0cf[_0x0af0('0x34')]));emitChannelQueueInteraction(_0xcae2ec['channel'],_0x58d0cf[_0x0af0('0x34')],_0xcae2ec[_0x0af0('0x27')],_0xcae2ec[_0x0af0('0x32')][_0x0af0('0x34')],_0xcae2ec[_0x0af0('0x2f')]['id'],![],_0x43b005);if(rpc[_0xcae2ec[_0x0af0('0x2d')]+_0x0af0('0x35')]){return rpc[_0xcae2ec['channel']+_0x0af0('0x35')][_0x0af0('0x3a')](_0x252876,_0x1d4c2f)[_0x0af0('0x37')](function(_0x39a21f){logger[_0x0af0('0x3c')](_0x0af0('0x3d'),_0x39a21f);});}}}function handleFindQueue(_0x249cb2){return function(_0x54d1b9){return _0x54d1b9[_0x0af0('0x34')][_0x0af0('0x3f')]()===_0x249cb2[_0x0af0('0x3f')]();};}exports[_0x0af0('0x40')]=function(_0x136a05,_0x22a913,_0x233083,_0x7d817d){return function(_0x43807b){try{var _0x11b98b={'name':_0x22a913[0x0],'timeout':_0x22a913[0x1]};var _0x2837d4=queue[_0x0af0('0x0')](_0x11b98b,{'typecast':!![]});if(_0x2837d4[_0x0af0('0x41')]){logger[_0x0af0('0x3c')](_0x0af0('0x42'),_0x136a05,_[_0x0af0('0x43')](_0x2837d4,_0x0af0('0x2f'))[_0x0af0('0x44')](',\x20'));_0x43807b['stop']();}else{var _0x4c5a02=_['find'](_0x233083[_0x7d817d['channel']+_0x0af0('0x45')],handleFindQueue(_0x11b98b[_0x0af0('0x34')]));if(_0x4c5a02){startRouting(_0x136a05,_0x4c5a02,_0x7d817d,_0x233083);var _0x5975ba=(_0x4c5a02['timeout']||0xa)*0x3e8;var _0xe7144d=(_0x11b98b[_0x0af0('0x46')]||0x14)*0x3e8;var _0x1c253a;if(_0x5975ba>_0xe7144d){_0xe7144d=_0x5975ba;}var _0x389453=seqqueue[_0x0af0('0x47')](_0x5975ba);_0x389453['id']=_0x136a05;_0x389453[_0x0af0('0x48')]=_0x5975ba;_0x389453[_0x0af0('0x49')]=_0xe7144d;_0x389453[_0x0af0('0x2d')]=_0x7d817d[_0x0af0('0x2d')];_0x233083[_0x0af0('0x4a')][_0x136a05]['on'](_0x0af0('0x4b'),function(){logger[_0x0af0('0x33')]('[%s][QUEUE]\x20ROUTING\x20STOPPED',_0x136a05);stopRouting(_0x136a05,_0x4c5a02,_0x7d817d,_0x233083);clearTimeout(_0x1c253a);_0x1c253a=undefined;_0x389453['close'](!![]);if(_0x233083['rules'][_0x136a05]){delete _0x233083[_0x0af0('0x4a')][_0x136a05];}_0x43807b[_0x0af0('0x4c')]();});_0x233083[_0x0af0('0x4a')][_0x136a05]['on']('complete',function(){if(_0x233083[_0x0af0('0x4a')][_0x136a05]){delete _0x233083['rules'][_0x136a05];}});_0x1c253a=setTimeout(function(){logger[_0x0af0('0x33')](_0x0af0('0x4d'),_0x136a05);endRouting(_0x136a05,_0x4c5a02,_0x7d817d,_0x233083);clearTimeout(_0x1c253a);_0x389453[_0x0af0('0x4e')](!![]);_0x43807b[_0x0af0('0x4f')]();},_0xe7144d);switch(_0x4c5a02[_0x0af0('0x50')]){case _0x0af0('0x51'):strategy[_0x0af0('0x51')](_0x389453,_0x4c5a02,_0x233083,_0x7d817d);break;default:strategy[_0x0af0('0x52')](_0x389453,_0x4c5a02,_0x233083,_0x7d817d);}}else{logger[_0x0af0('0x3c')](_0x0af0('0x53'),_0x136a05,_0x11b98b[_0x0af0('0x34')]);_0x43807b[_0x0af0('0x4c')]();}}}catch(_0x33215f){logger[_0x0af0('0x3c')]('[%s][QUEUE]\x20%s',_0x136a05,_0x33215f['stack']);_0x43807b[_0x0af0('0x4c')]();}};};
\ No newline at end of file