Built motion from commit 497d3d92.|2.5.43
[motion2.git] / server / services / routing / server / applications / strategy / agent.js
index 54a900d..4134396 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x6956=['handleRun','bind','timeout','handleTimeout','drained','handleDrained','prototype','info','agents','agent','[%s][AGENT]\x20agent\x20skipped,\x20unknown\x20id\x20%s','forcedOwnership','isAgentAvailable','channel','busy','busyQueue','showNotification','notificationId','writeLog',':FORCED','[%s][AGENT]\x20agent\x20%s\x20is\x20not\x20available','[%s][AGENT]\x20timeout\x20with\x20%s','hideNotification','exports','lodash','uuid','./util','../../../../../config/logger','routing','realtime','squeue','push'];(function(_0x131a94,_0x3b95ac){var _0x5b807f=function(_0x279e9f){while(--_0x279e9f){_0x131a94['push'](_0x131a94['shift']());}};_0x5b807f(++_0x3b95ac);}(_0x6956,0x198));var _0x6695=function(_0x2ad008,_0x45c253){_0x2ad008=_0x2ad008-0x0;var _0x4538cf=_0x6956[_0x2ad008];return _0x4538cf;};'use strict';var _=require(_0x6695('0x0'));var uuid=require(_0x6695('0x1'));var util=require(_0x6695('0x2'));var logger=require(_0x6695('0x3'))(_0x6695('0x4'));var Agent=function(_0x365dc8,_0x1f5a6a,_0x54d710,_0x9e7521){this['notificationId']=uuid['v4']();this['squeue']=_0x365dc8;this['agent']=_0x1f5a6a;this[_0x6695('0x5')]=_0x54d710;this[_0x6695('0x4')]=_0x9e7521;this[_0x6695('0x6')][_0x6695('0x7')](this[_0x6695('0x8')][_0x6695('0x9')](this),this['handleTimeout'][_0x6695('0x9')](this));this['squeue']['on'](_0x6695('0xa'),this[_0x6695('0xb')][_0x6695('0x9')](this));this[_0x6695('0x6')]['on'](_0x6695('0xc'),this[_0x6695('0xd')][_0x6695('0x9')](this));};Agent['prototype'][_0x6695('0x7')]=function(){this[_0x6695('0x6')][_0x6695('0x7')](this[_0x6695('0x8')][_0x6695('0x9')](this),this[_0x6695('0xb')][_0x6695('0x9')](this));};Agent[_0x6695('0xe')][_0x6695('0xd')]=function(){this[_0x6695('0xb')](!![]);};Agent[_0x6695('0xe')]['handleRun']=function(_0x23a61d){logger[_0x6695('0xf')]('[%s][AGENT]\x20try\x20with\x20%s',this[_0x6695('0x6')]['id'],this['agent']['id']);if(_['isNil'](this[_0x6695('0x5')][_0x6695('0x10')][this[_0x6695('0x11')]['id']])){logger[_0x6695('0xf')](_0x6695('0x12'),this[_0x6695('0x6')]['id'],this['agent']['id']);setTimeout(this[_0x6695('0x7')][_0x6695('0x9')](this),0x3e8);}else{if(this[_0x6695('0x4')][_0x6695('0x13')]||util[_0x6695('0x14')](this[_0x6695('0x6')]['id'],this['realtime'][_0x6695('0x10')][this['agent']['id']],this[_0x6695('0x6')][_0x6695('0x15')],![])){this[_0x6695('0x5')][_0x6695('0x10')][this[_0x6695('0x11')]['id']][_0x6695('0x16')]=!![];this[_0x6695('0x5')][_0x6695('0x10')][this['agent']['id']][_0x6695('0x17')]=undefined;util[_0x6695('0x18')](this[_0x6695('0x19')],this[_0x6695('0x6')]['id'],this[_0x6695('0x5')]['agents'][this['agent']['id']],null,this[_0x6695('0x4')]);util[_0x6695('0x1a')](this[_0x6695('0x6')]['id'],this[_0x6695('0x5')][_0x6695('0x10')][this[_0x6695('0x11')]['id']],'RINGING'+(this['routing'][_0x6695('0x13')]?_0x6695('0x1b'):''));}else{logger[_0x6695('0xf')](_0x6695('0x1c'),this[_0x6695('0x6')]['id'],this[_0x6695('0x11')]['id']);setTimeout(this['push']['bind'](this),0x3e8);}}};Agent['prototype'][_0x6695('0xb')]=function(_0x18b0f1){if(_['isNil'](this[_0x6695('0x5')][_0x6695('0x10')][this[_0x6695('0x11')]['id']])){return logger[_0x6695('0xf')](_0x6695('0x12'),this['squeue']['id'],this[_0x6695('0x11')]['id']);}else{logger[_0x6695('0xf')](_0x6695('0x1d'),this[_0x6695('0x6')]['id'],this[_0x6695('0x11')]['id']);util[_0x6695('0x1e')](this[_0x6695('0x19')],this[_0x6695('0x6')]['id'],this['realtime']['agents'][this['agent']['id']],null,this[_0x6695('0x4')]);this['realtime'][_0x6695('0x10')][this[_0x6695('0x11')]['id']][_0x6695('0x16')]=![];this[_0x6695('0x5')]['agents'][this['agent']['id']]['busyQueue']=undefined;util[_0x6695('0x1a')](this[_0x6695('0x6')]['id'],this[_0x6695('0x5')][_0x6695('0x10')][this[_0x6695('0x11')]['id']],_0x18b0f1?'STOP':'TIMEOUT');}if(!_0x18b0f1){setTimeout(this['push'][_0x6695('0x9')](this),0x3e8);}};function agent(_0x441e52,_0x567a7b,_0x88727b,_0x1f00ed){return new Agent(_0x441e52,_0x567a7b,_0x88727b,_0x1f00ed);}module[_0x6695('0x1f')]=agent;
\ No newline at end of file
+var _0x8151=['drained','prototype','info','[%s][AGENT]\x20try\x20with\x20%s','agents','[%s][AGENT]\x20agent\x20skipped,\x20unknown\x20id\x20%s','isAgentAvailable','channel','busy','showNotification','notificationId','writeLog',':FORCED','[%s][AGENT]\x20agent\x20%s\x20is\x20not\x20available','isNil','[%s][AGENT]\x20timeout\x20with\x20%s','hideNotification','busyQueue','STOP','TIMEOUT','exports','./util','../../../../../config/logger','routing','squeue','agent','realtime','push','handleRun','handleTimeout','bind','timeout'];(function(_0x3726db,_0x5a0f42){var _0x3510d9=function(_0x32af85){while(--_0x32af85){_0x3726db['push'](_0x3726db['shift']());}};_0x3510d9(++_0x5a0f42);}(_0x8151,0xd5));var _0x1815=function(_0x1896d2,_0x38e977){_0x1896d2=_0x1896d2-0x0;var _0xd06e7=_0x8151[_0x1896d2];return _0xd06e7;};'use strict';var _=require('lodash');var uuid=require('uuid');var util=require(_0x1815('0x0'));var logger=require(_0x1815('0x1'))(_0x1815('0x2'));var Agent=function(_0x11574a,_0x22391e,_0x3bd29a,_0x22da4e){this['notificationId']=uuid['v4']();this[_0x1815('0x3')]=_0x11574a;this[_0x1815('0x4')]=_0x22391e;this[_0x1815('0x5')]=_0x3bd29a;this[_0x1815('0x2')]=_0x22da4e;this['squeue'][_0x1815('0x6')](this[_0x1815('0x7')]['bind'](this),this[_0x1815('0x8')][_0x1815('0x9')](this));this[_0x1815('0x3')]['on'](_0x1815('0xa'),this[_0x1815('0x8')][_0x1815('0x9')](this));this[_0x1815('0x3')]['on'](_0x1815('0xb'),this['handleDrained'][_0x1815('0x9')](this));};Agent[_0x1815('0xc')][_0x1815('0x6')]=function(){this[_0x1815('0x3')][_0x1815('0x6')](this['handleRun'][_0x1815('0x9')](this),this[_0x1815('0x8')][_0x1815('0x9')](this));};Agent[_0x1815('0xc')]['handleDrained']=function(){this[_0x1815('0x8')](!![]);};Agent[_0x1815('0xc')][_0x1815('0x7')]=function(_0x41c47b){logger[_0x1815('0xd')](_0x1815('0xe'),this['squeue']['id'],this[_0x1815('0x4')]['id']);if(_['isNil'](this[_0x1815('0x5')][_0x1815('0xf')][this['agent']['id']])){logger[_0x1815('0xd')](_0x1815('0x10'),this['squeue']['id'],this[_0x1815('0x4')]['id']);setTimeout(this[_0x1815('0x6')][_0x1815('0x9')](this),0x3e8);}else{if(this[_0x1815('0x2')]['forcedOwnership']||util[_0x1815('0x11')](this['squeue']['id'],this[_0x1815('0x5')][_0x1815('0xf')][this[_0x1815('0x4')]['id']],this['squeue'][_0x1815('0x12')],![])){this[_0x1815('0x5')][_0x1815('0xf')][this[_0x1815('0x4')]['id']][_0x1815('0x13')]=!![];this[_0x1815('0x5')][_0x1815('0xf')][this[_0x1815('0x4')]['id']]['busyQueue']=undefined;util[_0x1815('0x14')](this[_0x1815('0x15')],this['squeue']['id'],this['realtime'][_0x1815('0xf')][this['agent']['id']],null,this[_0x1815('0x2')]);util[_0x1815('0x16')](this['squeue']['id'],this[_0x1815('0x5')][_0x1815('0xf')][this[_0x1815('0x4')]['id']],'RINGING'+(this['routing']['forcedOwnership']?_0x1815('0x17'):''));}else{logger[_0x1815('0xd')](_0x1815('0x18'),this['squeue']['id'],this[_0x1815('0x4')]['id']);setTimeout(this[_0x1815('0x6')][_0x1815('0x9')](this),0x3e8);}}};Agent['prototype'][_0x1815('0x8')]=function(_0x4d415a){if(_[_0x1815('0x19')](this[_0x1815('0x5')][_0x1815('0xf')][this['agent']['id']])){return logger[_0x1815('0xd')]('[%s][AGENT]\x20agent\x20skipped,\x20unknown\x20id\x20%s',this[_0x1815('0x3')]['id'],this[_0x1815('0x4')]['id']);}else{logger['info'](_0x1815('0x1a'),this['squeue']['id'],this['agent']['id']);util[_0x1815('0x1b')](this[_0x1815('0x15')],this[_0x1815('0x3')]['id'],this[_0x1815('0x5')][_0x1815('0xf')][this[_0x1815('0x4')]['id']],null,this[_0x1815('0x2')]);this[_0x1815('0x5')]['agents'][this[_0x1815('0x4')]['id']]['busy']=![];this[_0x1815('0x5')]['agents'][this[_0x1815('0x4')]['id']][_0x1815('0x1c')]=undefined;util[_0x1815('0x16')](this[_0x1815('0x3')]['id'],this[_0x1815('0x5')][_0x1815('0xf')][this['agent']['id']],_0x4d415a?_0x1815('0x1d'):_0x1815('0x1e'));}if(!_0x4d415a){setTimeout(this[_0x1815('0x6')][_0x1815('0x9')](this),0x3e8);}};function agent(_0x25b705,_0x2820f5,_0x5d0982,_0x29e4cf){return new Agent(_0x25b705,_0x2820f5,_0x5d0982,_0x29e4cf);}module[_0x1815('0x1f')]=agent;
\ No newline at end of file