Built motion from commit ddca4d0d.|2.5.47
[motion2.git] / server / services / routing / server / index.js
index 53c0409..289d137 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 _0xfa20=['available','loggedIn','name','paused','waiting','mailQueues','openchannelQueues','smsQueues','faxQueues','whatsappQueues','mailQueuesWaitingInteractions','openchannelQueuesWaitingInteractions','smsQueuesWaitingInteractions','faxQueuesWaitingInteractions','server','http','listen','127.0.0.1','log','Routing\x20RPC\x20server\x20listening\x20on\x20127.0.0.1:%d!','RPC\x20listening\x20on\x20port:','lodash','util','path','jayson/promise','bluebird','uuid','./applications/utils','../../../config/environment','../../../config/logger','routing','../rpc/openchannelQueueReport','../rpc/chatQueueReport','../rpc/smsQueueReport','../rpc/whatsappQueueReport','../lib/rule-engine','format','%s.%s.%s','IntervalId','isNil','Intervals','map','interval','rules','channel','message','interaction','applications','isArray','length','existsSync','join','app','.js','autoreply','appdata','split','push','slice','amazonlex','tag','TagId','tvox','getMustacheRender','account','notificationTemplate','ChatWebsiteId','ContactId','body','./interval','condition','./applications/','consequence','info','on\x20interval','\x20|\x20','error','Please\x20create\x20a\x20new\x20file\x20under','Applications\x20executed','stringify','complete','No\x20applications\x20to\x20execute','stack','routing\x20is\x20empty','agent','agents','busy','busyQueue','end','QueueReport','update','error\x20update\x20queue\x20report','message\x20is\x20empty','emit','hasOwnProperty','capacity','CurrentCapacity','agent\x20not\x20found','values','chatQueues'];(function(_0x1820fc,_0x547359){var _0x2b7a12=function(_0x4ee376){while(--_0x4ee376){_0x1820fc['push'](_0x1820fc['shift']());}};_0x2b7a12(++_0x547359);}(_0xfa20,0x141));var _0x0fa2=function(_0x1f6878,_0x1cea0b){_0x1f6878=_0x1f6878-0x0;var _0x87475e=_0xfa20[_0x1f6878];return _0x87475e;};'use strict';var _=require(_0x0fa2('0x0'));var util=require(_0x0fa2('0x1'));var path=require(_0x0fa2('0x2'));var fs=require('fs');var jayson=require(_0x0fa2('0x3'));var BPromise=require(_0x0fa2('0x4'));var uuid=require(_0x0fa2('0x5'));var utils=require(_0x0fa2('0x6'));var config=require(_0x0fa2('0x7'));var logger=require(_0x0fa2('0x8'))(_0x0fa2('0x9'));var rpc={'openchannelQueueReport':require(_0x0fa2('0xa')),'mailQueueReport':require('../rpc/mailQueueReport'),'chatQueueReport':require(_0x0fa2('0xb')),'smsQueueReport':require(_0x0fa2('0xc')),'faxQueueReport':require('../rpc/faxQueueReport'),'whatsappQueueReport':require(_0x0fa2('0xd'))};var RuleEngine=require(_0x0fa2('0xe'));function getId(_0x1f3223,_0x11979c,_0x28cc4d){return util[_0x0fa2('0xf')](_0x0fa2('0x10'),_0x1f3223,_0x11979c||0x0,_0x28cc4d||0x0);}function getIntervals(_0x373af0,_0x108f55){var _0x445a5d=[];if(!_['isNil'](_0x108f55[_0x0fa2('0x11')])&&!_[_0x0fa2('0x12')](_0x373af0[_0x108f55[_0x0fa2('0x11')]])&&!_[_0x0fa2('0x12')](_0x373af0[_0x108f55[_0x0fa2('0x11')]][_0x0fa2('0x13')])){_0x445a5d=_[_0x0fa2('0x14')](_0x373af0[_0x108f55[_0x0fa2('0x11')]]['Intervals'],_0x0fa2('0x15'));}else if(!_['isNil'](_0x108f55[_0x0fa2('0x15')])){_0x445a5d=[_0x108f55['interval']];}return _0x445a5d;}exports['listen']=function(_0x4a5ba2){_0x4a5ba2[_0x0fa2('0x16')]={};return new BPromise(function(_0x10dfed,_0x192e79){var _0x157b03={'Start':function(_0x4366a8){var _0x46e317=this;return new Promise(function(_0x162cb3,_0x3ac5ee){if(_0x4366a8){try{var _0x4ff410=[];var _0x3cf25f=getId(_0x4366a8[_0x0fa2('0x17')],_0x4366a8[_0x0fa2('0x18')]?_0x4366a8[_0x0fa2('0x18')]['id']:0x0,_0x4366a8[_0x0fa2('0x19')]?_0x4366a8[_0x0fa2('0x19')]['id']:0x0);if(_0x4366a8[_0x0fa2('0x1a')]&&_[_0x0fa2('0x1b')](_0x4366a8[_0x0fa2('0x1a')])&&_0x4366a8[_0x0fa2('0x1a')]['length']){for(var _0x495870=0x0;_0x495870<_0x4366a8[_0x0fa2('0x1a')][_0x0fa2('0x1c')];_0x495870+=0x1){var _0x47c72b=_0x4366a8[_0x0fa2('0x1a')][_0x495870];if(fs[_0x0fa2('0x1d')](path[_0x0fa2('0x1e')](__dirname,'applications',_0x47c72b[_0x0fa2('0x1f')]+_0x0fa2('0x20')))){var _0x5cbca0=[];switch(_0x47c72b[_0x0fa2('0x1f')]['toLowerCase']()){case _0x0fa2('0x21'):var _0x12d48b=_0x47c72b[_0x0fa2('0x22')][_0x0fa2('0x23')](',');if(_0x4366a8[_0x0fa2('0x17')]==='mail'){_0x5cbca0[_0x0fa2('0x24')](_0x12d48b[0x0]);_0x5cbca0[_0x0fa2('0x24')](_0x12d48b[0x1]);_0x5cbca0[_0x0fa2('0x24')](_0x12d48b[_0x0fa2('0x25')](0x2,_0x12d48b[_0x0fa2('0x1c')])[_0x0fa2('0x1e')](','));}else{_0x5cbca0[_0x0fa2('0x24')](_0x12d48b[0x0]);_0x5cbca0['push'](_0x12d48b[_0x0fa2('0x25')](0x1,_0x12d48b['length'])[_0x0fa2('0x1e')](','));}break;case'dialogflow':var _0x1a8832=_0x47c72b[_0x0fa2('0x22')][_0x0fa2('0x23')](',');_0x5cbca0[_0x0fa2('0x24')](_0x1a8832[0x0]);_0x5cbca0[_0x0fa2('0x24')](_0x1a8832[0x1]);_0x5cbca0[_0x0fa2('0x24')](_0x1a8832['slice'](0x2,_0x1a8832[_0x0fa2('0x1c')])['join'](','));break;case'dialogflowv2':var _0x12b59a=_0x47c72b[_0x0fa2('0x22')][_0x0fa2('0x23')](',');_0x5cbca0['push'](_0x12b59a[0x0]);_0x5cbca0['push'](_0x12b59a[0x1]);_0x5cbca0['push'](_0x12b59a[0x2]);_0x5cbca0['push'](_0x12b59a[0x3]);_0x5cbca0['push'](_0x12b59a[_0x0fa2('0x25')](0x4,_0x12b59a[_0x0fa2('0x1c')])[_0x0fa2('0x1e')](','));break;case _0x0fa2('0x26'):var _0x5168fe=_0x47c72b['appdata']['split'](',');_0x5cbca0[_0x0fa2('0x24')](_0x5168fe[0x0]);_0x5cbca0['push'](_0x5168fe[0x1]);_0x5cbca0[_0x0fa2('0x24')](_0x5168fe[0x2]);_0x5cbca0[_0x0fa2('0x24')](_0x5168fe[0x3]);_0x5cbca0[_0x0fa2('0x24')](_0x5168fe['slice'](0x4,_0x5168fe['length'])[_0x0fa2('0x1e')](','));break;case _0x0fa2('0x18'):_0x5cbca0[_0x0fa2('0x24')](_0x47c72b[_0x0fa2('0x22')]);break;case _0x0fa2('0x27'):_0x5cbca0[_0x0fa2('0x24')](_0x47c72b[_0x0fa2('0x28')]);_0x5cbca0[_0x0fa2('0x24')](_0x47c72b[_0x0fa2('0x22')]);break;case _0x0fa2('0x29'):var _0x41bdd0=utils[_0x0fa2('0x2a')](_0x4366a8[_0x0fa2('0x2b')][_0x0fa2('0x2c')],_0x4366a8);var _0x2a255b=_0x47c72b[_0x0fa2('0x22')][_0x0fa2('0x23')](',');_0x5cbca0[_0x0fa2('0x24')](_0x2a255b[0x0]);_0x5cbca0['push'](_0x2a255b[0x1]);_0x5cbca0['push'](_0x2a255b[0x2]);_0x5cbca0[_0x0fa2('0x24')](_0x2a255b[0x3]);_0x5cbca0[_0x0fa2('0x24')](_0x2a255b[0x4]);_0x5cbca0[_0x0fa2('0x24')](_0x2a255b[0x5]);_0x5cbca0[_0x0fa2('0x24')](_0x2a255b[0x6]);_0x5cbca0[_0x0fa2('0x24')](_0x2a255b[0x7]);_0x5cbca0[_0x0fa2('0x24')](_0x2a255b[0x8]);_0x5cbca0['push'](_0x2a255b[0x9]);_0x5cbca0[_0x0fa2('0x24')](_0x2a255b[0xa]);_0x5cbca0[_0x0fa2('0x24')](_0x4366a8[_0x0fa2('0x19')]['id']);_0x5cbca0[_0x0fa2('0x24')](_0x4366a8[_0x0fa2('0x18')]['id']);_0x5cbca0['push'](_0x47c72b[_0x0fa2('0x2d')]);_0x5cbca0[_0x0fa2('0x24')](_0x4366a8['interaction'][_0x0fa2('0x2e')]);_0x5cbca0[_0x0fa2('0x24')](_0x4366a8[_0x0fa2('0x2f')]['body']);_0x5cbca0['push'](_0x41bdd0);break;default:_0x5cbca0=_['isNil'](_0x47c72b['appdata'])?[]:_0x47c72b[_0x0fa2('0x22')][_0x0fa2('0x23')](',');}var _0x43dc89={'id':util['format']('%s:%s:%s',_0x3cf25f,_0x47c72b['id'],_0x47c72b[_0x0fa2('0x1f')]),'condition':require(_0x0fa2('0x30'))[_0x0fa2('0x31')](_0x3cf25f,getIntervals(_0x4a5ba2['intervals'],_0x47c72b),_0x4a5ba2),'consequence':require(_0x0fa2('0x32')+_0x47c72b[_0x0fa2('0x1f')])[_0x0fa2('0x33')](_0x3cf25f,_0x5cbca0,_0x4a5ba2,_0x4366a8),'p':_0x47c72b['priority']||0x0};logger[_0x0fa2('0x34')]('Push\x20new\x20rule',_0x43dc89['id'],_0x0fa2('0x35'),getIntervals(_0x4a5ba2['intervals'],_0x47c72b)['join'](_0x0fa2('0x36')));_0x4ff410[_0x0fa2('0x24')](_0x43dc89);}else{logger[_0x0fa2('0x37')](_0x0fa2('0x38'),path['join'](__dirname,'applications',_0x47c72b[_0x0fa2('0x1f')]+'.js'));}}_0x4a5ba2[_0x0fa2('0x16')][_0x3cf25f]=new RuleEngine(_0x4ff410);_0x4a5ba2[_0x0fa2('0x16')][_0x3cf25f]['execute'](_0x4366a8,function(_0x18861a){logger[_0x0fa2('0x34')](_0x0fa2('0x39'),JSON[_0x0fa2('0x3a')](_0x18861a['matchPath']));if(_0x4a5ba2['rules'][_0x3cf25f]){_0x4a5ba2[_0x0fa2('0x16')][_0x3cf25f]['emit'](_0x0fa2('0x3b'));}});return _0x162cb3({'code':0xc8,'message':_0x4366a8});}else{logger[_0x0fa2('0x34')](_0x0fa2('0x3c'));return _0x162cb3({'code':0xc8,'message':_0x4366a8});}}catch(_0x5ab4b7){logger[_0x0fa2('0x37')](_0x5ab4b7[_0x0fa2('0x3d')]);return _0x3ac5ee(_0x46e317[_0x0fa2('0x37')](0x1f4,_0x5ab4b7));}}return _0x3ac5ee(_0x0fa2('0x3e'));});},'AcceptMessage':function(_0x317e9c){var _0x2f4063=this;return new Promise(function(_0x2bd59c,_0xd8e181){if(_0x317e9c[_0x0fa2('0x3f')]&&_0x317e9c['agent']['id']){if(_0x4a5ba2[_0x0fa2('0x40')][_0x317e9c[_0x0fa2('0x3f')]['id']]){_0x4a5ba2[_0x0fa2('0x40')][_0x317e9c['agent']['id']][_0x0fa2('0x41')]=![];_0x4a5ba2[_0x0fa2('0x40')][_0x317e9c['agent']['id']][_0x0fa2('0x42')]=undefined;}}if(_0x317e9c['message']&&_0x317e9c[_0x0fa2('0x18')]['id']){try{var _0xff66fb=getId(_0x317e9c[_0x0fa2('0x17')],_0x317e9c[_0x0fa2('0x18')]?_0x317e9c[_0x0fa2('0x18')]['id']:0x0,_0x317e9c[_0x0fa2('0x19')]?_0x317e9c[_0x0fa2('0x19')]['id']:0x0);if(_0x4a5ba2[_0x0fa2('0x16')][_0xff66fb]){_0x4a5ba2[_0x0fa2('0x16')][_0xff66fb]['emit'](_0x0fa2('0x43'));if(rpc[_0x317e9c['channel']+_0x0fa2('0x44')]){rpc[_0x317e9c[_0x0fa2('0x17')]+_0x0fa2('0x44')][_0x0fa2('0x45')](_0xff66fb,{'UserId':_0x317e9c[_0x0fa2('0x18')]['UserId']})['catch'](function(_0x578e86){logger[_0x0fa2('0x37')](_0x0fa2('0x46'));});}}return _0x2bd59c({'code':0xc8,'message':_0x317e9c});}catch(_0x479d48){logger['error'](_0x479d48[_0x0fa2('0x3d')]);return _0xd8e181(_0x2f4063['error'](0x1f4,_0x479d48));}}logger[_0x0fa2('0x37')](_0x0fa2('0x47'));return _0xd8e181(_0x2f4063['error'](0x1f4,_0x0fa2('0x47')));});},'RejectMessage':function(_0x454cca){var _0x2dc2a5=this;return new Promise(function(_0x151c57,_0x1c8fb1){if(_0x454cca[_0x0fa2('0x3f')]&&_0x454cca[_0x0fa2('0x3f')]['id']){try{if(_0x4a5ba2[_0x0fa2('0x40')][_0x454cca[_0x0fa2('0x3f')]['id']]){_0x4a5ba2[_0x0fa2('0x40')][_0x454cca['agent']['id']][_0x0fa2('0x41')]=![];_0x4a5ba2[_0x0fa2('0x40')][_0x454cca[_0x0fa2('0x3f')]['id']][_0x0fa2('0x42')]=undefined;}return _0x151c57({'code':0xc8,'message':_0x454cca});}catch(_0x8dfbe5){logger[_0x0fa2('0x37')](_0x8dfbe5[_0x0fa2('0x3d')]);return _0x1c8fb1(_0x2dc2a5[_0x0fa2('0x37')](0x1f4,_0x8dfbe5));}}logger['error'](_0x0fa2('0x47'));return _0x1c8fb1(_0x2dc2a5['error'](0x1f4,_0x0fa2('0x47')));});},'AbandonInteraction':function(_0x33fe17){var _0x1b5a9d=this;return new Promise(function(_0xd2c3ed,_0x2d1baf){if(_0x33fe17['channel']&&_0x33fe17[_0x0fa2('0x19')]&&_0x33fe17['interaction']['id']){try{var _0x209bc4=getId(_0x33fe17[_0x0fa2('0x17')],_0x33fe17[_0x0fa2('0x18')]?_0x33fe17[_0x0fa2('0x18')]['id']:0x0,_0x33fe17[_0x0fa2('0x19')]?_0x33fe17['interaction']['id']:0x0);if(_0x4a5ba2[_0x0fa2('0x16')][_0x209bc4]){_0x4a5ba2[_0x0fa2('0x16')][_0x209bc4][_0x0fa2('0x48')](_0x0fa2('0x43'));}return _0xd2c3ed({'code':0xc8,'message':_0x33fe17});}catch(_0x23b86b){logger[_0x0fa2('0x37')](_0x23b86b['stack']);return _0x2d1baf(_0x1b5a9d[_0x0fa2('0x37')](0x1f4,_0x23b86b));}}logger[_0x0fa2('0x37')](_0x0fa2('0x47'));return _0x2d1baf(_0x1b5a9d[_0x0fa2('0x37')](0x1f4,_0x0fa2('0x47')));});},'AgentCapacity':function(_0x1535dc){var _0x1ba264=this;return new Promise(function(_0x7bfb85,_0x256dbe){if(_0x4a5ba2[_0x0fa2('0x40')][_0x0fa2('0x49')](_0x1535dc['id'])){for(var _0x4cdb2b in _0x1535dc['capacity']){if(_0x1535dc[_0x0fa2('0x4a')][_0x0fa2('0x49')](_0x4cdb2b)){if(_0x4a5ba2[_0x0fa2('0x40')][_0x1535dc['id']]['hasOwnProperty'](_0x4cdb2b+_0x0fa2('0x4b'))){_0x4a5ba2[_0x0fa2('0x40')][_0x1535dc['id']][_0x4cdb2b+_0x0fa2('0x4b')]=parseInt(_0x1535dc['capacity'][_0x4cdb2b],0xa);}}}_0x4a5ba2[_0x0fa2('0x40')][_0x1535dc['id']]['updateRealtime']();return _0x7bfb85({'code':0xc8,'message':_0x4a5ba2['agents'][_0x1535dc['id']]});}else{return _0x256dbe(_0x1ba264['error'](0x1f4,_0x0fa2('0x4c')));}});},'Agents':function(_0x24a1d6){return new Promise(function(_0x3b7475,_0x47687d){var _0x58c0ba=_[_0x0fa2('0x4d')](_0x4a5ba2[_0x0fa2('0x40')]);_0x3b7475({'count':_0x58c0ba[_0x0fa2('0x1c')],'rows':_0x58c0ba});});},'ChatQueues':function(_0xcb45ee){return new Promise(function(_0x56a6f3,_0x2f4f0e){var _0x16ba1c=[];for(var _0x39a06e in _0x4a5ba2[_0x0fa2('0x4e')]){if(_0x4a5ba2['chatQueues'][_0x0fa2('0x49')](_0x39a06e)){var _0x33d9bd=_0x4a5ba2[_0x0fa2('0x4e')][_0x39a06e];var _0x5de738={'id':_0x33d9bd['id'],'available':_0x33d9bd[_0x0fa2('0x4f')],'loggedIn':_0x33d9bd[_0x0fa2('0x50')],'name':_0x33d9bd[_0x0fa2('0x51')],'paused':_0x33d9bd[_0x0fa2('0x52')],'waiting':_0x33d9bd[_0x0fa2('0x53')]};_0x16ba1c[_0x0fa2('0x24')](_0x5de738);}}_0x56a6f3({'count':_0x16ba1c[_0x0fa2('0x1c')],'rows':_0x16ba1c});});},'MailQueues':function(_0x180581){return new Promise(function(_0x464254,_0x4dd2fe){var _0x58cb47=[];for(var _0x474404 in _0x4a5ba2[_0x0fa2('0x54')]){if(_0x4a5ba2['mailQueues'][_0x0fa2('0x49')](_0x474404)){var _0x47028c=_0x4a5ba2[_0x0fa2('0x54')][_0x474404];var _0x54aab4={'id':_0x47028c['id'],'available':_0x47028c[_0x0fa2('0x4f')],'loggedIn':_0x47028c[_0x0fa2('0x50')],'name':_0x47028c[_0x0fa2('0x51')],'paused':_0x47028c['paused'],'waiting':_0x47028c['waiting']};_0x58cb47['push'](_0x54aab4);}}_0x464254({'count':_0x58cb47['length'],'rows':_0x58cb47});});},'OpenchannelQueues':function(_0x37fe4f){return new Promise(function(_0x4ae16b,_0xb521f3){var _0x42a627=[];for(var _0x421e07 in _0x4a5ba2[_0x0fa2('0x55')]){if(_0x4a5ba2[_0x0fa2('0x55')]['hasOwnProperty'](_0x421e07)){var _0x45737a=_0x4a5ba2[_0x0fa2('0x55')][_0x421e07];var _0x4e81e1={'id':_0x45737a['id'],'available':_0x45737a['available'],'loggedIn':_0x45737a[_0x0fa2('0x50')],'name':_0x45737a['name'],'paused':_0x45737a[_0x0fa2('0x52')],'waiting':_0x45737a[_0x0fa2('0x53')]};_0x42a627[_0x0fa2('0x24')](_0x4e81e1);}}_0x4ae16b({'count':_0x42a627['length'],'rows':_0x42a627});});},'SmsQueues':function(_0x2d0c01){return new Promise(function(_0x346f1c,_0x1c1306){var _0x2f36b0=[];for(var _0x539d92 in _0x4a5ba2[_0x0fa2('0x56')]){if(_0x4a5ba2['smsQueues']['hasOwnProperty'](_0x539d92)){var _0x19a740=_0x4a5ba2['smsQueues'][_0x539d92];var _0x338af0={'id':_0x19a740['id'],'available':_0x19a740[_0x0fa2('0x4f')],'loggedIn':_0x19a740[_0x0fa2('0x50')],'name':_0x19a740['name'],'paused':_0x19a740[_0x0fa2('0x52')],'waiting':_0x19a740[_0x0fa2('0x53')]};_0x2f36b0[_0x0fa2('0x24')](_0x338af0);}}_0x346f1c({'count':_0x2f36b0[_0x0fa2('0x1c')],'rows':_0x2f36b0});});},'FaxQueues':function(_0x435f8c){return new Promise(function(_0x34c27c,_0x1bfe9e){var _0x1d14c0=[];for(var _0x4f0e54 in _0x4a5ba2[_0x0fa2('0x57')]){if(_0x4a5ba2[_0x0fa2('0x57')]['hasOwnProperty'](_0x4f0e54)){var _0x500ec7=_0x4a5ba2[_0x0fa2('0x57')][_0x4f0e54];var _0x3a1db9={'id':_0x500ec7['id'],'available':_0x500ec7[_0x0fa2('0x4f')],'loggedIn':_0x500ec7[_0x0fa2('0x50')],'name':_0x500ec7[_0x0fa2('0x51')],'paused':_0x500ec7[_0x0fa2('0x52')],'waiting':_0x500ec7[_0x0fa2('0x53')]};_0x1d14c0[_0x0fa2('0x24')](_0x3a1db9);}}_0x34c27c({'count':_0x1d14c0[_0x0fa2('0x1c')],'rows':_0x1d14c0});});},'WhatsappQueues':function(_0x1e79b1){return new Promise(function(_0xd2140,_0x3a6a1a){var _0x8682ac=[];for(var _0x1b1db4 in _0x4a5ba2[_0x0fa2('0x58')]){if(_0x4a5ba2[_0x0fa2('0x58')]['hasOwnProperty'](_0x1b1db4)){var _0x41760d=_0x4a5ba2[_0x0fa2('0x58')][_0x1b1db4];var _0x5efa1e={'id':_0x41760d['id'],'available':_0x41760d[_0x0fa2('0x4f')],'loggedIn':_0x41760d[_0x0fa2('0x50')],'name':_0x41760d[_0x0fa2('0x51')],'paused':_0x41760d[_0x0fa2('0x52')],'waiting':_0x41760d[_0x0fa2('0x53')]};_0x8682ac[_0x0fa2('0x24')](_0x5efa1e);}}_0xd2140({'count':_0x8682ac[_0x0fa2('0x1c')],'rows':_0x8682ac});});},'ChatQueuesWaitingInteractions':function(_0x2c64d0){return new Promise(function(_0x32cbd3,_0x57d828){var _0x1deea3=_['values'](_0x4a5ba2['chatQueuesWaitingInteractions']);_0x32cbd3({'count':_0x1deea3[_0x0fa2('0x1c')],'rows':_0x1deea3});});},'MailQueuesWaitingInteractions':function(_0x58787e){return new Promise(function(_0x15d8a0,_0x2088ca){var _0x3dfc6f=_[_0x0fa2('0x4d')](_0x4a5ba2[_0x0fa2('0x59')]);_0x15d8a0({'count':_0x3dfc6f['length'],'rows':_0x3dfc6f});});},'OpenchannelQueuesWaitingInteractions':function(_0x26f7a8){return new Promise(function(_0x34345f,_0x4d578f){var _0x189be8=_[_0x0fa2('0x4d')](_0x4a5ba2[_0x0fa2('0x5a')]);_0x34345f({'count':_0x189be8[_0x0fa2('0x1c')],'rows':_0x189be8});});},'SmsQueuesWaitingInteractions':function(_0x4c00a0){return new Promise(function(_0x4345e0,_0xf7365){var _0x1cacc2=_[_0x0fa2('0x4d')](_0x4a5ba2[_0x0fa2('0x5b')]);_0x4345e0({'count':_0x1cacc2[_0x0fa2('0x1c')],'rows':_0x1cacc2});});},'FaxQueuesWaitingInteractions':function(_0x2ccde5){return new Promise(function(_0x371210,_0x5c19df){var _0x23c220=_[_0x0fa2('0x4d')](_0x4a5ba2[_0x0fa2('0x5c')]);_0x371210({'count':_0x23c220[_0x0fa2('0x1c')],'rows':_0x23c220});});},'WhatsappQueuesWaitingInteractions':function(_0x44ddda){return new Promise(function(_0x8d1984,_0x4f3817){var _0x110e02=_[_0x0fa2('0x4d')](_0x4a5ba2['whatsappQueuesWaitingInteractions']);_0x8d1984({'count':_0x110e02[_0x0fa2('0x1c')],'rows':_0x110e02});});}};var _0x5d703b=jayson[_0x0fa2('0x5d')](_0x157b03)[_0x0fa2('0x5e')]();_0x5d703b['on'](_0x0fa2('0x37'),function(_0x44d695){logger[_0x0fa2('0x37')](JSON['stringify'](_0x44d695));return _0x192e79(_0x44d695);});_0x5d703b[_0x0fa2('0x5f')](0x232c,_0x0fa2('0x60'),function(){console[_0x0fa2('0x61')](_0x0fa2('0x62'),0x232c);return _0x10dfed(_0x0fa2('0x63')+0x232c);});});};
\ No newline at end of file