Built motion from commit f7863d46.|2.5.41
[motion2.git] / server / services / routing / server / index.js
index e74f2c9..5d2bb01 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0xda65=['listen','127.0.0.1','log','Routing\x20RPC\x20server\x20listening\x20on\x20127.0.0.1:%d!','lodash','util','path','bluebird','uuid','../../../config/environment','../rpc/openchannelQueueReport','../rpc/mailQueueReport','../rpc/chatQueueReport','../rpc/smsQueueReport','../rpc/faxQueueReport','../lib/rule-engine','%s.%s.%s','isNil','IntervalId','Intervals','map','interval','rules','message','interaction','applications','length','existsSync','join','app','.js','autoreply','appdata','split','channel','mail','push','slice','dialogflow','dialogflowv2','amazonlex','tag','format','./interval','condition','./applications/','consequence','priority','Push\x20new\x20rule','on\x20interval','intervals','\x20|\x20','error','Please\x20create\x20a\x20new\x20file\x20under','Applications\x20executed','matchPath','complete','info','stack','routing\x20is\x20empty','agent','agents','busy','busyQueue','emit','end','QueueReport','update','catch','message\x20is\x20empty','hasOwnProperty','capacity','CurrentCapacity','updateRealtime','agent\x20not\x20found','values','chatQueues','available','loggedIn','waiting','name','paused','openchannelQueues','faxQueues','whatsappQueues','chatQueuesWaitingInteractions','mailQueuesWaitingInteractions','openchannelQueuesWaitingInteractions','smsQueuesWaitingInteractions','whatsappQueuesWaitingInteractions','server','http'];(function(_0x397e5f,_0x454c8f){var _0x5302b8=function(_0x1a29ef){while(--_0x1a29ef){_0x397e5f['push'](_0x397e5f['shift']());}};_0x5302b8(++_0x454c8f);}(_0xda65,0x1d0));var _0x5da6=function(_0x27fd06,_0x249b40){_0x27fd06=_0x27fd06-0x0;var _0x312145=_0xda65[_0x27fd06];return _0x312145;};'use strict';var _=require(_0x5da6('0x0'));var util=require(_0x5da6('0x1'));var path=require(_0x5da6('0x2'));var fs=require('fs');var jayson=require('jayson/promise');var BPromise=require(_0x5da6('0x3'));var uuid=require(_0x5da6('0x4'));var config=require(_0x5da6('0x5'));var logger=require('../../../config/logger')('routing');var rpc={'openchannelQueueReport':require(_0x5da6('0x6')),'mailQueueReport':require(_0x5da6('0x7')),'chatQueueReport':require(_0x5da6('0x8')),'smsQueueReport':require(_0x5da6('0x9')),'faxQueueReport':require(_0x5da6('0xa')),'whatsappQueueReport':require('../rpc/whatsappQueueReport')};var RuleEngine=require(_0x5da6('0xb'));function getId(_0x4a7040,_0x55108e,_0x40722c){return util['format'](_0x5da6('0xc'),_0x4a7040,_0x55108e||0x0,_0x40722c||0x0);}function getIntervals(_0x20cb14,_0x32643d){var _0x28d332=[];if(!_[_0x5da6('0xd')](_0x32643d[_0x5da6('0xe')])&&!_[_0x5da6('0xd')](_0x20cb14[_0x32643d[_0x5da6('0xe')]])&&!_['isNil'](_0x20cb14[_0x32643d[_0x5da6('0xe')]][_0x5da6('0xf')])){_0x28d332=_[_0x5da6('0x10')](_0x20cb14[_0x32643d[_0x5da6('0xe')]][_0x5da6('0xf')],_0x5da6('0x11'));}else if(!_[_0x5da6('0xd')](_0x32643d[_0x5da6('0x11')])){_0x28d332=[_0x32643d[_0x5da6('0x11')]];}return _0x28d332;}exports['listen']=function(_0x423665){_0x423665[_0x5da6('0x12')]={};return new BPromise(function(_0xdb1066,_0x44c6e4){var _0x2ca041={'Start':function(_0x47798b){var _0x32a16a=this;return new Promise(function(_0x1c28b7,_0x4f594e){if(_0x47798b){try{var _0x272b50=[];var _0x478ce5=getId(_0x47798b['channel'],_0x47798b[_0x5da6('0x13')]?_0x47798b[_0x5da6('0x13')]['id']:0x0,_0x47798b[_0x5da6('0x14')]?_0x47798b['interaction']['id']:0x0);if(_0x47798b[_0x5da6('0x15')]&&_['isArray'](_0x47798b[_0x5da6('0x15')])&&_0x47798b[_0x5da6('0x15')][_0x5da6('0x16')]){for(var _0x3c93e2=0x0;_0x3c93e2<_0x47798b['applications'][_0x5da6('0x16')];_0x3c93e2+=0x1){var _0xbef420=_0x47798b[_0x5da6('0x15')][_0x3c93e2];if(fs[_0x5da6('0x17')](path[_0x5da6('0x18')](__dirname,_0x5da6('0x15'),_0xbef420[_0x5da6('0x19')]+_0x5da6('0x1a')))){var _0x4eca61=[];switch(_0xbef420[_0x5da6('0x19')]['toLowerCase']()){case _0x5da6('0x1b'):var _0x3fbf9c=_0xbef420[_0x5da6('0x1c')][_0x5da6('0x1d')](',');if(_0x47798b[_0x5da6('0x1e')]===_0x5da6('0x1f')){_0x4eca61[_0x5da6('0x20')](_0x3fbf9c[0x0]);_0x4eca61[_0x5da6('0x20')](_0x3fbf9c[0x1]);_0x4eca61['push'](_0x3fbf9c['slice'](0x2,_0x3fbf9c[_0x5da6('0x16')])[_0x5da6('0x18')](','));}else{_0x4eca61['push'](_0x3fbf9c[0x0]);_0x4eca61['push'](_0x3fbf9c[_0x5da6('0x21')](0x1,_0x3fbf9c[_0x5da6('0x16')])[_0x5da6('0x18')](','));}break;case _0x5da6('0x22'):var _0x42edb1=_0xbef420['appdata'][_0x5da6('0x1d')](',');_0x4eca61[_0x5da6('0x20')](_0x42edb1[0x0]);_0x4eca61[_0x5da6('0x20')](_0x42edb1[0x1]);_0x4eca61['push'](_0x42edb1[_0x5da6('0x21')](0x2,_0x42edb1[_0x5da6('0x16')])['join'](','));break;case _0x5da6('0x23'):var _0x34545f=_0xbef420[_0x5da6('0x1c')][_0x5da6('0x1d')](',');_0x4eca61[_0x5da6('0x20')](_0x34545f[0x0]);_0x4eca61[_0x5da6('0x20')](_0x34545f[0x1]);_0x4eca61[_0x5da6('0x20')](_0x34545f[0x2]);_0x4eca61[_0x5da6('0x20')](_0x34545f[0x3]);_0x4eca61[_0x5da6('0x20')](_0x34545f[_0x5da6('0x21')](0x4,_0x34545f[_0x5da6('0x16')])[_0x5da6('0x18')](','));break;case _0x5da6('0x24'):var _0x15f5d7=_0xbef420['appdata'][_0x5da6('0x1d')](',');_0x4eca61[_0x5da6('0x20')](_0x15f5d7[0x0]);_0x4eca61[_0x5da6('0x20')](_0x15f5d7[0x1]);_0x4eca61['push'](_0x15f5d7[0x2]);_0x4eca61[_0x5da6('0x20')](_0x15f5d7[0x3]);_0x4eca61[_0x5da6('0x20')](_0x15f5d7[_0x5da6('0x21')](0x4,_0x15f5d7[_0x5da6('0x16')])[_0x5da6('0x18')](','));break;case _0x5da6('0x13'):_0x4eca61[_0x5da6('0x20')](_0xbef420[_0x5da6('0x1c')]);break;case _0x5da6('0x25'):_0x4eca61['push'](_0xbef420['TagId']);_0x4eca61[_0x5da6('0x20')](_0xbef420['appdata']);break;default:_0x4eca61=_['isNil'](_0xbef420[_0x5da6('0x1c')])?[]:_0xbef420[_0x5da6('0x1c')]['split'](',');}var _0x58adf2={'id':util[_0x5da6('0x26')]('%s:%s:%s',_0x478ce5,_0xbef420['id'],_0xbef420['app']),'condition':require(_0x5da6('0x27'))[_0x5da6('0x28')](_0x478ce5,getIntervals(_0x423665['intervals'],_0xbef420),_0x423665),'consequence':require(_0x5da6('0x29')+_0xbef420[_0x5da6('0x19')])[_0x5da6('0x2a')](_0x478ce5,_0x4eca61,_0x423665,_0x47798b),'p':_0xbef420[_0x5da6('0x2b')]||0x0};logger['info'](_0x5da6('0x2c'),_0x58adf2['id'],_0x5da6('0x2d'),getIntervals(_0x423665[_0x5da6('0x2e')],_0xbef420)['join'](_0x5da6('0x2f')));_0x272b50[_0x5da6('0x20')](_0x58adf2);}else{logger[_0x5da6('0x30')](_0x5da6('0x31'),path[_0x5da6('0x18')](__dirname,_0x5da6('0x15'),_0xbef420['app']+_0x5da6('0x1a')));}}_0x423665[_0x5da6('0x12')][_0x478ce5]=new RuleEngine(_0x272b50);_0x423665[_0x5da6('0x12')][_0x478ce5]['execute'](_0x47798b,function(_0x4e5d6d){logger['info'](_0x5da6('0x32'),JSON['stringify'](_0x4e5d6d[_0x5da6('0x33')]));if(_0x423665['rules'][_0x478ce5]){_0x423665[_0x5da6('0x12')][_0x478ce5]['emit'](_0x5da6('0x34'));}});return _0x1c28b7({'code':0xc8,'message':_0x47798b});}else{logger[_0x5da6('0x35')]('No\x20applications\x20to\x20execute');return _0x1c28b7({'code':0xc8,'message':_0x47798b});}}catch(_0x17d7bb){logger[_0x5da6('0x30')](_0x17d7bb[_0x5da6('0x36')]);return _0x4f594e(_0x32a16a[_0x5da6('0x30')](0x1f4,_0x17d7bb));}}return _0x4f594e(_0x5da6('0x37'));});},'AcceptMessage':function(_0x43b53e){var _0x2de3e7=this;return new Promise(function(_0x212cb7,_0x1b1a5d){if(_0x43b53e[_0x5da6('0x38')]&&_0x43b53e[_0x5da6('0x38')]['id']){if(_0x423665[_0x5da6('0x39')][_0x43b53e[_0x5da6('0x38')]['id']]){_0x423665[_0x5da6('0x39')][_0x43b53e[_0x5da6('0x38')]['id']][_0x5da6('0x3a')]=![];_0x423665[_0x5da6('0x39')][_0x43b53e['agent']['id']][_0x5da6('0x3b')]=undefined;}}if(_0x43b53e[_0x5da6('0x13')]&&_0x43b53e[_0x5da6('0x13')]['id']){try{var _0x3cac43=getId(_0x43b53e['channel'],_0x43b53e[_0x5da6('0x13')]?_0x43b53e[_0x5da6('0x13')]['id']:0x0,_0x43b53e[_0x5da6('0x14')]?_0x43b53e[_0x5da6('0x14')]['id']:0x0);if(_0x423665['rules'][_0x3cac43]){_0x423665[_0x5da6('0x12')][_0x3cac43][_0x5da6('0x3c')](_0x5da6('0x3d'));if(rpc[_0x43b53e[_0x5da6('0x1e')]+_0x5da6('0x3e')]){rpc[_0x43b53e[_0x5da6('0x1e')]+_0x5da6('0x3e')][_0x5da6('0x3f')](_0x3cac43,{'UserId':_0x43b53e[_0x5da6('0x13')]['UserId']})[_0x5da6('0x40')](function(_0x351848){logger[_0x5da6('0x30')]('error\x20update\x20queue\x20report');});}}return _0x212cb7({'code':0xc8,'message':_0x43b53e});}catch(_0x482511){logger[_0x5da6('0x30')](_0x482511[_0x5da6('0x36')]);return _0x1b1a5d(_0x2de3e7[_0x5da6('0x30')](0x1f4,_0x482511));}}logger[_0x5da6('0x30')](_0x5da6('0x41'));return _0x1b1a5d(_0x2de3e7['error'](0x1f4,'message\x20is\x20empty'));});},'RejectMessage':function(_0x4dd635){var _0x3eb053=this;return new Promise(function(_0x2ab651,_0x3ce7b5){if(_0x4dd635[_0x5da6('0x38')]&&_0x4dd635[_0x5da6('0x38')]['id']){try{if(_0x423665[_0x5da6('0x39')][_0x4dd635['agent']['id']]){_0x423665[_0x5da6('0x39')][_0x4dd635[_0x5da6('0x38')]['id']][_0x5da6('0x3a')]=![];_0x423665['agents'][_0x4dd635['agent']['id']][_0x5da6('0x3b')]=undefined;}return _0x2ab651({'code':0xc8,'message':_0x4dd635});}catch(_0x375ea8){logger['error'](_0x375ea8[_0x5da6('0x36')]);return _0x3ce7b5(_0x3eb053[_0x5da6('0x30')](0x1f4,_0x375ea8));}}logger[_0x5da6('0x30')]('message\x20is\x20empty');return _0x3ce7b5(_0x3eb053[_0x5da6('0x30')](0x1f4,'message\x20is\x20empty'));});},'AbandonInteraction':function(_0xabf041){var _0x2cf764=this;return new Promise(function(_0x682b03,_0x33bea1){if(_0xabf041[_0x5da6('0x1e')]&&_0xabf041[_0x5da6('0x14')]&&_0xabf041[_0x5da6('0x14')]['id']){try{var _0x3dbfc4=getId(_0xabf041[_0x5da6('0x1e')],_0xabf041[_0x5da6('0x13')]?_0xabf041[_0x5da6('0x13')]['id']:0x0,_0xabf041[_0x5da6('0x14')]?_0xabf041['interaction']['id']:0x0);if(_0x423665[_0x5da6('0x12')][_0x3dbfc4]){_0x423665[_0x5da6('0x12')][_0x3dbfc4]['emit'](_0x5da6('0x3d'));}return _0x682b03({'code':0xc8,'message':_0xabf041});}catch(_0x24e3a1){logger[_0x5da6('0x30')](_0x24e3a1[_0x5da6('0x36')]);return _0x33bea1(_0x2cf764['error'](0x1f4,_0x24e3a1));}}logger['error']('message\x20is\x20empty');return _0x33bea1(_0x2cf764[_0x5da6('0x30')](0x1f4,_0x5da6('0x41')));});},'AgentCapacity':function(_0x63f3bc){var _0x4bef74=this;return new Promise(function(_0xd4f177,_0x423eb3){if(_0x423665[_0x5da6('0x39')][_0x5da6('0x42')](_0x63f3bc['id'])){for(var _0x14217e in _0x63f3bc[_0x5da6('0x43')]){if(_0x63f3bc['capacity'][_0x5da6('0x42')](_0x14217e)){if(_0x423665[_0x5da6('0x39')][_0x63f3bc['id']][_0x5da6('0x42')](_0x14217e+_0x5da6('0x44'))){_0x423665[_0x5da6('0x39')][_0x63f3bc['id']][_0x14217e+_0x5da6('0x44')]=parseInt(_0x63f3bc[_0x5da6('0x43')][_0x14217e],0xa);}}}_0x423665[_0x5da6('0x39')][_0x63f3bc['id']][_0x5da6('0x45')]();return _0xd4f177({'code':0xc8,'message':_0x423665['agents'][_0x63f3bc['id']]});}else{return _0x423eb3(_0x4bef74['error'](0x1f4,_0x5da6('0x46')));}});},'Agents':function(_0x466842){return new Promise(function(_0x5cbc36,_0x298970){var _0x2eca9f=_[_0x5da6('0x47')](_0x423665[_0x5da6('0x39')]);_0x5cbc36({'count':_0x2eca9f[_0x5da6('0x16')],'rows':_0x2eca9f});});},'ChatQueues':function(_0x4ceb91){return new Promise(function(_0x5d2189,_0x180bbc){var _0x271382=[];for(var _0x1ccf2e in _0x423665[_0x5da6('0x48')]){if(_0x423665[_0x5da6('0x48')][_0x5da6('0x42')](_0x1ccf2e)){var _0x298dc4=_0x423665[_0x5da6('0x48')][_0x1ccf2e];var _0x151807={'id':_0x298dc4['id'],'available':_0x298dc4[_0x5da6('0x49')],'loggedIn':_0x298dc4[_0x5da6('0x4a')],'name':_0x298dc4['name'],'paused':_0x298dc4['paused'],'waiting':_0x298dc4[_0x5da6('0x4b')]};_0x271382[_0x5da6('0x20')](_0x151807);}}_0x5d2189({'count':_0x271382[_0x5da6('0x16')],'rows':_0x271382});});},'MailQueues':function(_0x39a28b){return new Promise(function(_0x1f8360,_0xd8e8ce){var _0x728ae9=[];for(var _0x1edfa2 in _0x423665['mailQueues']){if(_0x423665['mailQueues'][_0x5da6('0x42')](_0x1edfa2)){var _0x5c402b=_0x423665['mailQueues'][_0x1edfa2];var _0x424242={'id':_0x5c402b['id'],'available':_0x5c402b[_0x5da6('0x49')],'loggedIn':_0x5c402b[_0x5da6('0x4a')],'name':_0x5c402b[_0x5da6('0x4c')],'paused':_0x5c402b[_0x5da6('0x4d')],'waiting':_0x5c402b['waiting']};_0x728ae9['push'](_0x424242);}}_0x1f8360({'count':_0x728ae9['length'],'rows':_0x728ae9});});},'OpenchannelQueues':function(_0x77db56){return new Promise(function(_0x4d3dc4,_0x4d41e7){var _0x376488=[];for(var _0x1a47e3 in _0x423665[_0x5da6('0x4e')]){if(_0x423665[_0x5da6('0x4e')][_0x5da6('0x42')](_0x1a47e3)){var _0x1d5b8c=_0x423665[_0x5da6('0x4e')][_0x1a47e3];var _0x294836={'id':_0x1d5b8c['id'],'available':_0x1d5b8c['available'],'loggedIn':_0x1d5b8c[_0x5da6('0x4a')],'name':_0x1d5b8c['name'],'paused':_0x1d5b8c[_0x5da6('0x4d')],'waiting':_0x1d5b8c[_0x5da6('0x4b')]};_0x376488[_0x5da6('0x20')](_0x294836);}}_0x4d3dc4({'count':_0x376488[_0x5da6('0x16')],'rows':_0x376488});});},'SmsQueues':function(_0x5bcbe5){return new Promise(function(_0x29ca99,_0x1c5335){var _0x47aaaf=[];for(var _0x5087ab in _0x423665['smsQueues']){if(_0x423665['smsQueues'][_0x5da6('0x42')](_0x5087ab)){var _0x594263=_0x423665['smsQueues'][_0x5087ab];var _0x4bdfd5={'id':_0x594263['id'],'available':_0x594263[_0x5da6('0x49')],'loggedIn':_0x594263[_0x5da6('0x4a')],'name':_0x594263[_0x5da6('0x4c')],'paused':_0x594263[_0x5da6('0x4d')],'waiting':_0x594263['waiting']};_0x47aaaf[_0x5da6('0x20')](_0x4bdfd5);}}_0x29ca99({'count':_0x47aaaf[_0x5da6('0x16')],'rows':_0x47aaaf});});},'FaxQueues':function(_0x4277f8){return new Promise(function(_0x38bbb2,_0x384b0b){var _0x33fd3b=[];for(var _0x3197a0 in _0x423665[_0x5da6('0x4f')]){if(_0x423665[_0x5da6('0x4f')][_0x5da6('0x42')](_0x3197a0)){var _0x1d0ad5=_0x423665[_0x5da6('0x4f')][_0x3197a0];var _0x2531ac={'id':_0x1d0ad5['id'],'available':_0x1d0ad5[_0x5da6('0x49')],'loggedIn':_0x1d0ad5[_0x5da6('0x4a')],'name':_0x1d0ad5['name'],'paused':_0x1d0ad5[_0x5da6('0x4d')],'waiting':_0x1d0ad5[_0x5da6('0x4b')]};_0x33fd3b[_0x5da6('0x20')](_0x2531ac);}}_0x38bbb2({'count':_0x33fd3b[_0x5da6('0x16')],'rows':_0x33fd3b});});},'WhatsappQueues':function(_0x916c59){return new Promise(function(_0x2f0e06,_0x276c6e){var _0x3bddc5=[];for(var _0x12b838 in _0x423665[_0x5da6('0x50')]){if(_0x423665[_0x5da6('0x50')][_0x5da6('0x42')](_0x12b838)){var _0x47836c=_0x423665[_0x5da6('0x50')][_0x12b838];var _0x584f66={'id':_0x47836c['id'],'available':_0x47836c[_0x5da6('0x49')],'loggedIn':_0x47836c[_0x5da6('0x4a')],'name':_0x47836c[_0x5da6('0x4c')],'paused':_0x47836c[_0x5da6('0x4d')],'waiting':_0x47836c[_0x5da6('0x4b')]};_0x3bddc5[_0x5da6('0x20')](_0x584f66);}}_0x2f0e06({'count':_0x3bddc5[_0x5da6('0x16')],'rows':_0x3bddc5});});},'ChatQueuesWaitingInteractions':function(_0x35c256){return new Promise(function(_0x4f9970,_0x476abe){var _0xbdf618=_[_0x5da6('0x47')](_0x423665[_0x5da6('0x51')]);_0x4f9970({'count':_0xbdf618[_0x5da6('0x16')],'rows':_0xbdf618});});},'MailQueuesWaitingInteractions':function(_0x5b2dc2){return new Promise(function(_0x3a156a,_0x21dbaa){var _0x2c21d9=_[_0x5da6('0x47')](_0x423665[_0x5da6('0x52')]);_0x3a156a({'count':_0x2c21d9[_0x5da6('0x16')],'rows':_0x2c21d9});});},'OpenchannelQueuesWaitingInteractions':function(_0x507d8b){return new Promise(function(_0x558c99,_0x1b0851){var _0x3dcb14=_[_0x5da6('0x47')](_0x423665[_0x5da6('0x53')]);_0x558c99({'count':_0x3dcb14[_0x5da6('0x16')],'rows':_0x3dcb14});});},'SmsQueuesWaitingInteractions':function(_0x43f361){return new Promise(function(_0x3100dc,_0x7babeb){var _0x31da28=_[_0x5da6('0x47')](_0x423665[_0x5da6('0x54')]);_0x3100dc({'count':_0x31da28[_0x5da6('0x16')],'rows':_0x31da28});});},'FaxQueuesWaitingInteractions':function(_0x256089){return new Promise(function(_0xc05915,_0x54ecc4){var _0x4f992d=_[_0x5da6('0x47')](_0x423665['faxQueuesWaitingInteractions']);_0xc05915({'count':_0x4f992d['length'],'rows':_0x4f992d});});},'WhatsappQueuesWaitingInteractions':function(_0xeada8a){return new Promise(function(_0x2710a2,_0x5fe310){var _0x321754=_[_0x5da6('0x47')](_0x423665[_0x5da6('0x55')]);_0x2710a2({'count':_0x321754['length'],'rows':_0x321754});});}};var _0x326135=jayson[_0x5da6('0x56')](_0x2ca041)[_0x5da6('0x57')]();_0x326135['on'](_0x5da6('0x30'),function(_0x4c48c4){logger[_0x5da6('0x30')](JSON['stringify'](_0x4c48c4));return _0x44c6e4(_0x4c48c4);});_0x326135[_0x5da6('0x58')](0x232c,_0x5da6('0x59'),function(){console[_0x5da6('0x5a')](_0x5da6('0x5b'),0x232c);return _0xdb1066('RPC\x20listening\x20on\x20port:'+0x232c);});});};
\ No newline at end of file
+var _0xbe31=['end','QueueReport','update','UserId','error\x20update\x20queue\x20report','message\x20is\x20empty','hasOwnProperty','CurrentCapacity','capacity','updateRealtime','chatQueues','available','loggedIn','name','paused','mailQueues','waiting','openchannelQueues','smsQueues','faxQueues','whatsappQueues','values','mailQueuesWaitingInteractions','openchannelQueuesWaitingInteractions','smsQueuesWaitingInteractions','faxQueuesWaitingInteractions','server','http','stringify','127.0.0.1','log','Routing\x20RPC\x20server\x20listening\x20on\x20127.0.0.1:%d!','RPC\x20listening\x20on\x20port:','util','path','jayson/promise','bluebird','uuid','./applications/utils','../../../config/environment','../../../config/logger','routing','../rpc/mailQueueReport','../rpc/smsQueueReport','../rpc/faxQueueReport','../rpc/whatsappQueueReport','../lib/rule-engine','format','%s.%s.%s','isNil','IntervalId','Intervals','map','interval','listen','rules','channel','message','interaction','applications','isArray','length','join','app','.js','toLowerCase','autoreply','split','mail','push','appdata','dialogflowv2','slice','tag','TagId','tvox','getMustacheRender','ChatWebsiteId','ContactId','condition','intervals','./applications/','consequence','info','on\x20interval','\x20|\x20','Please\x20create\x20a\x20new\x20file\x20under','execute','matchPath','emit','complete','No\x20applications\x20to\x20execute','error','stack','agent','agents','busy','busyQueue'];(function(_0x95b352,_0x342fe9){var _0x49296f=function(_0x315227){while(--_0x315227){_0x95b352['push'](_0x95b352['shift']());}};_0x49296f(++_0x342fe9);}(_0xbe31,0x83));var _0x1be3=function(_0x12b0d0,_0x4681b1){_0x12b0d0=_0x12b0d0-0x0;var _0x24e13e=_0xbe31[_0x12b0d0];return _0x24e13e;};'use strict';var _=require('lodash');var util=require(_0x1be3('0x0'));var path=require(_0x1be3('0x1'));var fs=require('fs');var jayson=require(_0x1be3('0x2'));var BPromise=require(_0x1be3('0x3'));var uuid=require(_0x1be3('0x4'));var utils=require(_0x1be3('0x5'));var config=require(_0x1be3('0x6'));var logger=require(_0x1be3('0x7'))(_0x1be3('0x8'));var rpc={'openchannelQueueReport':require('../rpc/openchannelQueueReport'),'mailQueueReport':require(_0x1be3('0x9')),'chatQueueReport':require('../rpc/chatQueueReport'),'smsQueueReport':require(_0x1be3('0xa')),'faxQueueReport':require(_0x1be3('0xb')),'whatsappQueueReport':require(_0x1be3('0xc'))};var RuleEngine=require(_0x1be3('0xd'));function getId(_0x2bb749,_0x2e4488,_0x339d6c){return util[_0x1be3('0xe')](_0x1be3('0xf'),_0x2bb749,_0x2e4488||0x0,_0x339d6c||0x0);}function getIntervals(_0xd19ef2,_0x548e99){var _0x1fc80e=[];if(!_[_0x1be3('0x10')](_0x548e99[_0x1be3('0x11')])&&!_[_0x1be3('0x10')](_0xd19ef2[_0x548e99[_0x1be3('0x11')]])&&!_[_0x1be3('0x10')](_0xd19ef2[_0x548e99[_0x1be3('0x11')]][_0x1be3('0x12')])){_0x1fc80e=_[_0x1be3('0x13')](_0xd19ef2[_0x548e99['IntervalId']][_0x1be3('0x12')],'interval');}else if(!_[_0x1be3('0x10')](_0x548e99[_0x1be3('0x14')])){_0x1fc80e=[_0x548e99['interval']];}return _0x1fc80e;}exports[_0x1be3('0x15')]=function(_0x573684){_0x573684[_0x1be3('0x16')]={};return new BPromise(function(_0x39c80e,_0x3658ce){var _0xd30cd={'Start':function(_0x1156bc){var _0x269ac3=this;return new Promise(function(_0x567919,_0x53a9d7){if(_0x1156bc){try{var _0x5b8971=[];var _0x52d2f2=getId(_0x1156bc[_0x1be3('0x17')],_0x1156bc['message']?_0x1156bc[_0x1be3('0x18')]['id']:0x0,_0x1156bc[_0x1be3('0x19')]?_0x1156bc[_0x1be3('0x19')]['id']:0x0);if(_0x1156bc[_0x1be3('0x1a')]&&_[_0x1be3('0x1b')](_0x1156bc[_0x1be3('0x1a')])&&_0x1156bc[_0x1be3('0x1a')][_0x1be3('0x1c')]){for(var _0x745447=0x0;_0x745447<_0x1156bc[_0x1be3('0x1a')][_0x1be3('0x1c')];_0x745447+=0x1){var _0x207697=_0x1156bc['applications'][_0x745447];if(fs['existsSync'](path[_0x1be3('0x1d')](__dirname,'applications',_0x207697[_0x1be3('0x1e')]+_0x1be3('0x1f')))){var _0x4366e8=[];switch(_0x207697[_0x1be3('0x1e')][_0x1be3('0x20')]()){case _0x1be3('0x21'):var _0x2b7a7f=_0x207697['appdata'][_0x1be3('0x22')](',');if(_0x1156bc['channel']===_0x1be3('0x23')){_0x4366e8[_0x1be3('0x24')](_0x2b7a7f[0x0]);_0x4366e8['push'](_0x2b7a7f[0x1]);_0x4366e8[_0x1be3('0x24')](_0x2b7a7f['slice'](0x2,_0x2b7a7f[_0x1be3('0x1c')])[_0x1be3('0x1d')](','));}else{_0x4366e8[_0x1be3('0x24')](_0x2b7a7f[0x0]);_0x4366e8[_0x1be3('0x24')](_0x2b7a7f['slice'](0x1,_0x2b7a7f[_0x1be3('0x1c')])[_0x1be3('0x1d')](','));}break;case'dialogflow':var _0x113cc4=_0x207697[_0x1be3('0x25')][_0x1be3('0x22')](',');_0x4366e8[_0x1be3('0x24')](_0x113cc4[0x0]);_0x4366e8[_0x1be3('0x24')](_0x113cc4[0x1]);_0x4366e8[_0x1be3('0x24')](_0x113cc4['slice'](0x2,_0x113cc4[_0x1be3('0x1c')])['join'](','));break;case _0x1be3('0x26'):var _0x4be26f=_0x207697[_0x1be3('0x25')][_0x1be3('0x22')](',');_0x4366e8['push'](_0x4be26f[0x0]);_0x4366e8['push'](_0x4be26f[0x1]);_0x4366e8[_0x1be3('0x24')](_0x4be26f[0x2]);_0x4366e8[_0x1be3('0x24')](_0x4be26f[0x3]);_0x4366e8[_0x1be3('0x24')](_0x4be26f[_0x1be3('0x27')](0x4,_0x4be26f[_0x1be3('0x1c')])[_0x1be3('0x1d')](','));break;case'amazonlex':var _0x564f99=_0x207697['appdata']['split'](',');_0x4366e8[_0x1be3('0x24')](_0x564f99[0x0]);_0x4366e8[_0x1be3('0x24')](_0x564f99[0x1]);_0x4366e8[_0x1be3('0x24')](_0x564f99[0x2]);_0x4366e8[_0x1be3('0x24')](_0x564f99[0x3]);_0x4366e8[_0x1be3('0x24')](_0x564f99[_0x1be3('0x27')](0x4,_0x564f99[_0x1be3('0x1c')])['join'](','));break;case _0x1be3('0x18'):_0x4366e8[_0x1be3('0x24')](_0x207697[_0x1be3('0x25')]);break;case _0x1be3('0x28'):_0x4366e8[_0x1be3('0x24')](_0x207697[_0x1be3('0x29')]);_0x4366e8[_0x1be3('0x24')](_0x207697['appdata']);break;case _0x1be3('0x2a'):var _0x2c47ab=utils[_0x1be3('0x2b')](_0x1156bc['account']['notificationTemplate'],_0x1156bc);var _0x29c7cd=_0x207697[_0x1be3('0x25')][_0x1be3('0x22')](',');_0x4366e8['push'](_0x29c7cd[0x0]);_0x4366e8['push'](_0x29c7cd[0x1]);_0x4366e8['push'](_0x29c7cd[0x2]);_0x4366e8[_0x1be3('0x24')](_0x29c7cd[0x3]);_0x4366e8[_0x1be3('0x24')](_0x29c7cd[0x4]);_0x4366e8[_0x1be3('0x24')](_0x29c7cd[0x5]);_0x4366e8['push'](_0x29c7cd[0x6]);_0x4366e8[_0x1be3('0x24')](_0x29c7cd[0x7]);_0x4366e8['push'](_0x29c7cd[0x8]);_0x4366e8[_0x1be3('0x24')](_0x29c7cd[0x9]);_0x4366e8[_0x1be3('0x24')](_0x29c7cd[0xa]);_0x4366e8['push'](_0x1156bc[_0x1be3('0x19')]['id']);_0x4366e8[_0x1be3('0x24')](_0x1156bc[_0x1be3('0x18')]['id']);_0x4366e8[_0x1be3('0x24')](_0x207697[_0x1be3('0x2c')]);_0x4366e8['push'](_0x1156bc[_0x1be3('0x19')][_0x1be3('0x2d')]);_0x4366e8[_0x1be3('0x24')](_0x1156bc['body']['body']);_0x4366e8[_0x1be3('0x24')](_0x2c47ab);break;default:_0x4366e8=_[_0x1be3('0x10')](_0x207697['appdata'])?[]:_0x207697[_0x1be3('0x25')]['split'](',');}var _0x2f254d={'id':util[_0x1be3('0xe')]('%s:%s:%s',_0x52d2f2,_0x207697['id'],_0x207697['app']),'condition':require('./interval')[_0x1be3('0x2e')](_0x52d2f2,getIntervals(_0x573684[_0x1be3('0x2f')],_0x207697),_0x573684),'consequence':require(_0x1be3('0x30')+_0x207697[_0x1be3('0x1e')])[_0x1be3('0x31')](_0x52d2f2,_0x4366e8,_0x573684,_0x1156bc),'p':_0x207697['priority']||0x0};logger[_0x1be3('0x32')]('Push\x20new\x20rule',_0x2f254d['id'],_0x1be3('0x33'),getIntervals(_0x573684[_0x1be3('0x2f')],_0x207697)[_0x1be3('0x1d')](_0x1be3('0x34')));_0x5b8971[_0x1be3('0x24')](_0x2f254d);}else{logger['error'](_0x1be3('0x35'),path['join'](__dirname,_0x1be3('0x1a'),_0x207697[_0x1be3('0x1e')]+_0x1be3('0x1f')));}}_0x573684['rules'][_0x52d2f2]=new RuleEngine(_0x5b8971);_0x573684[_0x1be3('0x16')][_0x52d2f2][_0x1be3('0x36')](_0x1156bc,function(_0x3718c9){logger[_0x1be3('0x32')]('Applications\x20executed',JSON['stringify'](_0x3718c9[_0x1be3('0x37')]));if(_0x573684[_0x1be3('0x16')][_0x52d2f2]){_0x573684[_0x1be3('0x16')][_0x52d2f2][_0x1be3('0x38')](_0x1be3('0x39'));}});return _0x567919({'code':0xc8,'message':_0x1156bc});}else{logger['info'](_0x1be3('0x3a'));return _0x567919({'code':0xc8,'message':_0x1156bc});}}catch(_0x4a49e3){logger[_0x1be3('0x3b')](_0x4a49e3[_0x1be3('0x3c')]);return _0x53a9d7(_0x269ac3['error'](0x1f4,_0x4a49e3));}}return _0x53a9d7('routing\x20is\x20empty');});},'AcceptMessage':function(_0x3b19d2){var _0x51520d=this;return new Promise(function(_0x58f41e,_0x17d11e){if(_0x3b19d2[_0x1be3('0x3d')]&&_0x3b19d2[_0x1be3('0x3d')]['id']){if(_0x573684[_0x1be3('0x3e')][_0x3b19d2[_0x1be3('0x3d')]['id']]){_0x573684['agents'][_0x3b19d2[_0x1be3('0x3d')]['id']][_0x1be3('0x3f')]=![];_0x573684[_0x1be3('0x3e')][_0x3b19d2['agent']['id']][_0x1be3('0x40')]=undefined;}}if(_0x3b19d2[_0x1be3('0x18')]&&_0x3b19d2[_0x1be3('0x18')]['id']){try{var _0x5b191a=getId(_0x3b19d2[_0x1be3('0x17')],_0x3b19d2[_0x1be3('0x18')]?_0x3b19d2['message']['id']:0x0,_0x3b19d2['interaction']?_0x3b19d2['interaction']['id']:0x0);if(_0x573684['rules'][_0x5b191a]){_0x573684[_0x1be3('0x16')][_0x5b191a][_0x1be3('0x38')](_0x1be3('0x41'));if(rpc[_0x3b19d2[_0x1be3('0x17')]+_0x1be3('0x42')]){rpc[_0x3b19d2[_0x1be3('0x17')]+_0x1be3('0x42')][_0x1be3('0x43')](_0x5b191a,{'UserId':_0x3b19d2[_0x1be3('0x18')][_0x1be3('0x44')]})['catch'](function(_0x4578eb){logger[_0x1be3('0x3b')](_0x1be3('0x45'));});}}return _0x58f41e({'code':0xc8,'message':_0x3b19d2});}catch(_0x3f5794){logger[_0x1be3('0x3b')](_0x3f5794[_0x1be3('0x3c')]);return _0x17d11e(_0x51520d['error'](0x1f4,_0x3f5794));}}logger[_0x1be3('0x3b')]('message\x20is\x20empty');return _0x17d11e(_0x51520d[_0x1be3('0x3b')](0x1f4,_0x1be3('0x46')));});},'RejectMessage':function(_0x5dd73a){var _0xbf7c13=this;return new Promise(function(_0x5cec31,_0x537fd2){if(_0x5dd73a[_0x1be3('0x3d')]&&_0x5dd73a[_0x1be3('0x3d')]['id']){try{if(_0x573684[_0x1be3('0x3e')][_0x5dd73a[_0x1be3('0x3d')]['id']]){_0x573684[_0x1be3('0x3e')][_0x5dd73a['agent']['id']][_0x1be3('0x3f')]=![];_0x573684[_0x1be3('0x3e')][_0x5dd73a[_0x1be3('0x3d')]['id']][_0x1be3('0x40')]=undefined;}return _0x5cec31({'code':0xc8,'message':_0x5dd73a});}catch(_0x306a31){logger['error'](_0x306a31[_0x1be3('0x3c')]);return _0x537fd2(_0xbf7c13['error'](0x1f4,_0x306a31));}}logger[_0x1be3('0x3b')](_0x1be3('0x46'));return _0x537fd2(_0xbf7c13[_0x1be3('0x3b')](0x1f4,'message\x20is\x20empty'));});},'AbandonInteraction':function(_0x48b2db){var _0xb40c79=this;return new Promise(function(_0x1fffbb,_0xbbd70a){if(_0x48b2db['channel']&&_0x48b2db[_0x1be3('0x19')]&&_0x48b2db[_0x1be3('0x19')]['id']){try{var _0x551b95=getId(_0x48b2db[_0x1be3('0x17')],_0x48b2db['message']?_0x48b2db[_0x1be3('0x18')]['id']:0x0,_0x48b2db[_0x1be3('0x19')]?_0x48b2db[_0x1be3('0x19')]['id']:0x0);if(_0x573684[_0x1be3('0x16')][_0x551b95]){_0x573684[_0x1be3('0x16')][_0x551b95][_0x1be3('0x38')](_0x1be3('0x41'));}return _0x1fffbb({'code':0xc8,'message':_0x48b2db});}catch(_0x11ca23){logger[_0x1be3('0x3b')](_0x11ca23[_0x1be3('0x3c')]);return _0xbbd70a(_0xb40c79['error'](0x1f4,_0x11ca23));}}logger[_0x1be3('0x3b')](_0x1be3('0x46'));return _0xbbd70a(_0xb40c79[_0x1be3('0x3b')](0x1f4,_0x1be3('0x46')));});},'AgentCapacity':function(_0x3c97ed){var _0x3c4941=this;return new Promise(function(_0x206a6c,_0xd7f700){if(_0x573684['agents'][_0x1be3('0x47')](_0x3c97ed['id'])){for(var _0x3dff6c in _0x3c97ed['capacity']){if(_0x3c97ed['capacity'][_0x1be3('0x47')](_0x3dff6c)){if(_0x573684[_0x1be3('0x3e')][_0x3c97ed['id']][_0x1be3('0x47')](_0x3dff6c+'CurrentCapacity')){_0x573684[_0x1be3('0x3e')][_0x3c97ed['id']][_0x3dff6c+_0x1be3('0x48')]=parseInt(_0x3c97ed[_0x1be3('0x49')][_0x3dff6c],0xa);}}}_0x573684[_0x1be3('0x3e')][_0x3c97ed['id']][_0x1be3('0x4a')]();return _0x206a6c({'code':0xc8,'message':_0x573684[_0x1be3('0x3e')][_0x3c97ed['id']]});}else{return _0xd7f700(_0x3c4941[_0x1be3('0x3b')](0x1f4,'agent\x20not\x20found'));}});},'Agents':function(_0x5726e7){return new Promise(function(_0x564964,_0x3b9643){var _0x128052=_['values'](_0x573684['agents']);_0x564964({'count':_0x128052[_0x1be3('0x1c')],'rows':_0x128052});});},'ChatQueues':function(_0x4acb27){return new Promise(function(_0x4208e2,_0x1df165){var _0x88cd1d=[];for(var _0x43d4ab in _0x573684[_0x1be3('0x4b')]){if(_0x573684[_0x1be3('0x4b')][_0x1be3('0x47')](_0x43d4ab)){var _0x20e856=_0x573684['chatQueues'][_0x43d4ab];var _0x1dbef7={'id':_0x20e856['id'],'available':_0x20e856[_0x1be3('0x4c')],'loggedIn':_0x20e856[_0x1be3('0x4d')],'name':_0x20e856[_0x1be3('0x4e')],'paused':_0x20e856[_0x1be3('0x4f')],'waiting':_0x20e856['waiting']};_0x88cd1d[_0x1be3('0x24')](_0x1dbef7);}}_0x4208e2({'count':_0x88cd1d[_0x1be3('0x1c')],'rows':_0x88cd1d});});},'MailQueues':function(_0x23d565){return new Promise(function(_0x1685a9,_0x7f8918){var _0x17e20f=[];for(var _0x4356f7 in _0x573684[_0x1be3('0x50')]){if(_0x573684[_0x1be3('0x50')][_0x1be3('0x47')](_0x4356f7)){var _0x107df1=_0x573684[_0x1be3('0x50')][_0x4356f7];var _0x375384={'id':_0x107df1['id'],'available':_0x107df1[_0x1be3('0x4c')],'loggedIn':_0x107df1['loggedIn'],'name':_0x107df1['name'],'paused':_0x107df1[_0x1be3('0x4f')],'waiting':_0x107df1[_0x1be3('0x51')]};_0x17e20f[_0x1be3('0x24')](_0x375384);}}_0x1685a9({'count':_0x17e20f[_0x1be3('0x1c')],'rows':_0x17e20f});});},'OpenchannelQueues':function(_0x18eb6f){return new Promise(function(_0x1a000e,_0xd83fbe){var _0x2f87f7=[];for(var _0xdb7c93 in _0x573684[_0x1be3('0x52')]){if(_0x573684[_0x1be3('0x52')][_0x1be3('0x47')](_0xdb7c93)){var _0x905832=_0x573684[_0x1be3('0x52')][_0xdb7c93];var _0x46cb0d={'id':_0x905832['id'],'available':_0x905832[_0x1be3('0x4c')],'loggedIn':_0x905832['loggedIn'],'name':_0x905832[_0x1be3('0x4e')],'paused':_0x905832[_0x1be3('0x4f')],'waiting':_0x905832[_0x1be3('0x51')]};_0x2f87f7['push'](_0x46cb0d);}}_0x1a000e({'count':_0x2f87f7['length'],'rows':_0x2f87f7});});},'SmsQueues':function(_0x1b5322){return new Promise(function(_0x45f545,_0x493328){var _0x5e7171=[];for(var _0x57fd42 in _0x573684[_0x1be3('0x53')]){if(_0x573684[_0x1be3('0x53')][_0x1be3('0x47')](_0x57fd42)){var _0x53fee9=_0x573684['smsQueues'][_0x57fd42];var _0x521b22={'id':_0x53fee9['id'],'available':_0x53fee9[_0x1be3('0x4c')],'loggedIn':_0x53fee9[_0x1be3('0x4d')],'name':_0x53fee9['name'],'paused':_0x53fee9[_0x1be3('0x4f')],'waiting':_0x53fee9['waiting']};_0x5e7171[_0x1be3('0x24')](_0x521b22);}}_0x45f545({'count':_0x5e7171['length'],'rows':_0x5e7171});});},'FaxQueues':function(_0x14b2ce){return new Promise(function(_0x2c3c76,_0x4b805f){var _0x596055=[];for(var _0x2cb6b1 in _0x573684[_0x1be3('0x54')]){if(_0x573684[_0x1be3('0x54')][_0x1be3('0x47')](_0x2cb6b1)){var _0x1cf7a2=_0x573684[_0x1be3('0x54')][_0x2cb6b1];var _0x4c4e22={'id':_0x1cf7a2['id'],'available':_0x1cf7a2['available'],'loggedIn':_0x1cf7a2[_0x1be3('0x4d')],'name':_0x1cf7a2[_0x1be3('0x4e')],'paused':_0x1cf7a2[_0x1be3('0x4f')],'waiting':_0x1cf7a2[_0x1be3('0x51')]};_0x596055['push'](_0x4c4e22);}}_0x2c3c76({'count':_0x596055[_0x1be3('0x1c')],'rows':_0x596055});});},'WhatsappQueues':function(_0x1ec3fe){return new Promise(function(_0x10c5b0,_0x56c170){var _0x552b81=[];for(var _0x3fd1ca in _0x573684['whatsappQueues']){if(_0x573684[_0x1be3('0x55')][_0x1be3('0x47')](_0x3fd1ca)){var _0x118871=_0x573684['whatsappQueues'][_0x3fd1ca];var _0x33851c={'id':_0x118871['id'],'available':_0x118871[_0x1be3('0x4c')],'loggedIn':_0x118871['loggedIn'],'name':_0x118871[_0x1be3('0x4e')],'paused':_0x118871[_0x1be3('0x4f')],'waiting':_0x118871[_0x1be3('0x51')]};_0x552b81[_0x1be3('0x24')](_0x33851c);}}_0x10c5b0({'count':_0x552b81[_0x1be3('0x1c')],'rows':_0x552b81});});},'ChatQueuesWaitingInteractions':function(_0x1f9bc1){return new Promise(function(_0x3baf50,_0x205ca0){var _0x18af7c=_[_0x1be3('0x56')](_0x573684['chatQueuesWaitingInteractions']);_0x3baf50({'count':_0x18af7c['length'],'rows':_0x18af7c});});},'MailQueuesWaitingInteractions':function(_0x37dbc9){return new Promise(function(_0x1ec284,_0x583ebd){var _0x21f004=_[_0x1be3('0x56')](_0x573684[_0x1be3('0x57')]);_0x1ec284({'count':_0x21f004[_0x1be3('0x1c')],'rows':_0x21f004});});},'OpenchannelQueuesWaitingInteractions':function(_0x4e83b0){return new Promise(function(_0x1c969d,_0xab7550){var _0x193f49=_[_0x1be3('0x56')](_0x573684[_0x1be3('0x58')]);_0x1c969d({'count':_0x193f49['length'],'rows':_0x193f49});});},'SmsQueuesWaitingInteractions':function(_0x594520){return new Promise(function(_0x46acfb,_0x156cd7){var _0x16882c=_[_0x1be3('0x56')](_0x573684[_0x1be3('0x59')]);_0x46acfb({'count':_0x16882c[_0x1be3('0x1c')],'rows':_0x16882c});});},'FaxQueuesWaitingInteractions':function(_0x3c6391){return new Promise(function(_0x505a93,_0x90e4b8){var _0x3550d2=_[_0x1be3('0x56')](_0x573684[_0x1be3('0x5a')]);_0x505a93({'count':_0x3550d2[_0x1be3('0x1c')],'rows':_0x3550d2});});},'WhatsappQueuesWaitingInteractions':function(_0x2d4c05){return new Promise(function(_0x46ad9b,_0xaed497){var _0x19619f=_[_0x1be3('0x56')](_0x573684['whatsappQueuesWaitingInteractions']);_0x46ad9b({'count':_0x19619f[_0x1be3('0x1c')],'rows':_0x19619f});});}};var _0x1cb108=jayson[_0x1be3('0x5b')](_0xd30cd)[_0x1be3('0x5c')]();_0x1cb108['on']('error',function(_0x423b8b){logger[_0x1be3('0x3b')](JSON[_0x1be3('0x5d')](_0x423b8b));return _0x3658ce(_0x423b8b);});_0x1cb108[_0x1be3('0x15')](0x232c,_0x1be3('0x5e'),function(){console[_0x1be3('0x5f')](_0x1be3('0x60'),0x232c);return _0x39c80e(_0x1be3('0x61')+0x232c);});});};
\ No newline at end of file