Built motion from commit (unavailable).|2.5.30
[motion2.git] / server / services / routing / server / index.js
index 53c0409..73270e8 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x1e66=['faxQueuesWaitingInteractions','whatsappQueuesWaitingInteractions','server','log','Routing\x20RPC\x20server\x20listening\x20on\x20127.0.0.1:%d!','RPC\x20listening\x20on\x20port:','util','bluebird','../../../config/environment','../../../config/logger','routing','../rpc/openchannelQueueReport','../rpc/mailQueueReport','../rpc/smsQueueReport','../rpc/faxQueueReport','../rpc/whatsappQueueReport','../lib/rule-engine','format','IntervalId','isNil','Intervals','interval','listen','rules','channel','message','interaction','applications','isArray','length','existsSync','join','app','.js','toLowerCase','autoreply','appdata','push','slice','dialogflow','split','amazonlex','TagId','%s:%s:%s','./interval','condition','consequence','priority','info','Push\x20new\x20rule','on\x20interval','\x20|\x20','error','execute','stringify','matchPath','emit','complete','No\x20applications\x20to\x20execute','routing\x20is\x20empty','end','QueueReport','update','stack','message\x20is\x20empty','agent','agents','busy','busyQueue','hasOwnProperty','capacity','CurrentCapacity','agent\x20not\x20found','values','chatQueues','available','loggedIn','name','paused','waiting','mailQueues','openchannelQueues','smsQueues','faxQueues','whatsappQueues','mailQueuesWaitingInteractions'];(function(_0x495633,_0x1145ef){var _0x2cd348=function(_0x283ed2){while(--_0x283ed2){_0x495633['push'](_0x495633['shift']());}};_0x2cd348(++_0x1145ef);}(_0x1e66,0x108));var _0x61e6=function(_0x3e44fa,_0x75ed2a){_0x3e44fa=_0x3e44fa-0x0;var _0x2a0aba=_0x1e66[_0x3e44fa];return _0x2a0aba;};'use strict';var _=require('lodash');var util=require(_0x61e6('0x0'));var path=require('path');var fs=require('fs');var jayson=require('jayson/promise');var BPromise=require(_0x61e6('0x1'));var uuid=require('uuid');var config=require(_0x61e6('0x2'));var logger=require(_0x61e6('0x3'))(_0x61e6('0x4'));var rpc={'openchannelQueueReport':require(_0x61e6('0x5')),'mailQueueReport':require(_0x61e6('0x6')),'chatQueueReport':require('../rpc/chatQueueReport'),'smsQueueReport':require(_0x61e6('0x7')),'faxQueueReport':require(_0x61e6('0x8')),'whatsappQueueReport':require(_0x61e6('0x9'))};var RuleEngine=require(_0x61e6('0xa'));function getId(_0x3b6525,_0x46f0d2,_0x4f9e6a){return util[_0x61e6('0xb')]('%s.%s.%s',_0x3b6525,_0x46f0d2||0x0,_0x4f9e6a||0x0);}function getIntervals(_0x894a66,_0xcba9a0){var _0x549c4c=[];if(!_['isNil'](_0xcba9a0[_0x61e6('0xc')])&&!_[_0x61e6('0xd')](_0x894a66[_0xcba9a0[_0x61e6('0xc')]])&&!_[_0x61e6('0xd')](_0x894a66[_0xcba9a0['IntervalId']][_0x61e6('0xe')])){_0x549c4c=_['map'](_0x894a66[_0xcba9a0[_0x61e6('0xc')]][_0x61e6('0xe')],'interval');}else if(!_[_0x61e6('0xd')](_0xcba9a0[_0x61e6('0xf')])){_0x549c4c=[_0xcba9a0[_0x61e6('0xf')]];}return _0x549c4c;}exports[_0x61e6('0x10')]=function(_0x33a9be){_0x33a9be[_0x61e6('0x11')]={};return new BPromise(function(_0x10bf8d,_0x4003e9){var _0x57aed1={'Start':function(_0xd06f8d){var _0x4262d6=this;return new Promise(function(_0x5b75c1,_0x5c6d25){if(_0xd06f8d){try{var _0x3f88f7=[];var _0x561f69=getId(_0xd06f8d[_0x61e6('0x12')],_0xd06f8d['message']?_0xd06f8d[_0x61e6('0x13')]['id']:0x0,_0xd06f8d[_0x61e6('0x14')]?_0xd06f8d[_0x61e6('0x14')]['id']:0x0);if(_0xd06f8d[_0x61e6('0x15')]&&_[_0x61e6('0x16')](_0xd06f8d['applications'])&&_0xd06f8d[_0x61e6('0x15')][_0x61e6('0x17')]){for(var _0xdea5a5=0x0;_0xdea5a5<_0xd06f8d[_0x61e6('0x15')]['length'];_0xdea5a5+=0x1){var _0xb30131=_0xd06f8d[_0x61e6('0x15')][_0xdea5a5];if(fs[_0x61e6('0x18')](path[_0x61e6('0x19')](__dirname,'applications',_0xb30131[_0x61e6('0x1a')]+_0x61e6('0x1b')))){var _0x5d9a3a=[];switch(_0xb30131['app'][_0x61e6('0x1c')]()){case _0x61e6('0x1d'):var _0x330654=_0xb30131[_0x61e6('0x1e')]['split'](',');_0x5d9a3a[_0x61e6('0x1f')](_0x330654[0x0]);_0x5d9a3a[_0x61e6('0x1f')](_0x330654[_0x61e6('0x20')](0x1,_0x330654[_0x61e6('0x17')])[_0x61e6('0x19')](','));break;case _0x61e6('0x21'):var _0x3e5287=_0xb30131['appdata'][_0x61e6('0x22')](',');_0x5d9a3a[_0x61e6('0x1f')](_0x3e5287[0x0]);_0x5d9a3a[_0x61e6('0x1f')](_0x3e5287[0x1]);_0x5d9a3a[_0x61e6('0x1f')](_0x3e5287[_0x61e6('0x20')](0x2,_0x3e5287[_0x61e6('0x17')])[_0x61e6('0x19')](','));break;case _0x61e6('0x23'):var _0x2edd25=_0xb30131[_0x61e6('0x1e')][_0x61e6('0x22')](',');_0x5d9a3a['push'](_0x2edd25[0x0]);_0x5d9a3a['push'](_0x2edd25[0x1]);_0x5d9a3a['push'](_0x2edd25[0x2]);_0x5d9a3a['push'](_0x2edd25[0x3]);_0x5d9a3a[_0x61e6('0x1f')](_0x2edd25[_0x61e6('0x20')](0x4,_0x2edd25['length'])['join'](','));break;case'message':_0x5d9a3a[_0x61e6('0x1f')](_0xb30131[_0x61e6('0x1e')]);break;case'tag':_0x5d9a3a[_0x61e6('0x1f')](_0xb30131[_0x61e6('0x24')]);_0x5d9a3a['push'](_0xb30131[_0x61e6('0x1e')]);break;default:_0x5d9a3a=_['isNil'](_0xb30131[_0x61e6('0x1e')])?[]:_0xb30131[_0x61e6('0x1e')][_0x61e6('0x22')](',');}var _0x2f7dba={'id':util['format'](_0x61e6('0x25'),_0x561f69,_0xb30131['id'],_0xb30131[_0x61e6('0x1a')]),'condition':require(_0x61e6('0x26'))[_0x61e6('0x27')](_0x561f69,getIntervals(_0x33a9be['intervals'],_0xb30131),_0x33a9be),'consequence':require('./applications/'+_0xb30131[_0x61e6('0x1a')])[_0x61e6('0x28')](_0x561f69,_0x5d9a3a,_0x33a9be,_0xd06f8d),'p':_0xb30131[_0x61e6('0x29')]||0x0};logger[_0x61e6('0x2a')](_0x61e6('0x2b'),_0x2f7dba['id'],_0x61e6('0x2c'),getIntervals(_0x33a9be['intervals'],_0xb30131)[_0x61e6('0x19')](_0x61e6('0x2d')));_0x3f88f7['push'](_0x2f7dba);}else{logger[_0x61e6('0x2e')]('Please\x20create\x20a\x20new\x20file\x20under',path[_0x61e6('0x19')](__dirname,_0x61e6('0x15'),_0xb30131['app']+_0x61e6('0x1b')));}}_0x33a9be[_0x61e6('0x11')][_0x561f69]=new RuleEngine(_0x3f88f7);_0x33a9be[_0x61e6('0x11')][_0x561f69][_0x61e6('0x2f')](_0xd06f8d,function(_0x3f1895){logger[_0x61e6('0x2a')]('Applications\x20executed',JSON[_0x61e6('0x30')](_0x3f1895[_0x61e6('0x31')]));if(_0x33a9be['rules'][_0x561f69]){_0x33a9be[_0x61e6('0x11')][_0x561f69][_0x61e6('0x32')](_0x61e6('0x33'));}});return _0x5b75c1({'code':0xc8,'message':_0xd06f8d});}else{logger[_0x61e6('0x2a')](_0x61e6('0x34'));return _0x5b75c1({'code':0xc8,'message':_0xd06f8d});}}catch(_0x11e716){logger[_0x61e6('0x2e')](_0x11e716['stack']);return _0x5c6d25(_0x4262d6['error'](0x1f4,_0x11e716));}}return _0x5c6d25(_0x61e6('0x35'));});},'AcceptMessage':function(_0x214bf5){var _0x3978f1=this;return new Promise(function(_0x47f6ab,_0x15a5e8){if(_0x214bf5['message']&&_0x214bf5[_0x61e6('0x13')]['id']){try{var _0x544773=getId(_0x214bf5[_0x61e6('0x12')],_0x214bf5[_0x61e6('0x13')]?_0x214bf5['message']['id']:0x0,_0x214bf5[_0x61e6('0x14')]?_0x214bf5[_0x61e6('0x14')]['id']:0x0);if(_0x33a9be['rules'][_0x544773]){_0x33a9be['rules'][_0x544773][_0x61e6('0x32')](_0x61e6('0x36'));if(rpc[_0x214bf5[_0x61e6('0x12')]+'QueueReport']){rpc[_0x214bf5[_0x61e6('0x12')]+_0x61e6('0x37')][_0x61e6('0x38')](_0x544773,{'UserId':_0x214bf5[_0x61e6('0x13')]['UserId']})['catch'](function(_0x536538){logger[_0x61e6('0x2e')]('error\x20update\x20queue\x20report');});}}return _0x47f6ab({'code':0xc8,'message':_0x214bf5});}catch(_0x55db3b){logger['error'](_0x55db3b[_0x61e6('0x39')]);return _0x15a5e8(_0x3978f1[_0x61e6('0x2e')](0x1f4,_0x55db3b));}}logger[_0x61e6('0x2e')]('message\x20is\x20empty');return _0x15a5e8(_0x3978f1[_0x61e6('0x2e')](0x1f4,_0x61e6('0x3a')));});},'RejectMessage':function(_0x54ba15){var _0x40fe62=this;return new Promise(function(_0x1eeb96,_0x5c6eff){if(_0x54ba15[_0x61e6('0x3b')]&&_0x54ba15[_0x61e6('0x3b')]['id']){try{if(_0x33a9be['agents'][_0x54ba15[_0x61e6('0x3b')]['id']]){_0x33a9be[_0x61e6('0x3c')][_0x54ba15['agent']['id']][_0x61e6('0x3d')]=![];_0x33a9be[_0x61e6('0x3c')][_0x54ba15['agent']['id']][_0x61e6('0x3e')]=undefined;}return _0x1eeb96({'code':0xc8,'message':_0x54ba15});}catch(_0x2a7539){logger[_0x61e6('0x2e')](_0x2a7539['stack']);return _0x5c6eff(_0x40fe62[_0x61e6('0x2e')](0x1f4,_0x2a7539));}}logger[_0x61e6('0x2e')](_0x61e6('0x3a'));return _0x5c6eff(_0x40fe62[_0x61e6('0x2e')](0x1f4,_0x61e6('0x3a')));});},'AbandonInteraction':function(_0x3f42d6){var _0x4ce438=this;return new Promise(function(_0x1eb6f8,_0xab051e){if(_0x3f42d6[_0x61e6('0x12')]&&_0x3f42d6['interaction']&&_0x3f42d6[_0x61e6('0x14')]['id']){try{var _0x5f0331=getId(_0x3f42d6['channel'],_0x3f42d6['message']?_0x3f42d6['message']['id']:0x0,_0x3f42d6[_0x61e6('0x14')]?_0x3f42d6['interaction']['id']:0x0);if(_0x33a9be[_0x61e6('0x11')][_0x5f0331]){_0x33a9be[_0x61e6('0x11')][_0x5f0331][_0x61e6('0x32')]('end');}return _0x1eb6f8({'code':0xc8,'message':_0x3f42d6});}catch(_0x4a3afb){logger[_0x61e6('0x2e')](_0x4a3afb[_0x61e6('0x39')]);return _0xab051e(_0x4ce438[_0x61e6('0x2e')](0x1f4,_0x4a3afb));}}logger['error'](_0x61e6('0x3a'));return _0xab051e(_0x4ce438[_0x61e6('0x2e')](0x1f4,'message\x20is\x20empty'));});},'AgentCapacity':function(_0x50fc08){var _0x102ae6=this;return new Promise(function(_0xf3b6b,_0x381f84){if(_0x33a9be[_0x61e6('0x3c')][_0x61e6('0x3f')](_0x50fc08['id'])){for(var _0x2e4944 in _0x50fc08['capacity']){if(_0x50fc08[_0x61e6('0x40')][_0x61e6('0x3f')](_0x2e4944)){if(_0x33a9be[_0x61e6('0x3c')][_0x50fc08['id']][_0x61e6('0x3f')](_0x2e4944+'CurrentCapacity')){_0x33a9be[_0x61e6('0x3c')][_0x50fc08['id']][_0x2e4944+_0x61e6('0x41')]=parseInt(_0x50fc08[_0x61e6('0x40')][_0x2e4944],0xa);}}}_0x33a9be[_0x61e6('0x3c')][_0x50fc08['id']]['updateRealtime']();return _0xf3b6b({'code':0xc8,'message':_0x33a9be['agents'][_0x50fc08['id']]});}else{return _0x381f84(_0x102ae6[_0x61e6('0x2e')](0x1f4,_0x61e6('0x42')));}});},'Agents':function(_0x56a464){return new Promise(function(_0x4a2985,_0x54f5e1){var _0x3f3c00=_[_0x61e6('0x43')](_0x33a9be[_0x61e6('0x3c')]);_0x4a2985({'count':_0x3f3c00['length'],'rows':_0x3f3c00});});},'ChatQueues':function(_0x5613ca){return new Promise(function(_0x6809dc,_0x48da7c){var _0x3dd038=[];for(var _0x29c895 in _0x33a9be[_0x61e6('0x44')]){if(_0x33a9be['chatQueues'][_0x61e6('0x3f')](_0x29c895)){var _0x51d58a=_0x33a9be[_0x61e6('0x44')][_0x29c895];var _0x21c3fc={'id':_0x51d58a['id'],'available':_0x51d58a[_0x61e6('0x45')],'loggedIn':_0x51d58a[_0x61e6('0x46')],'name':_0x51d58a[_0x61e6('0x47')],'paused':_0x51d58a[_0x61e6('0x48')],'waiting':_0x51d58a[_0x61e6('0x49')]};_0x3dd038[_0x61e6('0x1f')](_0x21c3fc);}}_0x6809dc({'count':_0x3dd038[_0x61e6('0x17')],'rows':_0x3dd038});});},'MailQueues':function(_0x36f1df){return new Promise(function(_0xcd952b,_0x49ec36){var _0x375c8b=[];for(var _0x1861bf in _0x33a9be['mailQueues']){if(_0x33a9be[_0x61e6('0x4a')]['hasOwnProperty'](_0x1861bf)){var _0x2b09f5=_0x33a9be['mailQueues'][_0x1861bf];var _0x1c0b94={'id':_0x2b09f5['id'],'available':_0x2b09f5[_0x61e6('0x45')],'loggedIn':_0x2b09f5['loggedIn'],'name':_0x2b09f5[_0x61e6('0x47')],'paused':_0x2b09f5['paused'],'waiting':_0x2b09f5[_0x61e6('0x49')]};_0x375c8b[_0x61e6('0x1f')](_0x1c0b94);}}_0xcd952b({'count':_0x375c8b[_0x61e6('0x17')],'rows':_0x375c8b});});},'OpenchannelQueues':function(_0x3ce428){return new Promise(function(_0x489f47,_0x1aa8d8){var _0x19ffbf=[];for(var _0x14edb5 in _0x33a9be[_0x61e6('0x4b')]){if(_0x33a9be['openchannelQueues']['hasOwnProperty'](_0x14edb5)){var _0x5269fc=_0x33a9be[_0x61e6('0x4b')][_0x14edb5];var _0x4e3354={'id':_0x5269fc['id'],'available':_0x5269fc[_0x61e6('0x45')],'loggedIn':_0x5269fc[_0x61e6('0x46')],'name':_0x5269fc['name'],'paused':_0x5269fc['paused'],'waiting':_0x5269fc[_0x61e6('0x49')]};_0x19ffbf[_0x61e6('0x1f')](_0x4e3354);}}_0x489f47({'count':_0x19ffbf[_0x61e6('0x17')],'rows':_0x19ffbf});});},'SmsQueues':function(_0x533566){return new Promise(function(_0x1faae0,_0xf54b13){var _0x6665f5=[];for(var _0x4966e4 in _0x33a9be[_0x61e6('0x4c')]){if(_0x33a9be[_0x61e6('0x4c')][_0x61e6('0x3f')](_0x4966e4)){var _0x5ca8b1=_0x33a9be['smsQueues'][_0x4966e4];var _0x3f418f={'id':_0x5ca8b1['id'],'available':_0x5ca8b1['available'],'loggedIn':_0x5ca8b1[_0x61e6('0x46')],'name':_0x5ca8b1[_0x61e6('0x47')],'paused':_0x5ca8b1[_0x61e6('0x48')],'waiting':_0x5ca8b1[_0x61e6('0x49')]};_0x6665f5[_0x61e6('0x1f')](_0x3f418f);}}_0x1faae0({'count':_0x6665f5[_0x61e6('0x17')],'rows':_0x6665f5});});},'FaxQueues':function(_0x5de146){return new Promise(function(_0x56be5c,_0x44b30e){var _0x2eedc5=[];for(var _0x3c7e7c in _0x33a9be[_0x61e6('0x4d')]){if(_0x33a9be[_0x61e6('0x4d')]['hasOwnProperty'](_0x3c7e7c)){var _0x18e510=_0x33a9be[_0x61e6('0x4d')][_0x3c7e7c];var _0x9b089f={'id':_0x18e510['id'],'available':_0x18e510['available'],'loggedIn':_0x18e510[_0x61e6('0x46')],'name':_0x18e510[_0x61e6('0x47')],'paused':_0x18e510[_0x61e6('0x48')],'waiting':_0x18e510[_0x61e6('0x49')]};_0x2eedc5[_0x61e6('0x1f')](_0x9b089f);}}_0x56be5c({'count':_0x2eedc5[_0x61e6('0x17')],'rows':_0x2eedc5});});},'WhatsappQueues':function(_0x579160){return new Promise(function(_0x531a4e,_0x507024){var _0x52f873=[];for(var _0x563f4a in _0x33a9be['whatsappQueues']){if(_0x33a9be[_0x61e6('0x4e')]['hasOwnProperty'](_0x563f4a)){var _0x3b6e04=_0x33a9be['whatsappQueues'][_0x563f4a];var _0x3e8f27={'id':_0x3b6e04['id'],'available':_0x3b6e04[_0x61e6('0x45')],'loggedIn':_0x3b6e04[_0x61e6('0x46')],'name':_0x3b6e04['name'],'paused':_0x3b6e04[_0x61e6('0x48')],'waiting':_0x3b6e04[_0x61e6('0x49')]};_0x52f873[_0x61e6('0x1f')](_0x3e8f27);}}_0x531a4e({'count':_0x52f873[_0x61e6('0x17')],'rows':_0x52f873});});},'ChatQueuesWaitingInteractions':function(_0x4f4ffb){return new Promise(function(_0x15a55c,_0x16d788){var _0x5a5e35=_[_0x61e6('0x43')](_0x33a9be['chatQueuesWaitingInteractions']);_0x15a55c({'count':_0x5a5e35[_0x61e6('0x17')],'rows':_0x5a5e35});});},'MailQueuesWaitingInteractions':function(_0x88afe1){return new Promise(function(_0x47ed64,_0x3ca174){var _0x2a4bd5=_[_0x61e6('0x43')](_0x33a9be[_0x61e6('0x4f')]);_0x47ed64({'count':_0x2a4bd5[_0x61e6('0x17')],'rows':_0x2a4bd5});});},'OpenchannelQueuesWaitingInteractions':function(_0x4bf033){return new Promise(function(_0x290d35,_0x27eddc){var _0x5276b3=_['values'](_0x33a9be['openchannelQueuesWaitingInteractions']);_0x290d35({'count':_0x5276b3[_0x61e6('0x17')],'rows':_0x5276b3});});},'SmsQueuesWaitingInteractions':function(_0x394106){return new Promise(function(_0x249bd0,_0x2c9da0){var _0xdb9ecd=_[_0x61e6('0x43')](_0x33a9be['smsQueuesWaitingInteractions']);_0x249bd0({'count':_0xdb9ecd[_0x61e6('0x17')],'rows':_0xdb9ecd});});},'FaxQueuesWaitingInteractions':function(_0x29831a){return new Promise(function(_0x3d56d5,_0x30c29e){var _0x28e6d6=_[_0x61e6('0x43')](_0x33a9be[_0x61e6('0x50')]);_0x3d56d5({'count':_0x28e6d6[_0x61e6('0x17')],'rows':_0x28e6d6});});},'WhatsappQueuesWaitingInteractions':function(_0xb15c0c){return new Promise(function(_0x32778b,_0xc81c08){var _0x230799=_['values'](_0x33a9be[_0x61e6('0x51')]);_0x32778b({'count':_0x230799[_0x61e6('0x17')],'rows':_0x230799});});}};var _0x549304=jayson[_0x61e6('0x52')](_0x57aed1)['http']();_0x549304['on'](_0x61e6('0x2e'),function(_0x1ca579){logger[_0x61e6('0x2e')](JSON[_0x61e6('0x30')](_0x1ca579));return _0x4003e9(_0x1ca579);});_0x549304[_0x61e6('0x10')](0x232c,'127.0.0.1',function(){console[_0x61e6('0x53')](_0x61e6('0x54'),0x232c);return _0x10bf8d(_0x61e6('0x55')+0x232c);});});};
\ No newline at end of file
+var _0xb7c8=['uuid','../../../config/environment','../../../config/logger','../rpc/openchannelQueueReport','../rpc/mailQueueReport','../rpc/chatQueueReport','../rpc/smsQueueReport','../rpc/faxQueueReport','../rpc/whatsappQueueReport','../lib/rule-engine','format','%s.%s.%s','isNil','IntervalId','Intervals','interval','listen','rules','channel','message','interaction','applications','isArray','length','existsSync','join','app','.js','toLowerCase','autoreply','appdata','split','mail','push','slice','dialogflow','dialogflowv2','amazonlex','tag','TagId','%s:%s:%s','condition','intervals','./applications/','priority','info','Push\x20new\x20rule','Please\x20create\x20a\x20new\x20file\x20under','execute','Applications\x20executed','stringify','matchPath','emit','complete','No\x20applications\x20to\x20execute','error','routing\x20is\x20empty','agent','agents','busy','busyQueue','end','QueueReport','update','catch','message\x20is\x20empty','stack','capacity','hasOwnProperty','CurrentCapacity','updateRealtime','agent\x20not\x20found','values','chatQueues','available','loggedIn','name','waiting','mailQueues','paused','openchannelQueues','faxQueues','whatsappQueues','chatQueuesWaitingInteractions','openchannelQueuesWaitingInteractions','smsQueuesWaitingInteractions','whatsappQueuesWaitingInteractions','127.0.0.1','log','Routing\x20RPC\x20server\x20listening\x20on\x20127.0.0.1:%d!','RPC\x20listening\x20on\x20port:','util','path','jayson/promise','bluebird'];(function(_0x119bfb,_0x14375b){var _0x5ef624=function(_0x10f8c2){while(--_0x10f8c2){_0x119bfb['push'](_0x119bfb['shift']());}};_0x5ef624(++_0x14375b);}(_0xb7c8,0x119));var _0x8b7c=function(_0x37f8f9,_0x32753d){_0x37f8f9=_0x37f8f9-0x0;var _0x2990c2=_0xb7c8[_0x37f8f9];return _0x2990c2;};'use strict';var _=require('lodash');var util=require(_0x8b7c('0x0'));var path=require(_0x8b7c('0x1'));var fs=require('fs');var jayson=require(_0x8b7c('0x2'));var BPromise=require(_0x8b7c('0x3'));var uuid=require(_0x8b7c('0x4'));var config=require(_0x8b7c('0x5'));var logger=require(_0x8b7c('0x6'))('routing');var rpc={'openchannelQueueReport':require(_0x8b7c('0x7')),'mailQueueReport':require(_0x8b7c('0x8')),'chatQueueReport':require(_0x8b7c('0x9')),'smsQueueReport':require(_0x8b7c('0xa')),'faxQueueReport':require(_0x8b7c('0xb')),'whatsappQueueReport':require(_0x8b7c('0xc'))};var RuleEngine=require(_0x8b7c('0xd'));function getId(_0x3c8fd6,_0x6afb55,_0x30a924){return util[_0x8b7c('0xe')](_0x8b7c('0xf'),_0x3c8fd6,_0x6afb55||0x0,_0x30a924||0x0);}function getIntervals(_0x48370e,_0x31bf3f){var _0x5986c1=[];if(!_[_0x8b7c('0x10')](_0x31bf3f[_0x8b7c('0x11')])&&!_['isNil'](_0x48370e[_0x31bf3f[_0x8b7c('0x11')]])&&!_[_0x8b7c('0x10')](_0x48370e[_0x31bf3f[_0x8b7c('0x11')]]['Intervals'])){_0x5986c1=_['map'](_0x48370e[_0x31bf3f[_0x8b7c('0x11')]][_0x8b7c('0x12')],_0x8b7c('0x13'));}else if(!_[_0x8b7c('0x10')](_0x31bf3f[_0x8b7c('0x13')])){_0x5986c1=[_0x31bf3f[_0x8b7c('0x13')]];}return _0x5986c1;}exports[_0x8b7c('0x14')]=function(_0x56e02b){_0x56e02b[_0x8b7c('0x15')]={};return new BPromise(function(_0x19c63e,_0x5857ac){var _0x52cfe7={'Start':function(_0xd37a82){var _0x4284a2=this;return new Promise(function(_0x496bc0,_0x3b8d62){if(_0xd37a82){try{var _0xcc0fcc=[];var _0x4262b5=getId(_0xd37a82[_0x8b7c('0x16')],_0xd37a82[_0x8b7c('0x17')]?_0xd37a82['message']['id']:0x0,_0xd37a82[_0x8b7c('0x18')]?_0xd37a82[_0x8b7c('0x18')]['id']:0x0);if(_0xd37a82[_0x8b7c('0x19')]&&_[_0x8b7c('0x1a')](_0xd37a82[_0x8b7c('0x19')])&&_0xd37a82['applications'][_0x8b7c('0x1b')]){for(var _0x2b0874=0x0;_0x2b0874<_0xd37a82[_0x8b7c('0x19')][_0x8b7c('0x1b')];_0x2b0874+=0x1){var _0x7b9e59=_0xd37a82[_0x8b7c('0x19')][_0x2b0874];if(fs[_0x8b7c('0x1c')](path[_0x8b7c('0x1d')](__dirname,_0x8b7c('0x19'),_0x7b9e59[_0x8b7c('0x1e')]+_0x8b7c('0x1f')))){var _0x1fe931=[];switch(_0x7b9e59['app'][_0x8b7c('0x20')]()){case _0x8b7c('0x21'):var _0x247c62=_0x7b9e59[_0x8b7c('0x22')][_0x8b7c('0x23')](',');if(_0xd37a82[_0x8b7c('0x16')]===_0x8b7c('0x24')){_0x1fe931[_0x8b7c('0x25')](_0x247c62[0x0]);_0x1fe931[_0x8b7c('0x25')](_0x247c62[0x1]);_0x1fe931[_0x8b7c('0x25')](_0x247c62['slice'](0x2,_0x247c62['length'])[_0x8b7c('0x1d')](','));}else{_0x1fe931['push'](_0x247c62[0x0]);_0x1fe931[_0x8b7c('0x25')](_0x247c62[_0x8b7c('0x26')](0x1,_0x247c62[_0x8b7c('0x1b')])[_0x8b7c('0x1d')](','));}break;case _0x8b7c('0x27'):var _0x3d2dfa=_0x7b9e59['appdata'][_0x8b7c('0x23')](',');_0x1fe931[_0x8b7c('0x25')](_0x3d2dfa[0x0]);_0x1fe931[_0x8b7c('0x25')](_0x3d2dfa[0x1]);_0x1fe931[_0x8b7c('0x25')](_0x3d2dfa[_0x8b7c('0x26')](0x2,_0x3d2dfa[_0x8b7c('0x1b')])[_0x8b7c('0x1d')](','));break;case _0x8b7c('0x28'):var _0x329998=_0x7b9e59[_0x8b7c('0x22')]['split'](',');_0x1fe931['push'](_0x329998[0x0]);_0x1fe931[_0x8b7c('0x25')](_0x329998[0x1]);_0x1fe931[_0x8b7c('0x25')](_0x329998[0x2]);_0x1fe931[_0x8b7c('0x25')](_0x329998[0x3]);_0x1fe931[_0x8b7c('0x25')](_0x329998[_0x8b7c('0x26')](0x4,_0x329998[_0x8b7c('0x1b')])[_0x8b7c('0x1d')](','));break;case _0x8b7c('0x29'):var _0x256681=_0x7b9e59[_0x8b7c('0x22')]['split'](',');_0x1fe931[_0x8b7c('0x25')](_0x256681[0x0]);_0x1fe931['push'](_0x256681[0x1]);_0x1fe931[_0x8b7c('0x25')](_0x256681[0x2]);_0x1fe931[_0x8b7c('0x25')](_0x256681[0x3]);_0x1fe931['push'](_0x256681[_0x8b7c('0x26')](0x4,_0x256681['length'])[_0x8b7c('0x1d')](','));break;case _0x8b7c('0x17'):_0x1fe931[_0x8b7c('0x25')](_0x7b9e59[_0x8b7c('0x22')]);break;case _0x8b7c('0x2a'):_0x1fe931[_0x8b7c('0x25')](_0x7b9e59[_0x8b7c('0x2b')]);_0x1fe931[_0x8b7c('0x25')](_0x7b9e59[_0x8b7c('0x22')]);break;default:_0x1fe931=_['isNil'](_0x7b9e59[_0x8b7c('0x22')])?[]:_0x7b9e59[_0x8b7c('0x22')]['split'](',');}var _0x56a272={'id':util['format'](_0x8b7c('0x2c'),_0x4262b5,_0x7b9e59['id'],_0x7b9e59[_0x8b7c('0x1e')]),'condition':require('./interval')[_0x8b7c('0x2d')](_0x4262b5,getIntervals(_0x56e02b[_0x8b7c('0x2e')],_0x7b9e59),_0x56e02b),'consequence':require(_0x8b7c('0x2f')+_0x7b9e59[_0x8b7c('0x1e')])['consequence'](_0x4262b5,_0x1fe931,_0x56e02b,_0xd37a82),'p':_0x7b9e59[_0x8b7c('0x30')]||0x0};logger[_0x8b7c('0x31')](_0x8b7c('0x32'),_0x56a272['id'],'on\x20interval',getIntervals(_0x56e02b[_0x8b7c('0x2e')],_0x7b9e59)[_0x8b7c('0x1d')]('\x20|\x20'));_0xcc0fcc['push'](_0x56a272);}else{logger['error'](_0x8b7c('0x33'),path[_0x8b7c('0x1d')](__dirname,_0x8b7c('0x19'),_0x7b9e59[_0x8b7c('0x1e')]+_0x8b7c('0x1f')));}}_0x56e02b[_0x8b7c('0x15')][_0x4262b5]=new RuleEngine(_0xcc0fcc);_0x56e02b['rules'][_0x4262b5][_0x8b7c('0x34')](_0xd37a82,function(_0x59b721){logger[_0x8b7c('0x31')](_0x8b7c('0x35'),JSON[_0x8b7c('0x36')](_0x59b721[_0x8b7c('0x37')]));if(_0x56e02b['rules'][_0x4262b5]){_0x56e02b[_0x8b7c('0x15')][_0x4262b5][_0x8b7c('0x38')](_0x8b7c('0x39'));}});return _0x496bc0({'code':0xc8,'message':_0xd37a82});}else{logger[_0x8b7c('0x31')](_0x8b7c('0x3a'));return _0x496bc0({'code':0xc8,'message':_0xd37a82});}}catch(_0x3252f9){logger['error'](_0x3252f9['stack']);return _0x3b8d62(_0x4284a2[_0x8b7c('0x3b')](0x1f4,_0x3252f9));}}return _0x3b8d62(_0x8b7c('0x3c'));});},'AcceptMessage':function(_0x4ccebb){var _0x50908c=this;return new Promise(function(_0x1c9058,_0x3119be){if(_0x4ccebb[_0x8b7c('0x3d')]&&_0x4ccebb[_0x8b7c('0x3d')]['id']){if(_0x56e02b[_0x8b7c('0x3e')][_0x4ccebb[_0x8b7c('0x3d')]['id']]){_0x56e02b[_0x8b7c('0x3e')][_0x4ccebb[_0x8b7c('0x3d')]['id']][_0x8b7c('0x3f')]=![];_0x56e02b[_0x8b7c('0x3e')][_0x4ccebb[_0x8b7c('0x3d')]['id']][_0x8b7c('0x40')]=undefined;}}if(_0x4ccebb['message']&&_0x4ccebb[_0x8b7c('0x17')]['id']){try{var _0x21a690=getId(_0x4ccebb[_0x8b7c('0x16')],_0x4ccebb[_0x8b7c('0x17')]?_0x4ccebb[_0x8b7c('0x17')]['id']:0x0,_0x4ccebb['interaction']?_0x4ccebb['interaction']['id']:0x0);if(_0x56e02b[_0x8b7c('0x15')][_0x21a690]){_0x56e02b[_0x8b7c('0x15')][_0x21a690][_0x8b7c('0x38')](_0x8b7c('0x41'));if(rpc[_0x4ccebb[_0x8b7c('0x16')]+_0x8b7c('0x42')]){rpc[_0x4ccebb['channel']+'QueueReport'][_0x8b7c('0x43')](_0x21a690,{'UserId':_0x4ccebb[_0x8b7c('0x17')]['UserId']})[_0x8b7c('0x44')](function(_0x18dea0){logger[_0x8b7c('0x3b')]('error\x20update\x20queue\x20report');});}}return _0x1c9058({'code':0xc8,'message':_0x4ccebb});}catch(_0x4c1a90){logger[_0x8b7c('0x3b')](_0x4c1a90['stack']);return _0x3119be(_0x50908c[_0x8b7c('0x3b')](0x1f4,_0x4c1a90));}}logger[_0x8b7c('0x3b')](_0x8b7c('0x45'));return _0x3119be(_0x50908c[_0x8b7c('0x3b')](0x1f4,_0x8b7c('0x45')));});},'RejectMessage':function(_0x39219c){var _0x29aec5=this;return new Promise(function(_0x52e6f4,_0x6179ec){if(_0x39219c[_0x8b7c('0x3d')]&&_0x39219c[_0x8b7c('0x3d')]['id']){try{if(_0x56e02b[_0x8b7c('0x3e')][_0x39219c['agent']['id']]){_0x56e02b['agents'][_0x39219c['agent']['id']][_0x8b7c('0x3f')]=![];_0x56e02b[_0x8b7c('0x3e')][_0x39219c[_0x8b7c('0x3d')]['id']]['busyQueue']=undefined;}return _0x52e6f4({'code':0xc8,'message':_0x39219c});}catch(_0x190192){logger[_0x8b7c('0x3b')](_0x190192[_0x8b7c('0x46')]);return _0x6179ec(_0x29aec5[_0x8b7c('0x3b')](0x1f4,_0x190192));}}logger[_0x8b7c('0x3b')](_0x8b7c('0x45'));return _0x6179ec(_0x29aec5['error'](0x1f4,_0x8b7c('0x45')));});},'AbandonInteraction':function(_0x34413b){var _0x2e2ea8=this;return new Promise(function(_0x5d9307,_0x2c85c1){if(_0x34413b[_0x8b7c('0x16')]&&_0x34413b[_0x8b7c('0x18')]&&_0x34413b[_0x8b7c('0x18')]['id']){try{var _0x4e4a4a=getId(_0x34413b['channel'],_0x34413b[_0x8b7c('0x17')]?_0x34413b[_0x8b7c('0x17')]['id']:0x0,_0x34413b['interaction']?_0x34413b[_0x8b7c('0x18')]['id']:0x0);if(_0x56e02b[_0x8b7c('0x15')][_0x4e4a4a]){_0x56e02b[_0x8b7c('0x15')][_0x4e4a4a]['emit'](_0x8b7c('0x41'));}return _0x5d9307({'code':0xc8,'message':_0x34413b});}catch(_0x119110){logger[_0x8b7c('0x3b')](_0x119110[_0x8b7c('0x46')]);return _0x2c85c1(_0x2e2ea8[_0x8b7c('0x3b')](0x1f4,_0x119110));}}logger[_0x8b7c('0x3b')]('message\x20is\x20empty');return _0x2c85c1(_0x2e2ea8['error'](0x1f4,_0x8b7c('0x45')));});},'AgentCapacity':function(_0xea8953){var _0x4f8828=this;return new Promise(function(_0x539241,_0x4b67b5){if(_0x56e02b[_0x8b7c('0x3e')]['hasOwnProperty'](_0xea8953['id'])){for(var _0x559b98 in _0xea8953[_0x8b7c('0x47')]){if(_0xea8953['capacity'][_0x8b7c('0x48')](_0x559b98)){if(_0x56e02b[_0x8b7c('0x3e')][_0xea8953['id']][_0x8b7c('0x48')](_0x559b98+_0x8b7c('0x49'))){_0x56e02b[_0x8b7c('0x3e')][_0xea8953['id']][_0x559b98+'CurrentCapacity']=parseInt(_0xea8953[_0x8b7c('0x47')][_0x559b98],0xa);}}}_0x56e02b[_0x8b7c('0x3e')][_0xea8953['id']][_0x8b7c('0x4a')]();return _0x539241({'code':0xc8,'message':_0x56e02b[_0x8b7c('0x3e')][_0xea8953['id']]});}else{return _0x4b67b5(_0x4f8828[_0x8b7c('0x3b')](0x1f4,_0x8b7c('0x4b')));}});},'Agents':function(_0x4458fd){return new Promise(function(_0x21e779,_0x3db1a6){var _0x2a50e3=_[_0x8b7c('0x4c')](_0x56e02b[_0x8b7c('0x3e')]);_0x21e779({'count':_0x2a50e3['length'],'rows':_0x2a50e3});});},'ChatQueues':function(_0x2c2403){return new Promise(function(_0x32d2e4,_0x57bb41){var _0x4ac7fe=[];for(var _0x5dbfc6 in _0x56e02b[_0x8b7c('0x4d')]){if(_0x56e02b[_0x8b7c('0x4d')][_0x8b7c('0x48')](_0x5dbfc6)){var _0x4b8075=_0x56e02b[_0x8b7c('0x4d')][_0x5dbfc6];var _0x275071={'id':_0x4b8075['id'],'available':_0x4b8075[_0x8b7c('0x4e')],'loggedIn':_0x4b8075[_0x8b7c('0x4f')],'name':_0x4b8075[_0x8b7c('0x50')],'paused':_0x4b8075['paused'],'waiting':_0x4b8075[_0x8b7c('0x51')]};_0x4ac7fe[_0x8b7c('0x25')](_0x275071);}}_0x32d2e4({'count':_0x4ac7fe[_0x8b7c('0x1b')],'rows':_0x4ac7fe});});},'MailQueues':function(_0x232b26){return new Promise(function(_0x263dde,_0x183a99){var _0x38ab9e=[];for(var _0x6b6b14 in _0x56e02b[_0x8b7c('0x52')]){if(_0x56e02b[_0x8b7c('0x52')][_0x8b7c('0x48')](_0x6b6b14)){var _0x4a3c56=_0x56e02b[_0x8b7c('0x52')][_0x6b6b14];var _0x474dce={'id':_0x4a3c56['id'],'available':_0x4a3c56[_0x8b7c('0x4e')],'loggedIn':_0x4a3c56[_0x8b7c('0x4f')],'name':_0x4a3c56[_0x8b7c('0x50')],'paused':_0x4a3c56[_0x8b7c('0x53')],'waiting':_0x4a3c56[_0x8b7c('0x51')]};_0x38ab9e[_0x8b7c('0x25')](_0x474dce);}}_0x263dde({'count':_0x38ab9e[_0x8b7c('0x1b')],'rows':_0x38ab9e});});},'OpenchannelQueues':function(_0xd1d677){return new Promise(function(_0x1e3817,_0x31b4c0){var _0x16a318=[];for(var _0x88ebe5 in _0x56e02b[_0x8b7c('0x54')]){if(_0x56e02b[_0x8b7c('0x54')][_0x8b7c('0x48')](_0x88ebe5)){var _0x2f28f9=_0x56e02b[_0x8b7c('0x54')][_0x88ebe5];var _0x13f3ae={'id':_0x2f28f9['id'],'available':_0x2f28f9['available'],'loggedIn':_0x2f28f9['loggedIn'],'name':_0x2f28f9['name'],'paused':_0x2f28f9[_0x8b7c('0x53')],'waiting':_0x2f28f9[_0x8b7c('0x51')]};_0x16a318[_0x8b7c('0x25')](_0x13f3ae);}}_0x1e3817({'count':_0x16a318[_0x8b7c('0x1b')],'rows':_0x16a318});});},'SmsQueues':function(_0x24a109){return new Promise(function(_0x4e8624,_0x473c17){var _0x2a3e3a=[];for(var _0x3475c2 in _0x56e02b['smsQueues']){if(_0x56e02b['smsQueues'][_0x8b7c('0x48')](_0x3475c2)){var _0x4e7f41=_0x56e02b['smsQueues'][_0x3475c2];var _0x11d609={'id':_0x4e7f41['id'],'available':_0x4e7f41[_0x8b7c('0x4e')],'loggedIn':_0x4e7f41[_0x8b7c('0x4f')],'name':_0x4e7f41[_0x8b7c('0x50')],'paused':_0x4e7f41['paused'],'waiting':_0x4e7f41[_0x8b7c('0x51')]};_0x2a3e3a[_0x8b7c('0x25')](_0x11d609);}}_0x4e8624({'count':_0x2a3e3a['length'],'rows':_0x2a3e3a});});},'FaxQueues':function(_0x18e9e8){return new Promise(function(_0x1a89c3,_0x57e0a6){var _0x429ebe=[];for(var _0x182632 in _0x56e02b[_0x8b7c('0x55')]){if(_0x56e02b[_0x8b7c('0x55')][_0x8b7c('0x48')](_0x182632)){var _0x5906b6=_0x56e02b['faxQueues'][_0x182632];var _0x368986={'id':_0x5906b6['id'],'available':_0x5906b6['available'],'loggedIn':_0x5906b6[_0x8b7c('0x4f')],'name':_0x5906b6[_0x8b7c('0x50')],'paused':_0x5906b6[_0x8b7c('0x53')],'waiting':_0x5906b6[_0x8b7c('0x51')]};_0x429ebe[_0x8b7c('0x25')](_0x368986);}}_0x1a89c3({'count':_0x429ebe[_0x8b7c('0x1b')],'rows':_0x429ebe});});},'WhatsappQueues':function(_0x3206f3){return new Promise(function(_0x25cd92,_0x3fd9ed){var _0x5a891a=[];for(var _0x3da940 in _0x56e02b[_0x8b7c('0x56')]){if(_0x56e02b[_0x8b7c('0x56')]['hasOwnProperty'](_0x3da940)){var _0x3a1c8f=_0x56e02b['whatsappQueues'][_0x3da940];var _0x5d3b4a={'id':_0x3a1c8f['id'],'available':_0x3a1c8f['available'],'loggedIn':_0x3a1c8f[_0x8b7c('0x4f')],'name':_0x3a1c8f[_0x8b7c('0x50')],'paused':_0x3a1c8f[_0x8b7c('0x53')],'waiting':_0x3a1c8f[_0x8b7c('0x51')]};_0x5a891a[_0x8b7c('0x25')](_0x5d3b4a);}}_0x25cd92({'count':_0x5a891a[_0x8b7c('0x1b')],'rows':_0x5a891a});});},'ChatQueuesWaitingInteractions':function(_0xba04f6){return new Promise(function(_0xc9a4a6,_0x329bd5){var _0x26e228=_[_0x8b7c('0x4c')](_0x56e02b[_0x8b7c('0x57')]);_0xc9a4a6({'count':_0x26e228[_0x8b7c('0x1b')],'rows':_0x26e228});});},'MailQueuesWaitingInteractions':function(_0x3f38b2){return new Promise(function(_0x13e718,_0x297e1f){var _0x56e623=_[_0x8b7c('0x4c')](_0x56e02b['mailQueuesWaitingInteractions']);_0x13e718({'count':_0x56e623[_0x8b7c('0x1b')],'rows':_0x56e623});});},'OpenchannelQueuesWaitingInteractions':function(_0x43bef2){return new Promise(function(_0x17db87,_0x3eef37){var _0x900b5c=_[_0x8b7c('0x4c')](_0x56e02b[_0x8b7c('0x58')]);_0x17db87({'count':_0x900b5c[_0x8b7c('0x1b')],'rows':_0x900b5c});});},'SmsQueuesWaitingInteractions':function(_0x2ad50f){return new Promise(function(_0x21e09d,_0x3b7e24){var _0x5b8d8f=_[_0x8b7c('0x4c')](_0x56e02b[_0x8b7c('0x59')]);_0x21e09d({'count':_0x5b8d8f['length'],'rows':_0x5b8d8f});});},'FaxQueuesWaitingInteractions':function(_0x966e37){return new Promise(function(_0x297224,_0x621699){var _0x39e24f=_[_0x8b7c('0x4c')](_0x56e02b['faxQueuesWaitingInteractions']);_0x297224({'count':_0x39e24f['length'],'rows':_0x39e24f});});},'WhatsappQueuesWaitingInteractions':function(_0x2687a0){return new Promise(function(_0x506ba7,_0x35694f){var _0x166d3c=_[_0x8b7c('0x4c')](_0x56e02b[_0x8b7c('0x5a')]);_0x506ba7({'count':_0x166d3c[_0x8b7c('0x1b')],'rows':_0x166d3c});});}};var _0x48c7dd=jayson['server'](_0x52cfe7)['http']();_0x48c7dd['on'](_0x8b7c('0x3b'),function(_0x2a534b){logger['error'](JSON[_0x8b7c('0x36')](_0x2a534b));return _0x5857ac(_0x2a534b);});_0x48c7dd['listen'](0x232c,_0x8b7c('0x5b'),function(){console[_0x8b7c('0x5c')](_0x8b7c('0x5d'),0x232c);return _0x19c63e(_0x8b7c('0x5e')+0x232c);});});};
\ No newline at end of file