Built motion from commit ffdca78c.|2.6.24
[motion2.git] / server / services / routing / server / applications / queue.js
index 98dd8ab..a328da0 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0xbb6b=['format','%sQueuesWaitingInteractions','pick','%s:queue:%s','%s_queue_waiting_interaction:%s','remove','../../rpc/mailQueueReport','../../rpc/chatQueueReport','../../rpc/smsQueueReport','../../rpc/whatsappQueueReport','../../rpc/chatInteraction','../../rpc/faxInteraction','../../rpc/mailInteraction','../../rpc/whatsappInteraction','string','timeout\x20is\x20a\x20number','waiting','body','YYYY-MM-DD\x20HH:mm:ss','list','channel','QueueId','upperFirst','interaction','MessageId','message','AccountId','WebsiteId','info','[%s][START:QUEUE][NAME:%s]','name','QueueReport','create','catch','error','create\x20queue\x20report','[%s][STOP:QUEUE][NAME:%s]','update','then','update\x20queue\x20report','toLowerCase','consequence','validate','[%s][QUEUE]\x20%s','map','find','Queues','timeout','atimeout','qtimeout','end','[%s][QUEUE]\x20ROUTING\x20STOPPED','close','rules','complete','[%s][QUEUE]\x20APPLICATION\x20END','strategy','rrmemory','beepall','[%s][QUEUE]\x20queue\x20not\x20found\x20%s','stop','stack','lodash','ioredis','../../../../config/environment','routing','defaults','redis','localhost','socket.io-emitter','queue_id','queue','from','joinAt','emit','clone','account','push','capitalize','InteractionId'];(function(_0x212741,_0x3ea0f0){var _0x25ff42=function(_0x42d40c){while(--_0x42d40c){_0x212741['push'](_0x212741['shift']());}};_0x25ff42(++_0x3ea0f0);}(_0xbb6b,0x17e));var _0xbbb6=function(_0x1bfce8,_0x2abf68){_0x1bfce8=_0x1bfce8-0x0;var _0x1f6574=_0xbb6b[_0x1bfce8];return _0x1f6574;};'use strict';var schema=require('validate');var _=require(_0xbbb6('0x0'));var util=require('util');var seqqueue=require('seq-queue');var moment=require('moment');var Redis=require(_0xbbb6('0x1'));var config=require(_0xbbb6('0x2'));var logger=require('../../../../config/logger')(_0xbbb6('0x3'));var strategy=require('./strategy');config['redis']=_[_0xbbb6('0x4')](config[_0xbbb6('0x5')],{'host':_0xbbb6('0x6'),'port':0x18eb});var io=require(_0xbbb6('0x7'))(new Redis(config['redis']));var attributes=['id',_0xbbb6('0x8'),'account',_0xbbb6('0x9'),_0xbbb6('0xa'),_0xbbb6('0xb')];function emit(_0x3db836,_0x1ac2a1,_0x3e5339){io['to'](_0x3db836)[_0xbbb6('0xc')](_0x1ac2a1,_0x3e5339);}function emitChannelQueueInteraction(_0x274c7f,_0x4705cb,_0x31ec7e,_0x366d1e,_0x45d868,_0x2fc7a4,_0x30d0af,_0x3e4bf4){var _0x31c47b=_[_0xbbb6('0xd')](_0x31ec7e);_0x31c47b['queue_id']=_0x3e4bf4;_0x31c47b[_0xbbb6('0x9')]=_0x4705cb;_0x31c47b[_0xbbb6('0xe')]=_0x366d1e;_0x31c47b['id']=_0x45d868;if(_0x2fc7a4){attributes[_0xbbb6('0xf')](_[_0xbbb6('0x10')](_0x274c7f)+_0xbbb6('0x11'));_0x30d0af[util[_0xbbb6('0x12')](_0xbbb6('0x13'),_0x274c7f)][_0x45d868]=_[_0xbbb6('0x14')](_0x31c47b,attributes);}else{delete _0x30d0af[util[_0xbbb6('0x12')](_0xbbb6('0x13'),_0x274c7f)][_0x45d868];}emit(util['format'](_0xbbb6('0x15'),_0x274c7f,_0x4705cb),util[_0xbbb6('0x12')](_0xbbb6('0x16'),_0x274c7f,_0x2fc7a4?'save':_0xbbb6('0x17')),_['pick'](_0x31c47b,attributes));}var rpc={'openchannelQueueReport':require('../../rpc/openchannelQueueReport'),'mailQueueReport':require(_0xbbb6('0x18')),'chatQueueReport':require(_0xbbb6('0x19')),'smsQueueReport':require(_0xbbb6('0x1a')),'faxQueueReport':require('../../rpc/faxQueueReport'),'whatsappQueueReport':require(_0xbbb6('0x1b')),'chatInteraction':require(_0xbbb6('0x1c')),'faxInteraction':require(_0xbbb6('0x1d')),'mailInteraction':require(_0xbbb6('0x1e')),'openchannelInteraction':require('../../rpc/openchannelInteraction'),'smsInteraction':require('../../rpc/smsInteraction'),'whatsappInteraction':require(_0xbbb6('0x1f'))};var queue=schema({'name':{'type':_0xbbb6('0x20'),'required':!![],'message':'name\x20is\x20a\x20string\x20and\x20it\x20is\x20required'},'timeout':{'type':'number','message':_0xbbb6('0x21')}});function startRouting(_0xa9aac8,_0x110471,_0x49c79a,_0xfee67){if(_0xa9aac8&&_0x110471&&_0x49c79a){_0x110471[_0xbbb6('0x22')]+=0x1;var _0x5b05da={'uniqueid':_0xa9aac8,'from':_0x49c79a[_0xbbb6('0x23')]?_0x49c79a[_0xbbb6('0x23')][_0xbbb6('0xa')]:'','joinAt':moment()['format'](_0xbbb6('0x24')),'ContactId':_0x49c79a['contact']?_0x49c79a['contact']['id']:null,'ListId':_0x49c79a['list']?_0x49c79a[_0xbbb6('0x25')]['id']:null};_0x5b05da[_['upperFirst'](_0x49c79a[_0xbbb6('0x26')])+_0xbbb6('0x27')]=_0x110471['id']||null;_0x5b05da[_[_0xbbb6('0x28')](_0x49c79a[_0xbbb6('0x26')])+_0xbbb6('0x11')]=_0x49c79a[_0xbbb6('0x29')]?_0x49c79a['interaction']['id']:null;_0x5b05da[_[_0xbbb6('0x28')](_0x49c79a['channel'])+_0xbbb6('0x2a')]=_0x49c79a[_0xbbb6('0x2b')]?_0x49c79a[_0xbbb6('0x2b')]['id']:null;_0x5b05da[_[_0xbbb6('0x28')](_0x49c79a[_0xbbb6('0x26')])+(_0x49c79a[_0xbbb6('0x26')]!=='chat'?_0xbbb6('0x2c'):_0xbbb6('0x2d'))]=_0x49c79a[_0xbbb6('0xe')]?_0x49c79a[_0xbbb6('0xe')]['id']:null;logger[_0xbbb6('0x2e')](util['format'](_0xbbb6('0x2f'),_0xa9aac8,_0x110471[_0xbbb6('0x30')]));emitChannelQueueInteraction(_0x49c79a[_0xbbb6('0x26')],_0x110471[_0xbbb6('0x30')],_0x5b05da,_0x49c79a[_0xbbb6('0xe')][_0xbbb6('0x30')],_0x49c79a[_0xbbb6('0x2b')]['id'],!![],_0xfee67,_0x110471['id']);if(rpc[_0x49c79a[_0xbbb6('0x26')]+_0xbbb6('0x31')]){return rpc[_0x49c79a[_0xbbb6('0x26')]+'QueueReport'][_0xbbb6('0x32')](_0x5b05da)[_0xbbb6('0x33')](function(_0x108bcb){logger[_0xbbb6('0x34')](_0xbbb6('0x35'),_0x108bcb);});}}}function stopRouting(_0x4c92cb,_0x32f3fb,_0x2e6489,_0x4bbe05){if(_0x4c92cb&&_0x32f3fb){_0x32f3fb[_0xbbb6('0x22')]-=0x1;var _0x3d0c33={'leaveAt':moment()[_0xbbb6('0x12')](_0xbbb6('0x24')),'acceptAt':moment()['format'](_0xbbb6('0x24')),'reason':'accepted'};logger['info'](util['format'](_0xbbb6('0x36'),_0x4c92cb,_0x32f3fb[_0xbbb6('0x30')]));emitChannelQueueInteraction(_0x2e6489[_0xbbb6('0x26')],_0x32f3fb[_0xbbb6('0x30')],_0x2e6489[_0xbbb6('0x23')],_0x2e6489['account'][_0xbbb6('0x30')],_0x2e6489[_0xbbb6('0x2b')]['id'],![],_0x4bbe05,_0x32f3fb['id']);return rpc[_0x2e6489[_0xbbb6('0x26')]+'Interaction'][_0xbbb6('0x37')](_0x2e6489[_0xbbb6('0x29')]['id'],{'queueId':_0x32f3fb['id']})[_0xbbb6('0x38')](function(){if(rpc[_0x2e6489['channel']+_0xbbb6('0x31')]){return rpc[_0x2e6489[_0xbbb6('0x26')]+_0xbbb6('0x31')][_0xbbb6('0x37')](_0x4c92cb,_0x3d0c33)[_0xbbb6('0x33')](function(_0x24208e){logger[_0xbbb6('0x34')](_0xbbb6('0x39'),_0x24208e);});}});}}function endRouting(_0x307d4f,_0x33ab8a,_0x4dcc8d,_0x53eea5){if(_0x307d4f&&_0x33ab8a){_0x33ab8a[_0xbbb6('0x22')]-=0x1;var _0x5c6bf1={'leaveAt':moment()[_0xbbb6('0x12')](_0xbbb6('0x24')),'exitAt':moment()[_0xbbb6('0x12')]('YYYY-MM-DD\x20HH:mm:ss'),'reason':'timeout'};logger['info'](util['format']('[%s][END:QUEUE][NAME:%s]',_0x307d4f,_0x33ab8a[_0xbbb6('0x30')]));emitChannelQueueInteraction(_0x4dcc8d['channel'],_0x33ab8a['name'],_0x4dcc8d[_0xbbb6('0x23')],_0x4dcc8d[_0xbbb6('0xe')][_0xbbb6('0x30')],_0x4dcc8d['message']['id'],![],_0x53eea5);if(rpc[_0x4dcc8d[_0xbbb6('0x26')]+'QueueReport']){return rpc[_0x4dcc8d['channel']+_0xbbb6('0x31')]['update'](_0x307d4f,_0x5c6bf1)['catch'](function(_0x386b4f){logger['error'](_0xbbb6('0x39'),_0x386b4f);});}}}function handleFindQueue(_0x39c779){return function(_0x186bbc){return _0x186bbc[_0xbbb6('0x30')][_0xbbb6('0x3a')]()===_0x39c779[_0xbbb6('0x3a')]();};}exports[_0xbbb6('0x3b')]=function(_0xf19853,_0x489a7f,_0x450b64,_0x5e4628){return function(_0x18c949){try{var _0x43edcc={'name':_0x489a7f[0x0],'timeout':_0x489a7f[0x1]};var _0x35bb66=queue[_0xbbb6('0x3c')](_0x43edcc,{'typecast':!![]});if(_0x35bb66['length']){logger[_0xbbb6('0x34')](_0xbbb6('0x3d'),_0xf19853,_[_0xbbb6('0x3e')](_0x35bb66,_0xbbb6('0x2b'))['join'](',\x20'));_0x18c949['stop']();}else{var _0x1cd3a1=_[_0xbbb6('0x3f')](_0x450b64[_0x5e4628[_0xbbb6('0x26')]+_0xbbb6('0x40')],handleFindQueue(_0x43edcc[_0xbbb6('0x30')]));if(_0x1cd3a1){startRouting(_0xf19853,_0x1cd3a1,_0x5e4628,_0x450b64);var _0x3e7c9c=(_0x1cd3a1['timeout']||0xa)*0x3e8;var _0x72c78=(_0x43edcc[_0xbbb6('0x41')]||0x14)*0x3e8;var _0x5c34f8;if(_0x3e7c9c>_0x72c78){_0x72c78=_0x3e7c9c;}var _0x50a6c9=seqqueue['createQueue'](_0x3e7c9c);_0x50a6c9['id']=_0xf19853;_0x50a6c9[_0xbbb6('0x42')]=_0x3e7c9c;_0x50a6c9[_0xbbb6('0x43')]=_0x72c78;_0x50a6c9[_0xbbb6('0x26')]=_0x5e4628[_0xbbb6('0x26')];_0x450b64['rules'][_0xf19853]['on'](_0xbbb6('0x44'),function(){logger['info'](_0xbbb6('0x45'),_0xf19853);stopRouting(_0xf19853,_0x1cd3a1,_0x5e4628,_0x450b64);clearTimeout(_0x5c34f8);_0x5c34f8=undefined;_0x50a6c9[_0xbbb6('0x46')](!![]);if(_0x450b64[_0xbbb6('0x47')][_0xf19853]){delete _0x450b64[_0xbbb6('0x47')][_0xf19853];}_0x18c949['stop']();});_0x450b64[_0xbbb6('0x47')][_0xf19853]['on'](_0xbbb6('0x48'),function(){if(_0x450b64[_0xbbb6('0x47')][_0xf19853]){delete _0x450b64[_0xbbb6('0x47')][_0xf19853];}});_0x5c34f8=setTimeout(function(){logger[_0xbbb6('0x2e')](_0xbbb6('0x49'),_0xf19853);endRouting(_0xf19853,_0x1cd3a1,_0x5e4628,_0x450b64);clearTimeout(_0x5c34f8);_0x50a6c9[_0xbbb6('0x46')](!![]);_0x18c949['next']();},_0x72c78);switch(_0x1cd3a1[_0xbbb6('0x4a')]){case'rrmemory':strategy[_0xbbb6('0x4b')](_0x50a6c9,_0x1cd3a1,_0x450b64,_0x5e4628);break;default:strategy[_0xbbb6('0x4c')](_0x50a6c9,_0x1cd3a1,_0x450b64,_0x5e4628);}}else{logger[_0xbbb6('0x34')](_0xbbb6('0x4d'),_0xf19853,_0x43edcc['name']);_0x18c949[_0xbbb6('0x4e')]();}}}catch(_0x42677f){logger[_0xbbb6('0x34')](_0xbbb6('0x3d'),_0xf19853,_0x42677f[_0xbbb6('0x4f')]);_0x18c949['stop']();}};};
\ No newline at end of file
+var _0x45b4=['./strategy','redis','defaults','localhost','socket.io-emitter','account','from','joinAt','emit','clone','queue_id','queue','capitalize','format','pick','%sQueuesWaitingInteractions','%s:queue:%s','%s_queue_waiting_interaction:%s','remove','../../rpc/openchannelQueueReport','../../rpc/mailQueueReport','../../rpc/chatQueueReport','../../rpc/smsQueueReport','../../rpc/faxQueueReport','../../rpc/whatsappQueueReport','../../rpc/faxInteraction','../../rpc/mailInteraction','../../rpc/whatsappInteraction','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','channel','InteractionId','interaction','message','chat','AccountId','WebsiteId','info','[%s][START:QUEUE][NAME:%s]','name','QueueReport','create','catch','error','[%s][STOP:QUEUE][NAME:%s]','update\x20queue\x20report','toLowerCase','consequence','validate','length','[%s][QUEUE]\x20%s','map','join','stop','find','timeout','createQueue','atimeout','qtimeout','rules','complete','[%s][QUEUE]\x20APPLICATION\x20END','close','next','strategy','rrmemory','beepall','[%s][QUEUE]\x20queue\x20not\x20found\x20%s','stack','lodash','util','ioredis','../../../../config/environment'];(function(_0x336038,_0x4947d2){var _0x13136b=function(_0x370944){while(--_0x370944){_0x336038['push'](_0x336038['shift']());}};_0x13136b(++_0x4947d2);}(_0x45b4,0x1e2));var _0x445b=function(_0x3ce2c4,_0x4544c1){_0x3ce2c4=_0x3ce2c4-0x0;var _0x4047c1=_0x45b4[_0x3ce2c4];return _0x4047c1;};'use strict';var schema=require('validate');var _=require(_0x445b('0x0'));var util=require(_0x445b('0x1'));var seqqueue=require('seq-queue');var moment=require('moment');var Redis=require(_0x445b('0x2'));var config=require(_0x445b('0x3'));var logger=require('../../../../config/logger')('routing');var strategy=require(_0x445b('0x4'));config[_0x445b('0x5')]=_[_0x445b('0x6')](config[_0x445b('0x5')],{'host':_0x445b('0x7'),'port':0x18eb});var io=require(_0x445b('0x8'))(new Redis(config['redis']));var attributes=['id','queue_id',_0x445b('0x9'),'queue',_0x445b('0xa'),_0x445b('0xb')];function emit(_0xb9d412,_0x54b414,_0x14016d){io['to'](_0xb9d412)[_0x445b('0xc')](_0x54b414,_0x14016d);}function emitChannelQueueInteraction(_0x3204ec,_0x4f544f,_0x39fb83,_0x5aa80b,_0x402680,_0x277d7d,_0x4de9d2,_0x1eae75){var _0x197c73=_[_0x445b('0xd')](_0x39fb83);_0x197c73[_0x445b('0xe')]=_0x1eae75;_0x197c73[_0x445b('0xf')]=_0x4f544f;_0x197c73[_0x445b('0x9')]=_0x5aa80b;_0x197c73['id']=_0x402680;if(_0x277d7d){attributes['push'](_[_0x445b('0x10')](_0x3204ec)+'InteractionId');_0x4de9d2[util[_0x445b('0x11')]('%sQueuesWaitingInteractions',_0x3204ec)][_0x402680]=_[_0x445b('0x12')](_0x197c73,attributes);}else{delete _0x4de9d2[util['format'](_0x445b('0x13'),_0x3204ec)][_0x402680];}emit(util[_0x445b('0x11')](_0x445b('0x14'),_0x3204ec,_0x4f544f),util[_0x445b('0x11')](_0x445b('0x15'),_0x3204ec,_0x277d7d?'save':_0x445b('0x16')),_[_0x445b('0x12')](_0x197c73,attributes));}var rpc={'openchannelQueueReport':require(_0x445b('0x17')),'mailQueueReport':require(_0x445b('0x18')),'chatQueueReport':require(_0x445b('0x19')),'smsQueueReport':require(_0x445b('0x1a')),'faxQueueReport':require(_0x445b('0x1b')),'whatsappQueueReport':require(_0x445b('0x1c')),'chatInteraction':require('../../rpc/chatInteraction'),'faxInteraction':require(_0x445b('0x1d')),'mailInteraction':require(_0x445b('0x1e')),'openchannelInteraction':require('../../rpc/openchannelInteraction'),'smsInteraction':require('../../rpc/smsInteraction'),'whatsappInteraction':require(_0x445b('0x1f'))};var queue=schema({'name':{'type':_0x445b('0x20'),'required':!![],'message':_0x445b('0x21')},'timeout':{'type':_0x445b('0x22'),'message':_0x445b('0x23')}});function startRouting(_0x3c1278,_0x3101ca,_0x33d044,_0x662f6){if(_0x3c1278&&_0x3101ca&&_0x33d044){_0x3101ca[_0x445b('0x24')]+=0x1;var _0x52e6a6={'uniqueid':_0x3c1278,'from':_0x33d044[_0x445b('0x25')]?_0x33d044['body'][_0x445b('0xa')]:'','joinAt':moment()['format'](_0x445b('0x26')),'ContactId':_0x33d044[_0x445b('0x27')]?_0x33d044['contact']['id']:null,'ListId':_0x33d044[_0x445b('0x28')]?_0x33d044[_0x445b('0x28')]['id']:null};_0x52e6a6[_[_0x445b('0x29')](_0x33d044[_0x445b('0x2a')])+'QueueId']=_0x3101ca['id']||null;_0x52e6a6[_['upperFirst'](_0x33d044[_0x445b('0x2a')])+_0x445b('0x2b')]=_0x33d044['interaction']?_0x33d044[_0x445b('0x2c')]['id']:null;_0x52e6a6[_[_0x445b('0x29')](_0x33d044[_0x445b('0x2a')])+'MessageId']=_0x33d044[_0x445b('0x2d')]?_0x33d044[_0x445b('0x2d')]['id']:null;_0x52e6a6[_['upperFirst'](_0x33d044['channel'])+(_0x33d044[_0x445b('0x2a')]!==_0x445b('0x2e')?_0x445b('0x2f'):_0x445b('0x30'))]=_0x33d044[_0x445b('0x9')]?_0x33d044[_0x445b('0x9')]['id']:null;logger[_0x445b('0x31')](util['format'](_0x445b('0x32'),_0x3c1278,_0x3101ca[_0x445b('0x33')]));emitChannelQueueInteraction(_0x33d044[_0x445b('0x2a')],_0x3101ca[_0x445b('0x33')],_0x52e6a6,_0x33d044[_0x445b('0x9')][_0x445b('0x33')],_0x33d044[_0x445b('0x2d')]['id'],!![],_0x662f6,_0x3101ca['id']);if(rpc[_0x33d044['channel']+_0x445b('0x34')]){return rpc[_0x33d044[_0x445b('0x2a')]+_0x445b('0x34')][_0x445b('0x35')](_0x52e6a6)[_0x445b('0x36')](function(_0x3a1fca){logger[_0x445b('0x37')]('create\x20queue\x20report',_0x3a1fca);});}}}function stopRouting(_0x4e38ae,_0x2807bd,_0x5645da,_0x1eaeaa){if(_0x4e38ae&&_0x2807bd){_0x2807bd[_0x445b('0x24')]-=0x1;var _0x206a0d={'leaveAt':moment()[_0x445b('0x11')]('YYYY-MM-DD\x20HH:mm:ss'),'acceptAt':moment()['format'](_0x445b('0x26')),'reason':'accepted'};logger[_0x445b('0x31')](util[_0x445b('0x11')](_0x445b('0x38'),_0x4e38ae,_0x2807bd[_0x445b('0x33')]));emitChannelQueueInteraction(_0x5645da[_0x445b('0x2a')],_0x2807bd[_0x445b('0x33')],_0x5645da[_0x445b('0x25')],_0x5645da[_0x445b('0x9')][_0x445b('0x33')],_0x5645da['message']['id'],![],_0x1eaeaa,_0x2807bd['id']);return rpc[_0x5645da[_0x445b('0x2a')]+'Interaction']['update'](_0x5645da[_0x445b('0x2c')]['id'],{'queueId':_0x2807bd['id']})['then'](function(){if(rpc[_0x5645da[_0x445b('0x2a')]+_0x445b('0x34')]){return rpc[_0x5645da[_0x445b('0x2a')]+_0x445b('0x34')]['update'](_0x4e38ae,_0x206a0d)[_0x445b('0x36')](function(_0x53704b){logger['error'](_0x445b('0x39'),_0x53704b);});}});}}function endRouting(_0xc511be,_0x59aa7c,_0x39e6a1,_0x40cb36){if(_0xc511be&&_0x59aa7c){_0x59aa7c['waiting']-=0x1;var _0x10f374={'leaveAt':moment()[_0x445b('0x11')](_0x445b('0x26')),'exitAt':moment()[_0x445b('0x11')](_0x445b('0x26')),'reason':'timeout'};logger[_0x445b('0x31')](util[_0x445b('0x11')]('[%s][END:QUEUE][NAME:%s]',_0xc511be,_0x59aa7c[_0x445b('0x33')]));emitChannelQueueInteraction(_0x39e6a1[_0x445b('0x2a')],_0x59aa7c[_0x445b('0x33')],_0x39e6a1[_0x445b('0x25')],_0x39e6a1[_0x445b('0x9')][_0x445b('0x33')],_0x39e6a1['message']['id'],![],_0x40cb36);if(rpc[_0x39e6a1[_0x445b('0x2a')]+'QueueReport']){return rpc[_0x39e6a1[_0x445b('0x2a')]+'QueueReport']['update'](_0xc511be,_0x10f374)[_0x445b('0x36')](function(_0x299f54){logger[_0x445b('0x37')]('update\x20queue\x20report',_0x299f54);});}}}function handleFindQueue(_0x161117){return function(_0x12326e){return _0x12326e[_0x445b('0x33')][_0x445b('0x3a')]()===_0x161117[_0x445b('0x3a')]();};}exports[_0x445b('0x3b')]=function(_0x414a2c,_0x4da377,_0x585618,_0x19c661){return function(_0x3664d9){try{var _0x36b014={'name':_0x4da377[0x0],'timeout':_0x4da377[0x1]};var _0x3ff82f=queue[_0x445b('0x3c')](_0x36b014,{'typecast':!![]});if(_0x3ff82f[_0x445b('0x3d')]){logger[_0x445b('0x37')](_0x445b('0x3e'),_0x414a2c,_[_0x445b('0x3f')](_0x3ff82f,'message')[_0x445b('0x40')](',\x20'));_0x3664d9[_0x445b('0x41')]();}else{var _0x45e860=_[_0x445b('0x42')](_0x585618[_0x19c661[_0x445b('0x2a')]+'Queues'],handleFindQueue(_0x36b014[_0x445b('0x33')]));if(_0x45e860){startRouting(_0x414a2c,_0x45e860,_0x19c661,_0x585618);var _0x3c79fe=(_0x45e860['timeout']||0xa)*0x3e8;var _0x1f318e=(_0x36b014[_0x445b('0x43')]||0x14)*0x3e8;var _0x24a4b9;if(_0x3c79fe>_0x1f318e){_0x1f318e=_0x3c79fe;}var _0x33321a=seqqueue[_0x445b('0x44')](_0x3c79fe);_0x33321a['id']=_0x414a2c;_0x33321a[_0x445b('0x45')]=_0x3c79fe;_0x33321a[_0x445b('0x46')]=_0x1f318e;_0x33321a[_0x445b('0x2a')]=_0x19c661[_0x445b('0x2a')];_0x585618[_0x445b('0x47')][_0x414a2c]['on']('end',function(){logger[_0x445b('0x31')]('[%s][QUEUE]\x20ROUTING\x20STOPPED',_0x414a2c);stopRouting(_0x414a2c,_0x45e860,_0x19c661,_0x585618);clearTimeout(_0x24a4b9);_0x24a4b9=undefined;_0x33321a['close'](!![]);if(_0x585618['rules'][_0x414a2c]){delete _0x585618[_0x445b('0x47')][_0x414a2c];}_0x3664d9[_0x445b('0x41')]();});_0x585618[_0x445b('0x47')][_0x414a2c]['on'](_0x445b('0x48'),function(){if(_0x585618[_0x445b('0x47')][_0x414a2c]){delete _0x585618[_0x445b('0x47')][_0x414a2c];}});_0x24a4b9=setTimeout(function(){logger['info'](_0x445b('0x49'),_0x414a2c);endRouting(_0x414a2c,_0x45e860,_0x19c661,_0x585618);clearTimeout(_0x24a4b9);_0x33321a[_0x445b('0x4a')](!![]);_0x3664d9[_0x445b('0x4b')]();},_0x1f318e);switch(_0x45e860[_0x445b('0x4c')]){case _0x445b('0x4d'):strategy[_0x445b('0x4d')](_0x33321a,_0x45e860,_0x585618,_0x19c661);break;default:strategy[_0x445b('0x4e')](_0x33321a,_0x45e860,_0x585618,_0x19c661);}}else{logger[_0x445b('0x37')](_0x445b('0x4f'),_0x414a2c,_0x36b014['name']);_0x3664d9[_0x445b('0x41')]();}}}catch(_0x4979e0){logger[_0x445b('0x37')]('[%s][QUEUE]\x20%s',_0x414a2c,_0x4979e0[_0x445b('0x50')]);_0x3664d9[_0x445b('0x41')]();}};};
\ No newline at end of file