Built motion from commit a679711e.|2.6.15
[motion2.git] / server / services / routing / server / index.js
index 77d73e1..b66f1fc 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x2494=['emit','No\x20applications\x20to\x20execute','stack','routing\x20is\x20empty','agent','agents','busy','busyQueue','QueueReport','update','UserId','message\x20is\x20empty','hasOwnProperty','CurrentCapacity','capacity','agent\x20not\x20found','values','chatQueues','available','loggedIn','name','paused','waiting','mailQueues','openchannelQueues','smsQueues','faxQueues','whatsappQueues','chatQueuesWaitingInteractions','mailQueuesWaitingInteractions','openchannelQueuesWaitingInteractions','smsQueuesWaitingInteractions','faxQueuesWaitingInteractions','whatsappQueuesWaitingInteractions','server','http','127.0.0.1','log','Routing\x20RPC\x20server\x20listening\x20on\x20127.0.0.1:%d!','RPC\x20listening\x20on\x20port:','lodash','path','jayson/promise','bluebird','uuid','../../../config/environment','../../../config/logger','../rpc/mailQueueReport','../rpc/smsQueueReport','../rpc/faxQueueReport','../rpc/whatsappQueueReport','isNil','IntervalId','Intervals','interval','listen','rules','message','interaction','applications','isArray','length','join','app','.js','toLowerCase','autoreply','appdata','split','channel','mail','push','slice','dialogflowv2','tag','format','%s:%s:%s','./interval','condition','intervals','./applications/','info','Push\x20new\x20rule','on\x20interval','\x20|\x20','error','Please\x20create\x20a\x20new\x20file\x20under','Applications\x20executed','stringify','matchPath'];(function(_0x134dc9,_0x4a9bdc){var _0x3967e3=function(_0x21a5ce){while(--_0x21a5ce){_0x134dc9['push'](_0x134dc9['shift']());}};_0x3967e3(++_0x4a9bdc);}(_0x2494,0x82));var _0x4249=function(_0x3c4b71,_0x362275){_0x3c4b71=_0x3c4b71-0x0;var _0xd7198c=_0x2494[_0x3c4b71];return _0xd7198c;};'use strict';var _=require(_0x4249('0x0'));var util=require('util');var path=require(_0x4249('0x1'));var fs=require('fs');var jayson=require(_0x4249('0x2'));var BPromise=require(_0x4249('0x3'));var uuid=require(_0x4249('0x4'));var config=require(_0x4249('0x5'));var logger=require(_0x4249('0x6'))('routing');var rpc={'openchannelQueueReport':require('../rpc/openchannelQueueReport'),'mailQueueReport':require(_0x4249('0x7')),'chatQueueReport':require('../rpc/chatQueueReport'),'smsQueueReport':require(_0x4249('0x8')),'faxQueueReport':require(_0x4249('0x9')),'whatsappQueueReport':require(_0x4249('0xa'))};var RuleEngine=require('../lib/rule-engine');function getId(_0x326336,_0x2b7934,_0x21060d){return util['format']('%s.%s.%s',_0x326336,_0x2b7934||0x0,_0x21060d||0x0);}function getIntervals(_0x3efaa6,_0x44ca3d){var _0x46a08b=[];if(!_[_0x4249('0xb')](_0x44ca3d[_0x4249('0xc')])&&!_[_0x4249('0xb')](_0x3efaa6[_0x44ca3d[_0x4249('0xc')]])&&!_['isNil'](_0x3efaa6[_0x44ca3d['IntervalId']][_0x4249('0xd')])){_0x46a08b=_['map'](_0x3efaa6[_0x44ca3d[_0x4249('0xc')]][_0x4249('0xd')],'interval');}else if(!_[_0x4249('0xb')](_0x44ca3d[_0x4249('0xe')])){_0x46a08b=[_0x44ca3d['interval']];}return _0x46a08b;}exports[_0x4249('0xf')]=function(_0x40ce9c){_0x40ce9c[_0x4249('0x10')]={};return new BPromise(function(_0x3a514b,_0x2499ff){var _0x27469a={'Start':function(_0x49eede){var _0x7da5cf=this;return new Promise(function(_0x32d170,_0x58ebd9){if(_0x49eede){try{var _0x1a455=[];var _0x560d78=getId(_0x49eede['channel'],_0x49eede['message']?_0x49eede[_0x4249('0x11')]['id']:0x0,_0x49eede[_0x4249('0x12')]?_0x49eede[_0x4249('0x12')]['id']:0x0);if(_0x49eede[_0x4249('0x13')]&&_[_0x4249('0x14')](_0x49eede['applications'])&&_0x49eede['applications'][_0x4249('0x15')]){for(var _0x1333e1=0x0;_0x1333e1<_0x49eede[_0x4249('0x13')]['length'];_0x1333e1+=0x1){var _0x3e26ea=_0x49eede[_0x4249('0x13')][_0x1333e1];if(fs['existsSync'](path[_0x4249('0x16')](__dirname,'applications',_0x3e26ea[_0x4249('0x17')]+_0x4249('0x18')))){var _0x34755e=[];switch(_0x3e26ea[_0x4249('0x17')][_0x4249('0x19')]()){case _0x4249('0x1a'):var _0x23c9f0=_0x3e26ea[_0x4249('0x1b')][_0x4249('0x1c')](',');if(_0x49eede[_0x4249('0x1d')]===_0x4249('0x1e')){_0x34755e[_0x4249('0x1f')](_0x23c9f0[0x0]);_0x34755e[_0x4249('0x1f')](_0x23c9f0[0x1]);_0x34755e[_0x4249('0x1f')](_0x23c9f0[_0x4249('0x20')](0x2,_0x23c9f0[_0x4249('0x15')])[_0x4249('0x16')](','));}else{_0x34755e[_0x4249('0x1f')](_0x23c9f0[0x0]);_0x34755e[_0x4249('0x1f')](_0x23c9f0[_0x4249('0x20')](0x1,_0x23c9f0[_0x4249('0x15')])[_0x4249('0x16')](','));}break;case'dialogflow':var _0x242162=_0x3e26ea[_0x4249('0x1b')][_0x4249('0x1c')](',');_0x34755e[_0x4249('0x1f')](_0x242162[0x0]);_0x34755e['push'](_0x242162[0x1]);_0x34755e[_0x4249('0x1f')](_0x242162['slice'](0x2,_0x242162[_0x4249('0x15')])[_0x4249('0x16')](','));break;case _0x4249('0x21'):var _0x4eba42=_0x3e26ea[_0x4249('0x1b')][_0x4249('0x1c')](',');_0x34755e['push'](_0x4eba42[0x0]);_0x34755e[_0x4249('0x1f')](_0x4eba42[0x1]);_0x34755e['push'](_0x4eba42[0x2]);_0x34755e['push'](_0x4eba42[0x3]);_0x34755e['push'](_0x4eba42['slice'](0x4,_0x4eba42[_0x4249('0x15')])[_0x4249('0x16')](','));break;case'amazonlex':var _0x168194=_0x3e26ea[_0x4249('0x1b')]['split'](',');_0x34755e[_0x4249('0x1f')](_0x168194[0x0]);_0x34755e['push'](_0x168194[0x1]);_0x34755e['push'](_0x168194[0x2]);_0x34755e[_0x4249('0x1f')](_0x168194[0x3]);_0x34755e[_0x4249('0x1f')](_0x168194[_0x4249('0x20')](0x4,_0x168194['length'])[_0x4249('0x16')](','));break;case'message':_0x34755e['push'](_0x3e26ea[_0x4249('0x1b')]);break;case _0x4249('0x22'):_0x34755e['push'](_0x3e26ea['TagId']);_0x34755e[_0x4249('0x1f')](_0x3e26ea[_0x4249('0x1b')]);break;default:_0x34755e=_[_0x4249('0xb')](_0x3e26ea[_0x4249('0x1b')])?[]:_0x3e26ea[_0x4249('0x1b')][_0x4249('0x1c')](',');}var _0x12cc53={'id':util[_0x4249('0x23')](_0x4249('0x24'),_0x560d78,_0x3e26ea['id'],_0x3e26ea[_0x4249('0x17')]),'condition':require(_0x4249('0x25'))[_0x4249('0x26')](_0x560d78,getIntervals(_0x40ce9c[_0x4249('0x27')],_0x3e26ea),_0x40ce9c),'consequence':require(_0x4249('0x28')+_0x3e26ea[_0x4249('0x17')])['consequence'](_0x560d78,_0x34755e,_0x40ce9c,_0x49eede),'p':_0x3e26ea['priority']||0x0};logger[_0x4249('0x29')](_0x4249('0x2a'),_0x12cc53['id'],_0x4249('0x2b'),getIntervals(_0x40ce9c[_0x4249('0x27')],_0x3e26ea)['join'](_0x4249('0x2c')));_0x1a455[_0x4249('0x1f')](_0x12cc53);}else{logger[_0x4249('0x2d')](_0x4249('0x2e'),path[_0x4249('0x16')](__dirname,_0x4249('0x13'),_0x3e26ea[_0x4249('0x17')]+_0x4249('0x18')));}}_0x40ce9c[_0x4249('0x10')][_0x560d78]=new RuleEngine(_0x1a455);_0x40ce9c[_0x4249('0x10')][_0x560d78]['execute'](_0x49eede,function(_0x49b817){logger['info'](_0x4249('0x2f'),JSON[_0x4249('0x30')](_0x49b817[_0x4249('0x31')]));if(_0x40ce9c[_0x4249('0x10')][_0x560d78]){_0x40ce9c['rules'][_0x560d78][_0x4249('0x32')]('complete');}});return _0x32d170({'code':0xc8,'message':_0x49eede});}else{logger[_0x4249('0x29')](_0x4249('0x33'));return _0x32d170({'code':0xc8,'message':_0x49eede});}}catch(_0x515df6){logger[_0x4249('0x2d')](_0x515df6[_0x4249('0x34')]);return _0x58ebd9(_0x7da5cf[_0x4249('0x2d')](0x1f4,_0x515df6));}}return _0x58ebd9(_0x4249('0x35'));});},'AcceptMessage':function(_0x3b9a63){var _0x872aaa=this;return new Promise(function(_0x823fa5,_0x1fd1cf){if(_0x3b9a63[_0x4249('0x36')]&&_0x3b9a63[_0x4249('0x36')]['id']){if(_0x40ce9c['agents'][_0x3b9a63[_0x4249('0x36')]['id']]){_0x40ce9c[_0x4249('0x37')][_0x3b9a63[_0x4249('0x36')]['id']][_0x4249('0x38')]=![];_0x40ce9c[_0x4249('0x37')][_0x3b9a63[_0x4249('0x36')]['id']][_0x4249('0x39')]=undefined;}}if(_0x3b9a63[_0x4249('0x11')]&&_0x3b9a63[_0x4249('0x11')]['id']){try{var _0x1b94ca=getId(_0x3b9a63[_0x4249('0x1d')],_0x3b9a63['message']?_0x3b9a63[_0x4249('0x11')]['id']:0x0,_0x3b9a63[_0x4249('0x12')]?_0x3b9a63[_0x4249('0x12')]['id']:0x0);if(_0x40ce9c[_0x4249('0x10')][_0x1b94ca]){_0x40ce9c[_0x4249('0x10')][_0x1b94ca][_0x4249('0x32')]('end');if(rpc[_0x3b9a63[_0x4249('0x1d')]+_0x4249('0x3a')]){rpc[_0x3b9a63['channel']+_0x4249('0x3a')][_0x4249('0x3b')](_0x1b94ca,{'UserId':_0x3b9a63['message'][_0x4249('0x3c')]})['catch'](function(_0x4da6b7){logger[_0x4249('0x2d')]('error\x20update\x20queue\x20report');});}}return _0x823fa5({'code':0xc8,'message':_0x3b9a63});}catch(_0x3f5ddd){logger[_0x4249('0x2d')](_0x3f5ddd[_0x4249('0x34')]);return _0x1fd1cf(_0x872aaa[_0x4249('0x2d')](0x1f4,_0x3f5ddd));}}logger['error'](_0x4249('0x3d'));return _0x1fd1cf(_0x872aaa[_0x4249('0x2d')](0x1f4,'message\x20is\x20empty'));});},'RejectMessage':function(_0x28ad9b){var _0x3c9b35=this;return new Promise(function(_0x368b68,_0x416e1d){if(_0x28ad9b[_0x4249('0x36')]&&_0x28ad9b[_0x4249('0x36')]['id']){try{if(_0x40ce9c[_0x4249('0x37')][_0x28ad9b[_0x4249('0x36')]['id']]){_0x40ce9c[_0x4249('0x37')][_0x28ad9b[_0x4249('0x36')]['id']][_0x4249('0x38')]=![];_0x40ce9c['agents'][_0x28ad9b[_0x4249('0x36')]['id']][_0x4249('0x39')]=undefined;}return _0x368b68({'code':0xc8,'message':_0x28ad9b});}catch(_0x1787f6){logger[_0x4249('0x2d')](_0x1787f6['stack']);return _0x416e1d(_0x3c9b35['error'](0x1f4,_0x1787f6));}}logger[_0x4249('0x2d')](_0x4249('0x3d'));return _0x416e1d(_0x3c9b35[_0x4249('0x2d')](0x1f4,_0x4249('0x3d')));});},'AbandonInteraction':function(_0xb89f12){var _0x110cc7=this;return new Promise(function(_0x4d7cdd,_0x4f02d3){if(_0xb89f12[_0x4249('0x1d')]&&_0xb89f12['interaction']&&_0xb89f12[_0x4249('0x12')]['id']){try{var _0x58a075=getId(_0xb89f12[_0x4249('0x1d')],_0xb89f12[_0x4249('0x11')]?_0xb89f12['message']['id']:0x0,_0xb89f12[_0x4249('0x12')]?_0xb89f12[_0x4249('0x12')]['id']:0x0);if(_0x40ce9c['rules'][_0x58a075]){_0x40ce9c['rules'][_0x58a075]['emit']('end');}return _0x4d7cdd({'code':0xc8,'message':_0xb89f12});}catch(_0x139ced){logger[_0x4249('0x2d')](_0x139ced[_0x4249('0x34')]);return _0x4f02d3(_0x110cc7[_0x4249('0x2d')](0x1f4,_0x139ced));}}logger[_0x4249('0x2d')](_0x4249('0x3d'));return _0x4f02d3(_0x110cc7[_0x4249('0x2d')](0x1f4,'message\x20is\x20empty'));});},'AgentCapacity':function(_0x32f59a){var _0x51d393=this;return new Promise(function(_0x50b7ec,_0x4022fd){if(_0x40ce9c['agents'][_0x4249('0x3e')](_0x32f59a['id'])){for(var _0x32f708 in _0x32f59a['capacity']){if(_0x32f59a['capacity'][_0x4249('0x3e')](_0x32f708)){if(_0x40ce9c[_0x4249('0x37')][_0x32f59a['id']][_0x4249('0x3e')](_0x32f708+_0x4249('0x3f'))){_0x40ce9c[_0x4249('0x37')][_0x32f59a['id']][_0x32f708+_0x4249('0x3f')]=parseInt(_0x32f59a[_0x4249('0x40')][_0x32f708],0xa);}}}_0x40ce9c[_0x4249('0x37')][_0x32f59a['id']]['updateRealtime']();return _0x50b7ec({'code':0xc8,'message':_0x40ce9c['agents'][_0x32f59a['id']]});}else{return _0x4022fd(_0x51d393[_0x4249('0x2d')](0x1f4,_0x4249('0x41')));}});},'Agents':function(_0x309267){return new Promise(function(_0x4b18a3,_0x24233c){var _0x320da5=_[_0x4249('0x42')](_0x40ce9c[_0x4249('0x37')]);_0x4b18a3({'count':_0x320da5[_0x4249('0x15')],'rows':_0x320da5});});},'ChatQueues':function(_0x329f1d){return new Promise(function(_0x46bdc4,_0x2e0335){var _0x10c4bb=[];for(var _0x412a26 in _0x40ce9c['chatQueues']){if(_0x40ce9c['chatQueues']['hasOwnProperty'](_0x412a26)){var _0x4121e8=_0x40ce9c[_0x4249('0x43')][_0x412a26];var _0x58364f={'id':_0x4121e8['id'],'available':_0x4121e8[_0x4249('0x44')],'loggedIn':_0x4121e8[_0x4249('0x45')],'name':_0x4121e8[_0x4249('0x46')],'paused':_0x4121e8[_0x4249('0x47')],'waiting':_0x4121e8[_0x4249('0x48')]};_0x10c4bb[_0x4249('0x1f')](_0x58364f);}}_0x46bdc4({'count':_0x10c4bb[_0x4249('0x15')],'rows':_0x10c4bb});});},'MailQueues':function(_0x1c6ade){return new Promise(function(_0x5da7ed,_0x254f33){var _0x2f9198=[];for(var _0x1026a0 in _0x40ce9c['mailQueues']){if(_0x40ce9c[_0x4249('0x49')][_0x4249('0x3e')](_0x1026a0)){var _0x4b8c2d=_0x40ce9c[_0x4249('0x49')][_0x1026a0];var _0x57fa30={'id':_0x4b8c2d['id'],'available':_0x4b8c2d[_0x4249('0x44')],'loggedIn':_0x4b8c2d[_0x4249('0x45')],'name':_0x4b8c2d['name'],'paused':_0x4b8c2d['paused'],'waiting':_0x4b8c2d[_0x4249('0x48')]};_0x2f9198[_0x4249('0x1f')](_0x57fa30);}}_0x5da7ed({'count':_0x2f9198[_0x4249('0x15')],'rows':_0x2f9198});});},'OpenchannelQueues':function(_0x4891b8){return new Promise(function(_0x48155a,_0x537061){var _0x5a2226=[];for(var _0x56f4e8 in _0x40ce9c[_0x4249('0x4a')]){if(_0x40ce9c[_0x4249('0x4a')][_0x4249('0x3e')](_0x56f4e8)){var _0x4e28dd=_0x40ce9c['openchannelQueues'][_0x56f4e8];var _0x569c45={'id':_0x4e28dd['id'],'available':_0x4e28dd[_0x4249('0x44')],'loggedIn':_0x4e28dd['loggedIn'],'name':_0x4e28dd['name'],'paused':_0x4e28dd['paused'],'waiting':_0x4e28dd['waiting']};_0x5a2226[_0x4249('0x1f')](_0x569c45);}}_0x48155a({'count':_0x5a2226[_0x4249('0x15')],'rows':_0x5a2226});});},'SmsQueues':function(_0x536ba5){return new Promise(function(_0x12fd0d,_0x26f3a0){var _0x5a1120=[];for(var _0x2d4dbe in _0x40ce9c[_0x4249('0x4b')]){if(_0x40ce9c[_0x4249('0x4b')]['hasOwnProperty'](_0x2d4dbe)){var _0x3275ee=_0x40ce9c[_0x4249('0x4b')][_0x2d4dbe];var _0x46adc3={'id':_0x3275ee['id'],'available':_0x3275ee[_0x4249('0x44')],'loggedIn':_0x3275ee[_0x4249('0x45')],'name':_0x3275ee[_0x4249('0x46')],'paused':_0x3275ee[_0x4249('0x47')],'waiting':_0x3275ee['waiting']};_0x5a1120[_0x4249('0x1f')](_0x46adc3);}}_0x12fd0d({'count':_0x5a1120[_0x4249('0x15')],'rows':_0x5a1120});});},'FaxQueues':function(_0x3b926f){return new Promise(function(_0x1d7821,_0x262539){var _0x15167c=[];for(var _0xf4f7bb in _0x40ce9c['faxQueues']){if(_0x40ce9c['faxQueues'][_0x4249('0x3e')](_0xf4f7bb)){var _0x4047d0=_0x40ce9c[_0x4249('0x4c')][_0xf4f7bb];var _0x19a7bc={'id':_0x4047d0['id'],'available':_0x4047d0[_0x4249('0x44')],'loggedIn':_0x4047d0[_0x4249('0x45')],'name':_0x4047d0[_0x4249('0x46')],'paused':_0x4047d0['paused'],'waiting':_0x4047d0[_0x4249('0x48')]};_0x15167c[_0x4249('0x1f')](_0x19a7bc);}}_0x1d7821({'count':_0x15167c[_0x4249('0x15')],'rows':_0x15167c});});},'WhatsappQueues':function(_0x182d13){return new Promise(function(_0x190ea4,_0x28fef6){var _0x3fbef3=[];for(var _0x477bd9 in _0x40ce9c[_0x4249('0x4d')]){if(_0x40ce9c[_0x4249('0x4d')][_0x4249('0x3e')](_0x477bd9)){var _0x3a3927=_0x40ce9c[_0x4249('0x4d')][_0x477bd9];var _0x4960e8={'id':_0x3a3927['id'],'available':_0x3a3927[_0x4249('0x44')],'loggedIn':_0x3a3927['loggedIn'],'name':_0x3a3927[_0x4249('0x46')],'paused':_0x3a3927[_0x4249('0x47')],'waiting':_0x3a3927[_0x4249('0x48')]};_0x3fbef3['push'](_0x4960e8);}}_0x190ea4({'count':_0x3fbef3[_0x4249('0x15')],'rows':_0x3fbef3});});},'ChatQueuesWaitingInteractions':function(_0x139004){return new Promise(function(_0x1c22e0,_0x5e14d8){var _0xe5ec6a=_[_0x4249('0x42')](_0x40ce9c[_0x4249('0x4e')]);_0x1c22e0({'count':_0xe5ec6a[_0x4249('0x15')],'rows':_0xe5ec6a});});},'MailQueuesWaitingInteractions':function(_0x90ae86){return new Promise(function(_0x477cd3,_0x2d6193){var _0x832c8b=_['values'](_0x40ce9c[_0x4249('0x4f')]);_0x477cd3({'count':_0x832c8b['length'],'rows':_0x832c8b});});},'OpenchannelQueuesWaitingInteractions':function(_0x5550d5){return new Promise(function(_0x5e3f92,_0x397059){var _0x5b7f0a=_[_0x4249('0x42')](_0x40ce9c[_0x4249('0x50')]);_0x5e3f92({'count':_0x5b7f0a[_0x4249('0x15')],'rows':_0x5b7f0a});});},'SmsQueuesWaitingInteractions':function(_0x5652ab){return new Promise(function(_0x155840,_0x2024bb){var _0x25d7d0=_[_0x4249('0x42')](_0x40ce9c[_0x4249('0x51')]);_0x155840({'count':_0x25d7d0[_0x4249('0x15')],'rows':_0x25d7d0});});},'FaxQueuesWaitingInteractions':function(_0x323e5d){return new Promise(function(_0x4b7e37,_0x3a9d5f){var _0x59376c=_[_0x4249('0x42')](_0x40ce9c[_0x4249('0x52')]);_0x4b7e37({'count':_0x59376c[_0x4249('0x15')],'rows':_0x59376c});});},'WhatsappQueuesWaitingInteractions':function(_0x38a8a0){return new Promise(function(_0x174532,_0x1c4d4f){var _0x54aa8e=_[_0x4249('0x42')](_0x40ce9c[_0x4249('0x53')]);_0x174532({'count':_0x54aa8e[_0x4249('0x15')],'rows':_0x54aa8e});});}};var _0x22a985=jayson[_0x4249('0x54')](_0x27469a)[_0x4249('0x55')]();_0x22a985['on'](_0x4249('0x2d'),function(_0x3182de){logger['error'](JSON[_0x4249('0x30')](_0x3182de));return _0x2499ff(_0x3182de);});_0x22a985['listen'](0x232c,_0x4249('0x56'),function(){console[_0x4249('0x57')](_0x4249('0x58'),0x232c);return _0x3a514b(_0x4249('0x59')+0x232c);});});};
\ No newline at end of file
+var _0x0325=['name','waiting','openchannelQueues','smsQueues','faxQueues','whatsappQueues','chatQueuesWaitingInteractions','mailQueuesWaitingInteractions','faxQueuesWaitingInteractions','server','http','log','Routing\x20RPC\x20server\x20listening\x20on\x20127.0.0.1:%d!','RPC\x20listening\x20on\x20port:','lodash','util','path','jayson/promise','bluebird','./applications/utils','../../../config/logger','../rpc/mailQueueReport','../rpc/chatQueueReport','../rpc/faxQueueReport','../rpc/whatsappQueueReport','../lib/rule-engine','format','IntervalId','isNil','Intervals','map','interval','listen','rules','channel','message','interaction','checkWaitingNotifications','applications','length','existsSync','join','app','toLowerCase','autoreply','split','mail','push','slice','dialogflow','appdata','dialogflowv2','amazonlex','tag','TagId','tvox','getMustacheRender','account','notificationTemplate','ContactId','body','./interval','intervals','consequence','info','Push\x20new\x20rule','on\x20interval','\x20|\x20','error','.js','execute','stringify','matchPath','Skipped\x20routing\x20for\x20%s','No\x20applications\x20to\x20execute','stack','routing\x20is\x20empty','agents','agent','busy','emit','QueueReport','UserId','error\x20update\x20queue\x20report','message\x20is\x20empty','busyQueue','end','capacity','hasOwnProperty','CurrentCapacity','updateRealtime','agent\x20not\x20found','values','find','chatQueues','available','paused','mailQueues','loggedIn'];(function(_0x468a77,_0x1382be){var _0x2d1c33=function(_0x2f2e83){while(--_0x2f2e83){_0x468a77['push'](_0x468a77['shift']());}};_0x2d1c33(++_0x1382be);}(_0x0325,0x71));var _0x5032=function(_0x15d5e7,_0x5979f7){_0x15d5e7=_0x15d5e7-0x0;var _0x3bfb0a=_0x0325[_0x15d5e7];return _0x3bfb0a;};'use strict';var _=require(_0x5032('0x0'));var util=require(_0x5032('0x1'));var path=require(_0x5032('0x2'));var fs=require('fs');var jayson=require(_0x5032('0x3'));var BPromise=require(_0x5032('0x4'));var utils=require(_0x5032('0x5'));var sUtils=require('./applications/strategy/util');var logger=require(_0x5032('0x6'))('routing');var rpc={'openchannelQueueReport':require('../rpc/openchannelQueueReport'),'mailQueueReport':require(_0x5032('0x7')),'chatQueueReport':require(_0x5032('0x8')),'smsQueueReport':require('../rpc/smsQueueReport'),'faxQueueReport':require(_0x5032('0x9')),'whatsappQueueReport':require(_0x5032('0xa'))};var RuleEngine=require(_0x5032('0xb'));function getId(_0x307133,_0x20ee60,_0x1567f2){return util[_0x5032('0xc')]('%s.%s.%s',_0x307133,_0x20ee60||0x0,_0x1567f2||0x0);}function getIntervals(_0x2af4ea,_0x2be816){var _0x3eec28=[];if(!_['isNil'](_0x2be816['IntervalId'])&&!_['isNil'](_0x2af4ea[_0x2be816[_0x5032('0xd')]])&&!_[_0x5032('0xe')](_0x2af4ea[_0x2be816['IntervalId']][_0x5032('0xf')])){_0x3eec28=_[_0x5032('0x10')](_0x2af4ea[_0x2be816[_0x5032('0xd')]][_0x5032('0xf')],_0x5032('0x11'));}else if(!_['isNil'](_0x2be816[_0x5032('0x11')])){_0x3eec28=[_0x2be816['interval']];}return _0x3eec28;}exports[_0x5032('0x12')]=function(_0x34397d){_0x34397d[_0x5032('0x13')]={};return new BPromise(function(_0x4a7bd0,_0x19d663){var _0xa7d285={'Start':function(_0x59310d){var _0x1c608c=this;return new Promise(function(_0x545e75,_0x48a3ae){if(_0x59310d){try{var _0x5e5f72=[];var _0x128e39=getId(_0x59310d[_0x5032('0x14')],_0x59310d[_0x5032('0x15')]?_0x59310d[_0x5032('0x15')]['id']:0x0,_0x59310d[_0x5032('0x16')]?_0x59310d[_0x5032('0x16')]['id']:0x0);var _0xdcf6d8=sUtils[_0x5032('0x17')](_0x34397d,_0x59310d);if(!_0xdcf6d8&&_0x59310d[_0x5032('0x18')]&&_['isArray'](_0x59310d[_0x5032('0x18')])&&_0x59310d[_0x5032('0x18')][_0x5032('0x19')]){for(var _0x47ad46=0x0;_0x47ad46<_0x59310d[_0x5032('0x18')]['length'];_0x47ad46+=0x1){var _0x4d1498=_0x59310d[_0x5032('0x18')][_0x47ad46];if(fs[_0x5032('0x1a')](path[_0x5032('0x1b')](__dirname,_0x5032('0x18'),_0x4d1498[_0x5032('0x1c')]+'.js'))){var _0x4f3d2d=[];switch(_0x4d1498[_0x5032('0x1c')][_0x5032('0x1d')]()){case _0x5032('0x1e'):var _0x180435=_0x4d1498['appdata'][_0x5032('0x1f')](',');if(_0x59310d[_0x5032('0x14')]===_0x5032('0x20')){_0x4f3d2d[_0x5032('0x21')](_0x180435[0x0]);_0x4f3d2d['push'](_0x180435[0x1]);_0x4f3d2d[_0x5032('0x21')](_0x180435[_0x5032('0x22')](0x2,_0x180435[_0x5032('0x19')])[_0x5032('0x1b')](','));}else{_0x4f3d2d[_0x5032('0x21')](_0x180435[0x0]);_0x4f3d2d['push'](_0x180435[_0x5032('0x22')](0x1,_0x180435[_0x5032('0x19')])[_0x5032('0x1b')](','));}break;case _0x5032('0x23'):var _0xa79d75=_0x4d1498[_0x5032('0x24')]['split'](',');_0x4f3d2d[_0x5032('0x21')](_0xa79d75[0x0]);_0x4f3d2d['push'](_0xa79d75[0x1]);_0x4f3d2d['push'](_0xa79d75['slice'](0x2,_0xa79d75[_0x5032('0x19')])[_0x5032('0x1b')](','));break;case _0x5032('0x25'):var _0x13ecb4=_0x4d1498[_0x5032('0x24')]['split'](',');_0x4f3d2d['push'](_0x13ecb4[0x0]);_0x4f3d2d[_0x5032('0x21')](_0x13ecb4[0x1]);_0x4f3d2d[_0x5032('0x21')](_0x13ecb4[0x2]);_0x4f3d2d['push'](_0x13ecb4[0x3]);_0x4f3d2d['push'](_0x13ecb4[_0x5032('0x22')](0x4,_0x13ecb4[_0x5032('0x19')])[_0x5032('0x1b')](','));break;case _0x5032('0x26'):var _0x1213c2=_0x4d1498[_0x5032('0x24')][_0x5032('0x1f')](',');_0x4f3d2d[_0x5032('0x21')](_0x1213c2[0x0]);_0x4f3d2d[_0x5032('0x21')](_0x1213c2[0x1]);_0x4f3d2d['push'](_0x1213c2[0x2]);_0x4f3d2d[_0x5032('0x21')](_0x1213c2[0x3]);_0x4f3d2d[_0x5032('0x21')](_0x1213c2[_0x5032('0x22')](0x4,_0x1213c2['length'])[_0x5032('0x1b')](','));break;case'message':_0x4f3d2d[_0x5032('0x21')](_0x4d1498[_0x5032('0x24')]);break;case _0x5032('0x27'):_0x4f3d2d[_0x5032('0x21')](_0x4d1498[_0x5032('0x28')]);_0x4f3d2d['push'](_0x4d1498['appdata']);break;case _0x5032('0x29'):var _0x21570f=utils[_0x5032('0x2a')](_0x59310d[_0x5032('0x2b')][_0x5032('0x2c')],_0x59310d);var _0x14fc09=_0x4d1498['appdata']['split'](',');_0x4f3d2d[_0x5032('0x21')](_0x14fc09[0x0]);_0x4f3d2d[_0x5032('0x21')](_0x14fc09[0x1]);_0x4f3d2d[_0x5032('0x21')](_0x14fc09[0x2]);_0x4f3d2d[_0x5032('0x21')](_0x14fc09[0x3]);_0x4f3d2d[_0x5032('0x21')](_0x14fc09[0x4]);_0x4f3d2d[_0x5032('0x21')](_0x14fc09[0x5]);_0x4f3d2d[_0x5032('0x21')](_0x14fc09[0x6]);_0x4f3d2d[_0x5032('0x21')](_0x14fc09[0x7]);_0x4f3d2d[_0x5032('0x21')](_0x14fc09[0x8]);_0x4f3d2d[_0x5032('0x21')](_0x14fc09[0x9]);_0x4f3d2d[_0x5032('0x21')](_0x14fc09[0xa]);_0x4f3d2d[_0x5032('0x21')](_0x59310d[_0x5032('0x16')]['id']);_0x4f3d2d[_0x5032('0x21')](_0x59310d['message']['id']);_0x4f3d2d[_0x5032('0x21')](_0x4d1498['ChatWebsiteId']);_0x4f3d2d['push'](_0x59310d['interaction'][_0x5032('0x2d')]);_0x4f3d2d[_0x5032('0x21')](_0x59310d[_0x5032('0x2e')]['body']);_0x4f3d2d[_0x5032('0x21')](_0x21570f);break;default:_0x4f3d2d=_['isNil'](_0x4d1498['appdata'])?[]:_0x4d1498['appdata'][_0x5032('0x1f')](',');}var _0x7ea58c={'id':util[_0x5032('0xc')]('%s:%s:%s',_0x128e39,_0x4d1498['id'],_0x4d1498['app']),'condition':require(_0x5032('0x2f'))['condition'](_0x128e39,getIntervals(_0x34397d[_0x5032('0x30')],_0x4d1498),_0x34397d),'consequence':require('./applications/'+_0x4d1498[_0x5032('0x1c')])[_0x5032('0x31')](_0x128e39,_0x4f3d2d,_0x34397d,_0x59310d),'p':_0x4d1498['priority']||0x0};logger[_0x5032('0x32')](_0x5032('0x33'),_0x7ea58c['id'],_0x5032('0x34'),getIntervals(_0x34397d[_0x5032('0x30')],_0x4d1498)[_0x5032('0x1b')](_0x5032('0x35')));_0x5e5f72[_0x5032('0x21')](_0x7ea58c);}else{logger[_0x5032('0x36')]('Please\x20create\x20a\x20new\x20file\x20under',path['join'](__dirname,'applications',_0x4d1498['app']+_0x5032('0x37')));}}_0x34397d[_0x5032('0x13')][_0x128e39]=new RuleEngine(_0x5e5f72);_0x34397d['rules'][_0x128e39][_0x5032('0x38')](_0x59310d,function(_0x1b9839){logger[_0x5032('0x32')]('Applications\x20executed',JSON[_0x5032('0x39')](_0x1b9839[_0x5032('0x3a')]));if(_0x34397d[_0x5032('0x13')][_0x128e39]){_0x34397d[_0x5032('0x13')][_0x128e39]['emit']('complete');}});return _0x545e75({'code':0xc8,'message':_0x59310d});}else{if(_0xdcf6d8){logger[_0x5032('0x32')](util[_0x5032('0xc')](_0x5032('0x3b'),_0x128e39));}else{logger[_0x5032('0x32')](_0x5032('0x3c'));}return _0x545e75({'code':0xc8,'message':_0x59310d});}}catch(_0xad274c){logger[_0x5032('0x36')](_0xad274c[_0x5032('0x3d')]);return _0x48a3ae(_0x1c608c['error'](0x1f4,_0xad274c));}}return _0x48a3ae(_0x5032('0x3e'));});},'AcceptMessage':function(_0x2d1b7c){var _0x1989e4=this;return new Promise(function(_0x249ee7,_0x1788b4){if(_0x2d1b7c['agent']&&_0x2d1b7c['agent']['id']){if(_0x34397d[_0x5032('0x3f')][_0x2d1b7c[_0x5032('0x40')]['id']]){_0x34397d[_0x5032('0x3f')][_0x2d1b7c['agent']['id']][_0x5032('0x41')]=![];_0x34397d[_0x5032('0x3f')][_0x2d1b7c[_0x5032('0x40')]['id']]['busyQueue']=undefined;}}if(_0x2d1b7c[_0x5032('0x15')]&&_0x2d1b7c[_0x5032('0x15')]['id']){try{var _0x464d84=getId(_0x2d1b7c['channel'],_0x2d1b7c[_0x5032('0x15')]?_0x2d1b7c[_0x5032('0x15')]['id']:0x0,_0x2d1b7c[_0x5032('0x16')]?_0x2d1b7c[_0x5032('0x16')]['id']:0x0);if(_0x34397d[_0x5032('0x13')][_0x464d84]){_0x34397d[_0x5032('0x13')][_0x464d84][_0x5032('0x42')]('end');if(rpc[_0x2d1b7c['channel']+_0x5032('0x43')]){rpc[_0x2d1b7c[_0x5032('0x14')]+'QueueReport']['update'](_0x464d84,{'UserId':_0x2d1b7c[_0x5032('0x15')][_0x5032('0x44')]})['catch'](function(){logger[_0x5032('0x36')](_0x5032('0x45'));});}}return _0x249ee7({'code':0xc8,'message':_0x2d1b7c});}catch(_0xa38ce3){logger['error'](_0xa38ce3[_0x5032('0x3d')]);return _0x1788b4(_0x1989e4['error'](0x1f4,_0xa38ce3));}}logger['error'](_0x5032('0x46'));return _0x1788b4(_0x1989e4['error'](0x1f4,_0x5032('0x46')));});},'RejectMessage':function(_0x15d17c){var _0x25dc96=this;return new Promise(function(_0x4e2b04,_0x49a7a2){if(_0x15d17c[_0x5032('0x40')]&&_0x15d17c[_0x5032('0x40')]['id']){try{if(_0x34397d[_0x5032('0x3f')][_0x15d17c[_0x5032('0x40')]['id']]){_0x34397d[_0x5032('0x3f')][_0x15d17c[_0x5032('0x40')]['id']][_0x5032('0x41')]=![];_0x34397d[_0x5032('0x3f')][_0x15d17c[_0x5032('0x40')]['id']][_0x5032('0x47')]=undefined;}return _0x4e2b04({'code':0xc8,'message':_0x15d17c});}catch(_0x38ba32){logger[_0x5032('0x36')](_0x38ba32[_0x5032('0x3d')]);return _0x49a7a2(_0x25dc96['error'](0x1f4,_0x38ba32));}}logger[_0x5032('0x36')](_0x5032('0x46'));return _0x49a7a2(_0x25dc96[_0x5032('0x36')](0x1f4,_0x5032('0x46')));});},'AbandonInteraction':function(_0x1a45ae){var _0x28cf30=this;return new Promise(function(_0x32fc69,_0x1652ff){if(_0x1a45ae[_0x5032('0x14')]&&_0x1a45ae['interaction']&&_0x1a45ae[_0x5032('0x16')]['id']){try{var _0x3d226c=getId(_0x1a45ae['channel'],_0x1a45ae['message']?_0x1a45ae['message']['id']:0x0,_0x1a45ae[_0x5032('0x16')]?_0x1a45ae[_0x5032('0x16')]['id']:0x0);if(_0x34397d['rules'][_0x3d226c]){_0x34397d['rules'][_0x3d226c]['emit'](_0x5032('0x48'));}return _0x32fc69({'code':0xc8,'message':_0x1a45ae});}catch(_0x4f1417){logger[_0x5032('0x36')](_0x4f1417[_0x5032('0x3d')]);return _0x1652ff(_0x28cf30['error'](0x1f4,_0x4f1417));}}logger[_0x5032('0x36')]('message\x20is\x20empty');return _0x1652ff(_0x28cf30[_0x5032('0x36')](0x1f4,'message\x20is\x20empty'));});},'AgentCapacity':function(_0x13f8c1){var _0x4a10eb=this;return new Promise(function(_0xc04a4,_0x370c0f){if(_0x34397d['agents']['hasOwnProperty'](_0x13f8c1['id'])){for(var _0x4f2191 in _0x13f8c1[_0x5032('0x49')]){if(_0x13f8c1[_0x5032('0x49')][_0x5032('0x4a')](_0x4f2191)){if(_0x34397d[_0x5032('0x3f')][_0x13f8c1['id']][_0x5032('0x4a')](_0x4f2191+_0x5032('0x4b'))){_0x34397d[_0x5032('0x3f')][_0x13f8c1['id']][_0x4f2191+_0x5032('0x4b')]=parseInt(_0x13f8c1[_0x5032('0x49')][_0x4f2191],0xa);}}}_0x34397d[_0x5032('0x3f')][_0x13f8c1['id']][_0x5032('0x4c')]();return _0xc04a4({'code':0xc8,'message':_0x34397d[_0x5032('0x3f')][_0x13f8c1['id']]});}else{return _0x370c0f(_0x4a10eb['error'](0x1f4,_0x5032('0x4d')));}});},'Agents':function(_0x70fb9a){return new Promise(function(_0x230262){var _0x5ca335=_[_0x5032('0x4e')](_0x34397d[_0x5032('0x3f')]);if(_0x70fb9a&&_0x70fb9a['id']){var _0x26127a=_[_0x5032('0x4f')](_0x5ca335,function(_0x2c0fe9){return _0x2c0fe9['id']===_0x70fb9a['id'];});_0x230262(_0x26127a);}else{_0x230262({'count':_0x5ca335[_0x5032('0x19')],'rows':_0x5ca335});}});},'ChatQueues':function(){return new Promise(function(_0x47afe4){var _0x29be6b=[];for(var _0x42afc7 in _0x34397d['chatQueues']){if(_0x34397d[_0x5032('0x50')][_0x5032('0x4a')](_0x42afc7)){var _0x480d39=_0x34397d[_0x5032('0x50')][_0x42afc7];var _0x1640d2={'id':_0x480d39['id'],'available':_0x480d39[_0x5032('0x51')],'loggedIn':_0x480d39['loggedIn'],'name':_0x480d39['name'],'paused':_0x480d39[_0x5032('0x52')],'waiting':_0x480d39['waiting']};_0x29be6b[_0x5032('0x21')](_0x1640d2);}}_0x47afe4({'count':_0x29be6b[_0x5032('0x19')],'rows':_0x29be6b});});},'MailQueues':function(){return new Promise(function(_0x3b0ef5){var _0x3b976d=[];for(var _0x3521d5 in _0x34397d['mailQueues']){if(_0x34397d[_0x5032('0x53')]['hasOwnProperty'](_0x3521d5)){var _0x3634c1=_0x34397d[_0x5032('0x53')][_0x3521d5];var _0x2087fb={'id':_0x3634c1['id'],'available':_0x3634c1['available'],'loggedIn':_0x3634c1[_0x5032('0x54')],'name':_0x3634c1[_0x5032('0x55')],'paused':_0x3634c1[_0x5032('0x52')],'waiting':_0x3634c1[_0x5032('0x56')]};_0x3b976d[_0x5032('0x21')](_0x2087fb);}}_0x3b0ef5({'count':_0x3b976d[_0x5032('0x19')],'rows':_0x3b976d});});},'OpenchannelQueues':function(){return new Promise(function(_0x34ffec){var _0x2e5693=[];for(var _0x10b504 in _0x34397d[_0x5032('0x57')]){if(_0x34397d['openchannelQueues'][_0x5032('0x4a')](_0x10b504)){var _0x11dd8f=_0x34397d[_0x5032('0x57')][_0x10b504];var _0x48777d={'id':_0x11dd8f['id'],'available':_0x11dd8f['available'],'loggedIn':_0x11dd8f[_0x5032('0x54')],'name':_0x11dd8f[_0x5032('0x55')],'paused':_0x11dd8f[_0x5032('0x52')],'waiting':_0x11dd8f['waiting']};_0x2e5693[_0x5032('0x21')](_0x48777d);}}_0x34ffec({'count':_0x2e5693[_0x5032('0x19')],'rows':_0x2e5693});});},'SmsQueues':function(){return new Promise(function(_0x43427c){var _0x827b36=[];for(var _0xdaf668 in _0x34397d['smsQueues']){if(_0x34397d['smsQueues'][_0x5032('0x4a')](_0xdaf668)){var _0x554b9b=_0x34397d[_0x5032('0x58')][_0xdaf668];var _0xb486e6={'id':_0x554b9b['id'],'available':_0x554b9b[_0x5032('0x51')],'loggedIn':_0x554b9b[_0x5032('0x54')],'name':_0x554b9b[_0x5032('0x55')],'paused':_0x554b9b[_0x5032('0x52')],'waiting':_0x554b9b[_0x5032('0x56')]};_0x827b36['push'](_0xb486e6);}}_0x43427c({'count':_0x827b36['length'],'rows':_0x827b36});});},'FaxQueues':function(){return new Promise(function(_0x2f3a40){var _0x15cf5d=[];for(var _0x487098 in _0x34397d[_0x5032('0x59')]){if(_0x34397d['faxQueues'][_0x5032('0x4a')](_0x487098)){var _0x2a28f1=_0x34397d[_0x5032('0x59')][_0x487098];var _0x27e092={'id':_0x2a28f1['id'],'available':_0x2a28f1[_0x5032('0x51')],'loggedIn':_0x2a28f1[_0x5032('0x54')],'name':_0x2a28f1[_0x5032('0x55')],'paused':_0x2a28f1['paused'],'waiting':_0x2a28f1['waiting']};_0x15cf5d[_0x5032('0x21')](_0x27e092);}}_0x2f3a40({'count':_0x15cf5d[_0x5032('0x19')],'rows':_0x15cf5d});});},'WhatsappQueues':function(){return new Promise(function(_0x3106d4){var _0x1876c3=[];for(var _0x4abe77 in _0x34397d['whatsappQueues']){if(_0x34397d[_0x5032('0x5a')][_0x5032('0x4a')](_0x4abe77)){var _0x4b5432=_0x34397d[_0x5032('0x5a')][_0x4abe77];var _0x171a5c={'id':_0x4b5432['id'],'available':_0x4b5432[_0x5032('0x51')],'loggedIn':_0x4b5432['loggedIn'],'name':_0x4b5432['name'],'paused':_0x4b5432[_0x5032('0x52')],'waiting':_0x4b5432[_0x5032('0x56')]};_0x1876c3[_0x5032('0x21')](_0x171a5c);}}_0x3106d4({'count':_0x1876c3['length'],'rows':_0x1876c3});});},'ChatQueuesWaitingInteractions':function(){return new Promise(function(_0x359b35){var _0x417b82=_[_0x5032('0x4e')](_0x34397d[_0x5032('0x5b')]);_0x359b35({'count':_0x417b82[_0x5032('0x19')],'rows':_0x417b82});});},'MailQueuesWaitingInteractions':function(){return new Promise(function(_0x22c7c8){var _0x56a2d9=_['values'](_0x34397d[_0x5032('0x5c')]);_0x22c7c8({'count':_0x56a2d9[_0x5032('0x19')],'rows':_0x56a2d9});});},'OpenchannelQueuesWaitingInteractions':function(){return new Promise(function(_0x2b327c){var _0x4b4845=_['values'](_0x34397d['openchannelQueuesWaitingInteractions']);_0x2b327c({'count':_0x4b4845[_0x5032('0x19')],'rows':_0x4b4845});});},'SmsQueuesWaitingInteractions':function(){return new Promise(function(_0x1b4548){var _0x503e13=_[_0x5032('0x4e')](_0x34397d['smsQueuesWaitingInteractions']);_0x1b4548({'count':_0x503e13[_0x5032('0x19')],'rows':_0x503e13});});},'FaxQueuesWaitingInteractions':function(){return new Promise(function(_0x225ec1){var _0x419c35=_[_0x5032('0x4e')](_0x34397d[_0x5032('0x5d')]);_0x225ec1({'count':_0x419c35['length'],'rows':_0x419c35});});},'WhatsappQueuesWaitingInteractions':function(){return new Promise(function(_0x176b22){var _0xc33570=_['values'](_0x34397d['whatsappQueuesWaitingInteractions']);_0x176b22({'count':_0xc33570[_0x5032('0x19')],'rows':_0xc33570});});}};var _0x4f8de5=jayson[_0x5032('0x5e')](_0xa7d285)[_0x5032('0x5f')]();_0x4f8de5['on'](_0x5032('0x36'),function(_0x3ff3b2){logger['error'](JSON[_0x5032('0x39')](_0x3ff3b2));return _0x19d663(_0x3ff3b2);});_0x4f8de5['listen'](0x232c,'127.0.0.1',function(){console[_0x5032('0x60')](_0x5032('0x61'),0x232c);return _0x4a7bd0(_0x5032('0x62')+0x232c);});});};
\ No newline at end of file