Built motion from commit 85328c08.|2.5.50
[motion2.git] / server / services / routing / server / index.js
index 5aaaf29..eaf9b09 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x2723=['smsQueuesWaitingInteractions','server','http','listen','127.0.0.1','log','Routing\x20RPC\x20server\x20listening\x20on\x20127.0.0.1:%d!','lodash','util','jayson/promise','bluebird','uuid','routing','../rpc/openchannelQueueReport','../rpc/smsQueueReport','../lib/rule-engine','format','IntervalId','isNil','map','Intervals','interval','rules','channel','message','interaction','applications','isArray','length','join','toLowerCase','autoreply','mail','push','slice','appdata','split','dialogflowv2','amazonlex','TagId','%s:%s:%s','app','./interval','intervals','./applications/','consequence','priority','info','on\x20interval','\x20|\x20','error','Please\x20create\x20a\x20new\x20file\x20under','.js','execute','Applications\x20executed','stringify','complete','No\x20applications\x20to\x20execute','stack','routing\x20is\x20empty','agent','agents','busy','busyQueue','emit','end','QueueReport','UserId','catch','error\x20update\x20queue\x20report','message\x20is\x20empty','hasOwnProperty','capacity','CurrentCapacity','updateRealtime','agent\x20not\x20found','values','chatQueues','available','loggedIn','name','paused','waiting','mailQueues','openchannelQueues','smsQueues','faxQueues','whatsappQueues','chatQueuesWaitingInteractions','openchannelQueuesWaitingInteractions'];(function(_0x46006d,_0x1478de){var _0x4662c7=function(_0x37266f){while(--_0x37266f){_0x46006d['push'](_0x46006d['shift']());}};_0x4662c7(++_0x1478de);}(_0x2723,0x16f));var _0x3272=function(_0x5c1df7,_0x16364a){_0x5c1df7=_0x5c1df7-0x0;var _0x3d7350=_0x2723[_0x5c1df7];return _0x3d7350;};'use strict';var _=require(_0x3272('0x0'));var util=require(_0x3272('0x1'));var path=require('path');var fs=require('fs');var jayson=require(_0x3272('0x2'));var BPromise=require(_0x3272('0x3'));var uuid=require(_0x3272('0x4'));var config=require('../../../config/environment');var logger=require('../../../config/logger')(_0x3272('0x5'));var rpc={'openchannelQueueReport':require(_0x3272('0x6')),'mailQueueReport':require('../rpc/mailQueueReport'),'chatQueueReport':require('../rpc/chatQueueReport'),'smsQueueReport':require(_0x3272('0x7')),'faxQueueReport':require('../rpc/faxQueueReport'),'whatsappQueueReport':require('../rpc/whatsappQueueReport')};var RuleEngine=require(_0x3272('0x8'));function getId(_0xb4e365,_0x45da08,_0x41ff4d){return util[_0x3272('0x9')]('%s.%s.%s',_0xb4e365,_0x45da08||0x0,_0x41ff4d||0x0);}function getIntervals(_0x44a576,_0x17f6d3){var _0x1a8cc3=[];if(!_['isNil'](_0x17f6d3['IntervalId'])&&!_['isNil'](_0x44a576[_0x17f6d3[_0x3272('0xa')]])&&!_[_0x3272('0xb')](_0x44a576[_0x17f6d3[_0x3272('0xa')]]['Intervals'])){_0x1a8cc3=_[_0x3272('0xc')](_0x44a576[_0x17f6d3[_0x3272('0xa')]][_0x3272('0xd')],_0x3272('0xe'));}else if(!_['isNil'](_0x17f6d3[_0x3272('0xe')])){_0x1a8cc3=[_0x17f6d3['interval']];}return _0x1a8cc3;}exports['listen']=function(_0x32f40f){_0x32f40f[_0x3272('0xf')]={};return new BPromise(function(_0x1b2992,_0x373d8b){var _0x3beaeb={'Start':function(_0x4c4490){var _0x31f2d1=this;return new Promise(function(_0x55ddae,_0x4f73db){if(_0x4c4490){try{var _0x870f23=[];var _0x1881fe=getId(_0x4c4490[_0x3272('0x10')],_0x4c4490[_0x3272('0x11')]?_0x4c4490[_0x3272('0x11')]['id']:0x0,_0x4c4490[_0x3272('0x12')]?_0x4c4490[_0x3272('0x12')]['id']:0x0);if(_0x4c4490[_0x3272('0x13')]&&_[_0x3272('0x14')](_0x4c4490[_0x3272('0x13')])&&_0x4c4490['applications']['length']){for(var _0x4942a5=0x0;_0x4942a5<_0x4c4490[_0x3272('0x13')][_0x3272('0x15')];_0x4942a5+=0x1){var _0x4b7e0c=_0x4c4490[_0x3272('0x13')][_0x4942a5];if(fs['existsSync'](path[_0x3272('0x16')](__dirname,_0x3272('0x13'),_0x4b7e0c['app']+'.js'))){var _0x5adf80=[];switch(_0x4b7e0c['app'][_0x3272('0x17')]()){case _0x3272('0x18'):var _0x531fdc=_0x4b7e0c['appdata']['split'](',');if(_0x4c4490[_0x3272('0x10')]===_0x3272('0x19')){_0x5adf80['push'](_0x531fdc[0x0]);_0x5adf80['push'](_0x531fdc[0x1]);_0x5adf80[_0x3272('0x1a')](_0x531fdc[_0x3272('0x1b')](0x2,_0x531fdc[_0x3272('0x15')])[_0x3272('0x16')](','));}else{_0x5adf80[_0x3272('0x1a')](_0x531fdc[0x0]);_0x5adf80[_0x3272('0x1a')](_0x531fdc['slice'](0x1,_0x531fdc[_0x3272('0x15')])[_0x3272('0x16')](','));}break;case'dialogflow':var _0x59fc13=_0x4b7e0c[_0x3272('0x1c')][_0x3272('0x1d')](',');_0x5adf80[_0x3272('0x1a')](_0x59fc13[0x0]);_0x5adf80[_0x3272('0x1a')](_0x59fc13[0x1]);_0x5adf80['push'](_0x59fc13['slice'](0x2,_0x59fc13[_0x3272('0x15')])['join'](','));break;case _0x3272('0x1e'):var _0x282915=_0x4b7e0c[_0x3272('0x1c')][_0x3272('0x1d')](',');_0x5adf80[_0x3272('0x1a')](_0x282915[0x0]);_0x5adf80[_0x3272('0x1a')](_0x282915[0x1]);_0x5adf80[_0x3272('0x1a')](_0x282915[0x2]);_0x5adf80[_0x3272('0x1a')](_0x282915[0x3]);_0x5adf80[_0x3272('0x1a')](_0x282915[_0x3272('0x1b')](0x4,_0x282915[_0x3272('0x15')])['join'](','));break;case _0x3272('0x1f'):var _0x3b73ea=_0x4b7e0c[_0x3272('0x1c')][_0x3272('0x1d')](',');_0x5adf80[_0x3272('0x1a')](_0x3b73ea[0x0]);_0x5adf80['push'](_0x3b73ea[0x1]);_0x5adf80[_0x3272('0x1a')](_0x3b73ea[0x2]);_0x5adf80[_0x3272('0x1a')](_0x3b73ea[0x3]);_0x5adf80[_0x3272('0x1a')](_0x3b73ea[_0x3272('0x1b')](0x4,_0x3b73ea[_0x3272('0x15')])[_0x3272('0x16')](','));break;case _0x3272('0x11'):_0x5adf80['push'](_0x4b7e0c[_0x3272('0x1c')]);break;case'tag':_0x5adf80['push'](_0x4b7e0c[_0x3272('0x20')]);_0x5adf80[_0x3272('0x1a')](_0x4b7e0c[_0x3272('0x1c')]);break;default:_0x5adf80=_[_0x3272('0xb')](_0x4b7e0c[_0x3272('0x1c')])?[]:_0x4b7e0c['appdata'][_0x3272('0x1d')](',');}var _0x27818e={'id':util[_0x3272('0x9')](_0x3272('0x21'),_0x1881fe,_0x4b7e0c['id'],_0x4b7e0c[_0x3272('0x22')]),'condition':require(_0x3272('0x23'))['condition'](_0x1881fe,getIntervals(_0x32f40f[_0x3272('0x24')],_0x4b7e0c),_0x32f40f),'consequence':require(_0x3272('0x25')+_0x4b7e0c[_0x3272('0x22')])[_0x3272('0x26')](_0x1881fe,_0x5adf80,_0x32f40f,_0x4c4490),'p':_0x4b7e0c[_0x3272('0x27')]||0x0};logger[_0x3272('0x28')]('Push\x20new\x20rule',_0x27818e['id'],_0x3272('0x29'),getIntervals(_0x32f40f[_0x3272('0x24')],_0x4b7e0c)[_0x3272('0x16')](_0x3272('0x2a')));_0x870f23['push'](_0x27818e);}else{logger[_0x3272('0x2b')](_0x3272('0x2c'),path['join'](__dirname,_0x3272('0x13'),_0x4b7e0c[_0x3272('0x22')]+_0x3272('0x2d')));}}_0x32f40f[_0x3272('0xf')][_0x1881fe]=new RuleEngine(_0x870f23);_0x32f40f[_0x3272('0xf')][_0x1881fe][_0x3272('0x2e')](_0x4c4490,function(_0x2c1d6b){logger[_0x3272('0x28')](_0x3272('0x2f'),JSON[_0x3272('0x30')](_0x2c1d6b['matchPath']));if(_0x32f40f[_0x3272('0xf')][_0x1881fe]){_0x32f40f['rules'][_0x1881fe]['emit'](_0x3272('0x31'));}});return _0x55ddae({'code':0xc8,'message':_0x4c4490});}else{logger[_0x3272('0x28')](_0x3272('0x32'));return _0x55ddae({'code':0xc8,'message':_0x4c4490});}}catch(_0x5b907f){logger[_0x3272('0x2b')](_0x5b907f[_0x3272('0x33')]);return _0x4f73db(_0x31f2d1['error'](0x1f4,_0x5b907f));}}return _0x4f73db(_0x3272('0x34'));});},'AcceptMessage':function(_0x53e1b9){var _0x565372=this;return new Promise(function(_0x253725,_0x17ca55){if(_0x53e1b9[_0x3272('0x35')]&&_0x53e1b9[_0x3272('0x35')]['id']){if(_0x32f40f[_0x3272('0x36')][_0x53e1b9[_0x3272('0x35')]['id']]){_0x32f40f['agents'][_0x53e1b9[_0x3272('0x35')]['id']][_0x3272('0x37')]=![];_0x32f40f[_0x3272('0x36')][_0x53e1b9[_0x3272('0x35')]['id']][_0x3272('0x38')]=undefined;}}if(_0x53e1b9[_0x3272('0x11')]&&_0x53e1b9[_0x3272('0x11')]['id']){try{var _0x14cab4=getId(_0x53e1b9[_0x3272('0x10')],_0x53e1b9[_0x3272('0x11')]?_0x53e1b9[_0x3272('0x11')]['id']:0x0,_0x53e1b9['interaction']?_0x53e1b9['interaction']['id']:0x0);if(_0x32f40f[_0x3272('0xf')][_0x14cab4]){_0x32f40f['rules'][_0x14cab4][_0x3272('0x39')](_0x3272('0x3a'));if(rpc[_0x53e1b9['channel']+_0x3272('0x3b')]){rpc[_0x53e1b9[_0x3272('0x10')]+_0x3272('0x3b')]['update'](_0x14cab4,{'UserId':_0x53e1b9[_0x3272('0x11')][_0x3272('0x3c')]})[_0x3272('0x3d')](function(_0x578206){logger[_0x3272('0x2b')](_0x3272('0x3e'));});}}return _0x253725({'code':0xc8,'message':_0x53e1b9});}catch(_0x1ee230){logger[_0x3272('0x2b')](_0x1ee230[_0x3272('0x33')]);return _0x17ca55(_0x565372[_0x3272('0x2b')](0x1f4,_0x1ee230));}}logger[_0x3272('0x2b')]('message\x20is\x20empty');return _0x17ca55(_0x565372['error'](0x1f4,'message\x20is\x20empty'));});},'RejectMessage':function(_0x45614a){var _0x3ed174=this;return new Promise(function(_0x20698a,_0x436a6e){if(_0x45614a['agent']&&_0x45614a[_0x3272('0x35')]['id']){try{if(_0x32f40f[_0x3272('0x36')][_0x45614a[_0x3272('0x35')]['id']]){_0x32f40f[_0x3272('0x36')][_0x45614a[_0x3272('0x35')]['id']]['busy']=![];_0x32f40f['agents'][_0x45614a[_0x3272('0x35')]['id']]['busyQueue']=undefined;}return _0x20698a({'code':0xc8,'message':_0x45614a});}catch(_0x109d10){logger['error'](_0x109d10[_0x3272('0x33')]);return _0x436a6e(_0x3ed174[_0x3272('0x2b')](0x1f4,_0x109d10));}}logger[_0x3272('0x2b')](_0x3272('0x3f'));return _0x436a6e(_0x3ed174['error'](0x1f4,_0x3272('0x3f')));});},'AbandonInteraction':function(_0x1b4d77){var _0x11210a=this;return new Promise(function(_0x4f9109,_0x551702){if(_0x1b4d77['channel']&&_0x1b4d77[_0x3272('0x12')]&&_0x1b4d77[_0x3272('0x12')]['id']){try{var _0x940231=getId(_0x1b4d77[_0x3272('0x10')],_0x1b4d77[_0x3272('0x11')]?_0x1b4d77[_0x3272('0x11')]['id']:0x0,_0x1b4d77[_0x3272('0x12')]?_0x1b4d77[_0x3272('0x12')]['id']:0x0);if(_0x32f40f['rules'][_0x940231]){_0x32f40f[_0x3272('0xf')][_0x940231][_0x3272('0x39')](_0x3272('0x3a'));}return _0x4f9109({'code':0xc8,'message':_0x1b4d77});}catch(_0x8a246b){logger[_0x3272('0x2b')](_0x8a246b[_0x3272('0x33')]);return _0x551702(_0x11210a[_0x3272('0x2b')](0x1f4,_0x8a246b));}}logger[_0x3272('0x2b')](_0x3272('0x3f'));return _0x551702(_0x11210a[_0x3272('0x2b')](0x1f4,'message\x20is\x20empty'));});},'AgentCapacity':function(_0x5372a2){var _0x1a5444=this;return new Promise(function(_0xbf08ff,_0x5c7bdc){if(_0x32f40f['agents'][_0x3272('0x40')](_0x5372a2['id'])){for(var _0x463d87 in _0x5372a2[_0x3272('0x41')]){if(_0x5372a2['capacity'][_0x3272('0x40')](_0x463d87)){if(_0x32f40f[_0x3272('0x36')][_0x5372a2['id']][_0x3272('0x40')](_0x463d87+_0x3272('0x42'))){_0x32f40f[_0x3272('0x36')][_0x5372a2['id']][_0x463d87+_0x3272('0x42')]=parseInt(_0x5372a2['capacity'][_0x463d87],0xa);}}}_0x32f40f[_0x3272('0x36')][_0x5372a2['id']][_0x3272('0x43')]();return _0xbf08ff({'code':0xc8,'message':_0x32f40f[_0x3272('0x36')][_0x5372a2['id']]});}else{return _0x5c7bdc(_0x1a5444['error'](0x1f4,_0x3272('0x44')));}});},'Agents':function(_0x5f208f){return new Promise(function(_0x42bb80,_0x3f9271){var _0x32dcdc=_[_0x3272('0x45')](_0x32f40f['agents']);_0x42bb80({'count':_0x32dcdc['length'],'rows':_0x32dcdc});});},'ChatQueues':function(_0x59b7c2){return new Promise(function(_0x1134ec,_0x56861e){var _0xf82da6=[];for(var _0x40b53b in _0x32f40f[_0x3272('0x46')]){if(_0x32f40f[_0x3272('0x46')][_0x3272('0x40')](_0x40b53b)){var _0x4fdae1=_0x32f40f[_0x3272('0x46')][_0x40b53b];var _0xba18b0={'id':_0x4fdae1['id'],'available':_0x4fdae1[_0x3272('0x47')],'loggedIn':_0x4fdae1[_0x3272('0x48')],'name':_0x4fdae1[_0x3272('0x49')],'paused':_0x4fdae1[_0x3272('0x4a')],'waiting':_0x4fdae1[_0x3272('0x4b')]};_0xf82da6[_0x3272('0x1a')](_0xba18b0);}}_0x1134ec({'count':_0xf82da6[_0x3272('0x15')],'rows':_0xf82da6});});},'MailQueues':function(_0x4badab){return new Promise(function(_0x510ae7,_0x1e7f40){var _0x581085=[];for(var _0x23af38 in _0x32f40f[_0x3272('0x4c')]){if(_0x32f40f[_0x3272('0x4c')][_0x3272('0x40')](_0x23af38)){var _0x4b99c0=_0x32f40f[_0x3272('0x4c')][_0x23af38];var _0x14063a={'id':_0x4b99c0['id'],'available':_0x4b99c0[_0x3272('0x47')],'loggedIn':_0x4b99c0['loggedIn'],'name':_0x4b99c0['name'],'paused':_0x4b99c0[_0x3272('0x4a')],'waiting':_0x4b99c0[_0x3272('0x4b')]};_0x581085[_0x3272('0x1a')](_0x14063a);}}_0x510ae7({'count':_0x581085[_0x3272('0x15')],'rows':_0x581085});});},'OpenchannelQueues':function(_0x4b85eb){return new Promise(function(_0x37f79f,_0x5bf37b){var _0x3b01a9=[];for(var _0x8d8529 in _0x32f40f[_0x3272('0x4d')]){if(_0x32f40f[_0x3272('0x4d')][_0x3272('0x40')](_0x8d8529)){var _0x27b0c9=_0x32f40f[_0x3272('0x4d')][_0x8d8529];var _0x521795={'id':_0x27b0c9['id'],'available':_0x27b0c9['available'],'loggedIn':_0x27b0c9['loggedIn'],'name':_0x27b0c9[_0x3272('0x49')],'paused':_0x27b0c9[_0x3272('0x4a')],'waiting':_0x27b0c9[_0x3272('0x4b')]};_0x3b01a9[_0x3272('0x1a')](_0x521795);}}_0x37f79f({'count':_0x3b01a9['length'],'rows':_0x3b01a9});});},'SmsQueues':function(_0x17be8f){return new Promise(function(_0x46cc3f,_0x24bf48){var _0x280791=[];for(var _0xbd4f8a in _0x32f40f[_0x3272('0x4e')]){if(_0x32f40f[_0x3272('0x4e')][_0x3272('0x40')](_0xbd4f8a)){var _0x178255=_0x32f40f[_0x3272('0x4e')][_0xbd4f8a];var _0x44d7b9={'id':_0x178255['id'],'available':_0x178255[_0x3272('0x47')],'loggedIn':_0x178255['loggedIn'],'name':_0x178255[_0x3272('0x49')],'paused':_0x178255[_0x3272('0x4a')],'waiting':_0x178255[_0x3272('0x4b')]};_0x280791[_0x3272('0x1a')](_0x44d7b9);}}_0x46cc3f({'count':_0x280791[_0x3272('0x15')],'rows':_0x280791});});},'FaxQueues':function(_0x5c6c1d){return new Promise(function(_0x570a84,_0x26d36a){var _0x12e284=[];for(var _0x1c38ab in _0x32f40f['faxQueues']){if(_0x32f40f[_0x3272('0x4f')][_0x3272('0x40')](_0x1c38ab)){var _0x26de23=_0x32f40f['faxQueues'][_0x1c38ab];var _0x2e0ab9={'id':_0x26de23['id'],'available':_0x26de23[_0x3272('0x47')],'loggedIn':_0x26de23[_0x3272('0x48')],'name':_0x26de23[_0x3272('0x49')],'paused':_0x26de23[_0x3272('0x4a')],'waiting':_0x26de23['waiting']};_0x12e284[_0x3272('0x1a')](_0x2e0ab9);}}_0x570a84({'count':_0x12e284['length'],'rows':_0x12e284});});},'WhatsappQueues':function(_0x5922de){return new Promise(function(_0x572427,_0x136914){var _0x348a12=[];for(var _0x376c3a in _0x32f40f[_0x3272('0x50')]){if(_0x32f40f['whatsappQueues'][_0x3272('0x40')](_0x376c3a)){var _0x2b64aa=_0x32f40f[_0x3272('0x50')][_0x376c3a];var _0x2472b3={'id':_0x2b64aa['id'],'available':_0x2b64aa[_0x3272('0x47')],'loggedIn':_0x2b64aa[_0x3272('0x48')],'name':_0x2b64aa[_0x3272('0x49')],'paused':_0x2b64aa[_0x3272('0x4a')],'waiting':_0x2b64aa[_0x3272('0x4b')]};_0x348a12[_0x3272('0x1a')](_0x2472b3);}}_0x572427({'count':_0x348a12[_0x3272('0x15')],'rows':_0x348a12});});},'ChatQueuesWaitingInteractions':function(_0x4fca8e){return new Promise(function(_0x52b3fb,_0x55a185){var _0x39e0f5=_[_0x3272('0x45')](_0x32f40f[_0x3272('0x51')]);_0x52b3fb({'count':_0x39e0f5['length'],'rows':_0x39e0f5});});},'MailQueuesWaitingInteractions':function(_0x4a41e9){return new Promise(function(_0x4251b4,_0x55038b){var _0x1dea89=_[_0x3272('0x45')](_0x32f40f['mailQueuesWaitingInteractions']);_0x4251b4({'count':_0x1dea89[_0x3272('0x15')],'rows':_0x1dea89});});},'OpenchannelQueuesWaitingInteractions':function(_0x2c4dff){return new Promise(function(_0x1c8fd3,_0x59e70c){var _0x319f66=_[_0x3272('0x45')](_0x32f40f[_0x3272('0x52')]);_0x1c8fd3({'count':_0x319f66[_0x3272('0x15')],'rows':_0x319f66});});},'SmsQueuesWaitingInteractions':function(_0x4dd585){return new Promise(function(_0x5d914f,_0x52fd40){var _0x4a6e1e=_[_0x3272('0x45')](_0x32f40f[_0x3272('0x53')]);_0x5d914f({'count':_0x4a6e1e[_0x3272('0x15')],'rows':_0x4a6e1e});});},'FaxQueuesWaitingInteractions':function(_0x363bb6){return new Promise(function(_0x552b38,_0x98e23a){var _0x20a084=_[_0x3272('0x45')](_0x32f40f['faxQueuesWaitingInteractions']);_0x552b38({'count':_0x20a084[_0x3272('0x15')],'rows':_0x20a084});});},'WhatsappQueuesWaitingInteractions':function(_0x1ef505){return new Promise(function(_0x8ca1d3,_0x2b63a9){var _0x43d66d=_[_0x3272('0x45')](_0x32f40f['whatsappQueuesWaitingInteractions']);_0x8ca1d3({'count':_0x43d66d[_0x3272('0x15')],'rows':_0x43d66d});});}};var _0x47d119=jayson[_0x3272('0x54')](_0x3beaeb)[_0x3272('0x55')]();_0x47d119['on'](_0x3272('0x2b'),function(_0x5aeab7){logger[_0x3272('0x2b')](JSON[_0x3272('0x30')](_0x5aeab7));return _0x373d8b(_0x5aeab7);});_0x47d119[_0x3272('0x56')](0x232c,_0x3272('0x57'),function(){console[_0x3272('0x58')](_0x3272('0x59'),0x232c);return _0x1b2992('RPC\x20listening\x20on\x20port:'+0x232c);});});};
\ No newline at end of file
+var _0x05b0=['existsSync','join','.js','app','toLowerCase','autoreply','split','mail','push','slice','dialogflow','appdata','dialogflowv2','amazonlex','tag','TagId','tvox','getMustacheRender','account','notificationTemplate','ChatWebsiteId','ContactId','body','%s:%s:%s','./interval','condition','intervals','./applications/','info','Push\x20new\x20rule','on\x20interval','error','Please\x20create\x20a\x20new\x20file\x20under','rules','execute','Applications\x20executed','stringify','matchPath','emit','complete','No\x20applications\x20to\x20execute','stack','routing\x20is\x20empty','agent','agents','end','QueueReport','update','UserId','catch','message\x20is\x20empty','hasOwnProperty','capacity','CurrentCapacity','updateRealtime','agent\x20not\x20found','values','chatQueues','available','loggedIn','name','paused','waiting','mailQueues','openchannelQueues','smsQueues','faxQueues','whatsappQueues','chatQueuesWaitingInteractions','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:','path','jayson/promise','uuid','./applications/utils','../../../config/logger','routing','../rpc/mailQueueReport','../rpc/chatQueueReport','../rpc/smsQueueReport','../rpc/faxQueueReport','../rpc/whatsappQueueReport','../lib/rule-engine','format','isNil','IntervalId','Intervals','map','interval','channel','message','interaction','isArray','applications','length'];(function(_0x10890a,_0x282ef5){var _0x4a91bb=function(_0x43d9d5){while(--_0x43d9d5){_0x10890a['push'](_0x10890a['shift']());}};_0x4a91bb(++_0x282ef5);}(_0x05b0,0x188));var _0x005b=function(_0x190f0f,_0x55ef9c){_0x190f0f=_0x190f0f-0x0;var _0x4d6736=_0x05b0[_0x190f0f];return _0x4d6736;};'use strict';var _=require('lodash');var util=require('util');var path=require(_0x005b('0x0'));var fs=require('fs');var jayson=require(_0x005b('0x1'));var BPromise=require('bluebird');var uuid=require(_0x005b('0x2'));var utils=require(_0x005b('0x3'));var config=require('../../../config/environment');var logger=require(_0x005b('0x4'))(_0x005b('0x5'));var rpc={'openchannelQueueReport':require('../rpc/openchannelQueueReport'),'mailQueueReport':require(_0x005b('0x6')),'chatQueueReport':require(_0x005b('0x7')),'smsQueueReport':require(_0x005b('0x8')),'faxQueueReport':require(_0x005b('0x9')),'whatsappQueueReport':require(_0x005b('0xa'))};var RuleEngine=require(_0x005b('0xb'));function getId(_0x263bc9,_0x5cff7f,_0x224892){return util[_0x005b('0xc')]('%s.%s.%s',_0x263bc9,_0x5cff7f||0x0,_0x224892||0x0);}function getIntervals(_0x53fff4,_0x451641){var _0x4d41b8=[];if(!_['isNil'](_0x451641['IntervalId'])&&!_[_0x005b('0xd')](_0x53fff4[_0x451641[_0x005b('0xe')]])&&!_['isNil'](_0x53fff4[_0x451641[_0x005b('0xe')]][_0x005b('0xf')])){_0x4d41b8=_[_0x005b('0x10')](_0x53fff4[_0x451641[_0x005b('0xe')]][_0x005b('0xf')],_0x005b('0x11'));}else if(!_[_0x005b('0xd')](_0x451641['interval'])){_0x4d41b8=[_0x451641['interval']];}return _0x4d41b8;}exports['listen']=function(_0x309c8f){_0x309c8f['rules']={};return new BPromise(function(_0x3e2c82,_0x52f822){var _0x1c8eed={'Start':function(_0x1f7743){var _0x2ce01e=this;return new Promise(function(_0x1991e8,_0x337ca1){if(_0x1f7743){try{var _0x500c1a=[];var _0xa3c3fb=getId(_0x1f7743[_0x005b('0x12')],_0x1f7743[_0x005b('0x13')]?_0x1f7743['message']['id']:0x0,_0x1f7743[_0x005b('0x14')]?_0x1f7743[_0x005b('0x14')]['id']:0x0);if(_0x1f7743['applications']&&_[_0x005b('0x15')](_0x1f7743[_0x005b('0x16')])&&_0x1f7743[_0x005b('0x16')][_0x005b('0x17')]){for(var _0xf51601=0x0;_0xf51601<_0x1f7743['applications'][_0x005b('0x17')];_0xf51601+=0x1){var _0x38cc3b=_0x1f7743['applications'][_0xf51601];if(fs[_0x005b('0x18')](path[_0x005b('0x19')](__dirname,_0x005b('0x16'),_0x38cc3b['app']+_0x005b('0x1a')))){var _0x145c36=[];switch(_0x38cc3b[_0x005b('0x1b')][_0x005b('0x1c')]()){case _0x005b('0x1d'):var _0x2e3ccd=_0x38cc3b['appdata'][_0x005b('0x1e')](',');if(_0x1f7743[_0x005b('0x12')]===_0x005b('0x1f')){_0x145c36['push'](_0x2e3ccd[0x0]);_0x145c36[_0x005b('0x20')](_0x2e3ccd[0x1]);_0x145c36['push'](_0x2e3ccd[_0x005b('0x21')](0x2,_0x2e3ccd['length'])['join'](','));}else{_0x145c36[_0x005b('0x20')](_0x2e3ccd[0x0]);_0x145c36[_0x005b('0x20')](_0x2e3ccd[_0x005b('0x21')](0x1,_0x2e3ccd[_0x005b('0x17')])[_0x005b('0x19')](','));}break;case _0x005b('0x22'):var _0x3d4a1c=_0x38cc3b[_0x005b('0x23')]['split'](',');_0x145c36[_0x005b('0x20')](_0x3d4a1c[0x0]);_0x145c36[_0x005b('0x20')](_0x3d4a1c[0x1]);_0x145c36[_0x005b('0x20')](_0x3d4a1c[_0x005b('0x21')](0x2,_0x3d4a1c[_0x005b('0x17')])[_0x005b('0x19')](','));break;case _0x005b('0x24'):var _0x49561a=_0x38cc3b[_0x005b('0x23')][_0x005b('0x1e')](',');_0x145c36[_0x005b('0x20')](_0x49561a[0x0]);_0x145c36[_0x005b('0x20')](_0x49561a[0x1]);_0x145c36['push'](_0x49561a[0x2]);_0x145c36['push'](_0x49561a[0x3]);_0x145c36[_0x005b('0x20')](_0x49561a[_0x005b('0x21')](0x4,_0x49561a['length'])['join'](','));break;case _0x005b('0x25'):var _0x5b555f=_0x38cc3b[_0x005b('0x23')][_0x005b('0x1e')](',');_0x145c36[_0x005b('0x20')](_0x5b555f[0x0]);_0x145c36['push'](_0x5b555f[0x1]);_0x145c36['push'](_0x5b555f[0x2]);_0x145c36[_0x005b('0x20')](_0x5b555f[0x3]);_0x145c36[_0x005b('0x20')](_0x5b555f[_0x005b('0x21')](0x4,_0x5b555f['length'])['join'](','));break;case _0x005b('0x13'):_0x145c36[_0x005b('0x20')](_0x38cc3b['appdata']);break;case _0x005b('0x26'):_0x145c36['push'](_0x38cc3b[_0x005b('0x27')]);_0x145c36['push'](_0x38cc3b['appdata']);break;case _0x005b('0x28'):var _0x413d90=utils[_0x005b('0x29')](_0x1f7743[_0x005b('0x2a')][_0x005b('0x2b')],_0x1f7743);var _0x52bffe=_0x38cc3b['appdata'][_0x005b('0x1e')](',');_0x145c36[_0x005b('0x20')](_0x52bffe[0x0]);_0x145c36[_0x005b('0x20')](_0x52bffe[0x1]);_0x145c36[_0x005b('0x20')](_0x52bffe[0x2]);_0x145c36[_0x005b('0x20')](_0x52bffe[0x3]);_0x145c36[_0x005b('0x20')](_0x52bffe[0x4]);_0x145c36['push'](_0x52bffe[0x5]);_0x145c36[_0x005b('0x20')](_0x52bffe[0x6]);_0x145c36[_0x005b('0x20')](_0x52bffe[0x7]);_0x145c36[_0x005b('0x20')](_0x52bffe[0x8]);_0x145c36['push'](_0x52bffe[0x9]);_0x145c36[_0x005b('0x20')](_0x52bffe[0xa]);_0x145c36[_0x005b('0x20')](_0x1f7743[_0x005b('0x14')]['id']);_0x145c36[_0x005b('0x20')](_0x1f7743[_0x005b('0x13')]['id']);_0x145c36[_0x005b('0x20')](_0x38cc3b[_0x005b('0x2c')]);_0x145c36[_0x005b('0x20')](_0x1f7743[_0x005b('0x14')][_0x005b('0x2d')]);_0x145c36['push'](_0x1f7743[_0x005b('0x2e')][_0x005b('0x2e')]);_0x145c36['push'](_0x413d90);break;default:_0x145c36=_[_0x005b('0xd')](_0x38cc3b[_0x005b('0x23')])?[]:_0x38cc3b[_0x005b('0x23')][_0x005b('0x1e')](',');}var _0x4ec11c={'id':util[_0x005b('0xc')](_0x005b('0x2f'),_0xa3c3fb,_0x38cc3b['id'],_0x38cc3b['app']),'condition':require(_0x005b('0x30'))[_0x005b('0x31')](_0xa3c3fb,getIntervals(_0x309c8f[_0x005b('0x32')],_0x38cc3b),_0x309c8f),'consequence':require(_0x005b('0x33')+_0x38cc3b[_0x005b('0x1b')])['consequence'](_0xa3c3fb,_0x145c36,_0x309c8f,_0x1f7743),'p':_0x38cc3b['priority']||0x0};logger[_0x005b('0x34')](_0x005b('0x35'),_0x4ec11c['id'],_0x005b('0x36'),getIntervals(_0x309c8f[_0x005b('0x32')],_0x38cc3b)[_0x005b('0x19')]('\x20|\x20'));_0x500c1a[_0x005b('0x20')](_0x4ec11c);}else{logger[_0x005b('0x37')](_0x005b('0x38'),path[_0x005b('0x19')](__dirname,_0x005b('0x16'),_0x38cc3b[_0x005b('0x1b')]+'.js'));}}_0x309c8f[_0x005b('0x39')][_0xa3c3fb]=new RuleEngine(_0x500c1a);_0x309c8f['rules'][_0xa3c3fb][_0x005b('0x3a')](_0x1f7743,function(_0x26375b){logger['info'](_0x005b('0x3b'),JSON[_0x005b('0x3c')](_0x26375b[_0x005b('0x3d')]));if(_0x309c8f[_0x005b('0x39')][_0xa3c3fb]){_0x309c8f['rules'][_0xa3c3fb][_0x005b('0x3e')](_0x005b('0x3f'));}});return _0x1991e8({'code':0xc8,'message':_0x1f7743});}else{logger[_0x005b('0x34')](_0x005b('0x40'));return _0x1991e8({'code':0xc8,'message':_0x1f7743});}}catch(_0x3a5d41){logger[_0x005b('0x37')](_0x3a5d41[_0x005b('0x41')]);return _0x337ca1(_0x2ce01e[_0x005b('0x37')](0x1f4,_0x3a5d41));}}return _0x337ca1(_0x005b('0x42'));});},'AcceptMessage':function(_0x5699d8){var _0x1fed84=this;return new Promise(function(_0x30947e,_0x34fabc){if(_0x5699d8[_0x005b('0x43')]&&_0x5699d8[_0x005b('0x43')]['id']){if(_0x309c8f['agents'][_0x5699d8[_0x005b('0x43')]['id']]){_0x309c8f[_0x005b('0x44')][_0x5699d8[_0x005b('0x43')]['id']]['busy']=![];_0x309c8f[_0x005b('0x44')][_0x5699d8['agent']['id']]['busyQueue']=undefined;}}if(_0x5699d8['message']&&_0x5699d8['message']['id']){try{var _0x134a46=getId(_0x5699d8[_0x005b('0x12')],_0x5699d8[_0x005b('0x13')]?_0x5699d8[_0x005b('0x13')]['id']:0x0,_0x5699d8['interaction']?_0x5699d8[_0x005b('0x14')]['id']:0x0);if(_0x309c8f[_0x005b('0x39')][_0x134a46]){_0x309c8f['rules'][_0x134a46][_0x005b('0x3e')](_0x005b('0x45'));if(rpc[_0x5699d8[_0x005b('0x12')]+_0x005b('0x46')]){rpc[_0x5699d8[_0x005b('0x12')]+'QueueReport'][_0x005b('0x47')](_0x134a46,{'UserId':_0x5699d8[_0x005b('0x13')][_0x005b('0x48')]})[_0x005b('0x49')](function(_0x19ca85){logger[_0x005b('0x37')]('error\x20update\x20queue\x20report');});}}return _0x30947e({'code':0xc8,'message':_0x5699d8});}catch(_0x44fee3){logger[_0x005b('0x37')](_0x44fee3[_0x005b('0x41')]);return _0x34fabc(_0x1fed84[_0x005b('0x37')](0x1f4,_0x44fee3));}}logger[_0x005b('0x37')](_0x005b('0x4a'));return _0x34fabc(_0x1fed84['error'](0x1f4,_0x005b('0x4a')));});},'RejectMessage':function(_0x13a680){var _0x5cea23=this;return new Promise(function(_0x5bbc78,_0x22bf46){if(_0x13a680[_0x005b('0x43')]&&_0x13a680[_0x005b('0x43')]['id']){try{if(_0x309c8f[_0x005b('0x44')][_0x13a680[_0x005b('0x43')]['id']]){_0x309c8f[_0x005b('0x44')][_0x13a680[_0x005b('0x43')]['id']]['busy']=![];_0x309c8f[_0x005b('0x44')][_0x13a680['agent']['id']]['busyQueue']=undefined;}return _0x5bbc78({'code':0xc8,'message':_0x13a680});}catch(_0x35d9df){logger[_0x005b('0x37')](_0x35d9df[_0x005b('0x41')]);return _0x22bf46(_0x5cea23['error'](0x1f4,_0x35d9df));}}logger[_0x005b('0x37')](_0x005b('0x4a'));return _0x22bf46(_0x5cea23[_0x005b('0x37')](0x1f4,'message\x20is\x20empty'));});},'AbandonInteraction':function(_0x17018b){var _0x4f4130=this;return new Promise(function(_0x41f077,_0x20540a){if(_0x17018b['channel']&&_0x17018b[_0x005b('0x14')]&&_0x17018b[_0x005b('0x14')]['id']){try{var _0x2a4559=getId(_0x17018b[_0x005b('0x12')],_0x17018b[_0x005b('0x13')]?_0x17018b[_0x005b('0x13')]['id']:0x0,_0x17018b['interaction']?_0x17018b[_0x005b('0x14')]['id']:0x0);if(_0x309c8f[_0x005b('0x39')][_0x2a4559]){_0x309c8f[_0x005b('0x39')][_0x2a4559][_0x005b('0x3e')](_0x005b('0x45'));}return _0x41f077({'code':0xc8,'message':_0x17018b});}catch(_0x630c8){logger['error'](_0x630c8[_0x005b('0x41')]);return _0x20540a(_0x4f4130['error'](0x1f4,_0x630c8));}}logger[_0x005b('0x37')](_0x005b('0x4a'));return _0x20540a(_0x4f4130[_0x005b('0x37')](0x1f4,_0x005b('0x4a')));});},'AgentCapacity':function(_0x31e6f5){var _0x2ee675=this;return new Promise(function(_0x31355d,_0x45f561){if(_0x309c8f[_0x005b('0x44')][_0x005b('0x4b')](_0x31e6f5['id'])){for(var _0x20a986 in _0x31e6f5[_0x005b('0x4c')]){if(_0x31e6f5[_0x005b('0x4c')][_0x005b('0x4b')](_0x20a986)){if(_0x309c8f[_0x005b('0x44')][_0x31e6f5['id']]['hasOwnProperty'](_0x20a986+_0x005b('0x4d'))){_0x309c8f[_0x005b('0x44')][_0x31e6f5['id']][_0x20a986+_0x005b('0x4d')]=parseInt(_0x31e6f5[_0x005b('0x4c')][_0x20a986],0xa);}}}_0x309c8f[_0x005b('0x44')][_0x31e6f5['id']][_0x005b('0x4e')]();return _0x31355d({'code':0xc8,'message':_0x309c8f[_0x005b('0x44')][_0x31e6f5['id']]});}else{return _0x45f561(_0x2ee675['error'](0x1f4,_0x005b('0x4f')));}});},'Agents':function(_0x4a5ae5){return new Promise(function(_0x379b37,_0x4bd368){var _0x21d474=_[_0x005b('0x50')](_0x309c8f['agents']);_0x379b37({'count':_0x21d474[_0x005b('0x17')],'rows':_0x21d474});});},'ChatQueues':function(_0x275094){return new Promise(function(_0x10d9d2,_0x2b7f3e){var _0x2d3aeb=[];for(var _0x6fc481 in _0x309c8f[_0x005b('0x51')]){if(_0x309c8f[_0x005b('0x51')][_0x005b('0x4b')](_0x6fc481)){var _0x4262d9=_0x309c8f['chatQueues'][_0x6fc481];var _0x56209a={'id':_0x4262d9['id'],'available':_0x4262d9[_0x005b('0x52')],'loggedIn':_0x4262d9[_0x005b('0x53')],'name':_0x4262d9[_0x005b('0x54')],'paused':_0x4262d9[_0x005b('0x55')],'waiting':_0x4262d9[_0x005b('0x56')]};_0x2d3aeb[_0x005b('0x20')](_0x56209a);}}_0x10d9d2({'count':_0x2d3aeb[_0x005b('0x17')],'rows':_0x2d3aeb});});},'MailQueues':function(_0x28f177){return new Promise(function(_0x396db4,_0x34069e){var _0x3f0853=[];for(var _0x42ce59 in _0x309c8f[_0x005b('0x57')]){if(_0x309c8f['mailQueues'][_0x005b('0x4b')](_0x42ce59)){var _0x453e64=_0x309c8f['mailQueues'][_0x42ce59];var _0xaca777={'id':_0x453e64['id'],'available':_0x453e64[_0x005b('0x52')],'loggedIn':_0x453e64[_0x005b('0x53')],'name':_0x453e64[_0x005b('0x54')],'paused':_0x453e64[_0x005b('0x55')],'waiting':_0x453e64[_0x005b('0x56')]};_0x3f0853[_0x005b('0x20')](_0xaca777);}}_0x396db4({'count':_0x3f0853[_0x005b('0x17')],'rows':_0x3f0853});});},'OpenchannelQueues':function(_0x2c4280){return new Promise(function(_0x5a6146,_0x46cd37){var _0x30e985=[];for(var _0x7a2336 in _0x309c8f[_0x005b('0x58')]){if(_0x309c8f[_0x005b('0x58')][_0x005b('0x4b')](_0x7a2336)){var _0x11c502=_0x309c8f[_0x005b('0x58')][_0x7a2336];var _0x21c970={'id':_0x11c502['id'],'available':_0x11c502[_0x005b('0x52')],'loggedIn':_0x11c502[_0x005b('0x53')],'name':_0x11c502[_0x005b('0x54')],'paused':_0x11c502[_0x005b('0x55')],'waiting':_0x11c502['waiting']};_0x30e985[_0x005b('0x20')](_0x21c970);}}_0x5a6146({'count':_0x30e985['length'],'rows':_0x30e985});});},'SmsQueues':function(_0xcf64fb){return new Promise(function(_0x511691,_0x38dba1){var _0x369819=[];for(var _0x38ff2b in _0x309c8f[_0x005b('0x59')]){if(_0x309c8f[_0x005b('0x59')][_0x005b('0x4b')](_0x38ff2b)){var _0x426340=_0x309c8f['smsQueues'][_0x38ff2b];var _0x4d1908={'id':_0x426340['id'],'available':_0x426340[_0x005b('0x52')],'loggedIn':_0x426340[_0x005b('0x53')],'name':_0x426340['name'],'paused':_0x426340[_0x005b('0x55')],'waiting':_0x426340[_0x005b('0x56')]};_0x369819['push'](_0x4d1908);}}_0x511691({'count':_0x369819[_0x005b('0x17')],'rows':_0x369819});});},'FaxQueues':function(_0x570c86){return new Promise(function(_0x46e257,_0x5496bf){var _0x16a3d8=[];for(var _0x1c38a4 in _0x309c8f['faxQueues']){if(_0x309c8f[_0x005b('0x5a')][_0x005b('0x4b')](_0x1c38a4)){var _0x1cd0b6=_0x309c8f[_0x005b('0x5a')][_0x1c38a4];var _0x1b3d90={'id':_0x1cd0b6['id'],'available':_0x1cd0b6[_0x005b('0x52')],'loggedIn':_0x1cd0b6[_0x005b('0x53')],'name':_0x1cd0b6['name'],'paused':_0x1cd0b6[_0x005b('0x55')],'waiting':_0x1cd0b6[_0x005b('0x56')]};_0x16a3d8[_0x005b('0x20')](_0x1b3d90);}}_0x46e257({'count':_0x16a3d8[_0x005b('0x17')],'rows':_0x16a3d8});});},'WhatsappQueues':function(_0x264d3a){return new Promise(function(_0x314ac6,_0x34ac7b){var _0x3fe0e3=[];for(var _0x4294b3 in _0x309c8f[_0x005b('0x5b')]){if(_0x309c8f[_0x005b('0x5b')][_0x005b('0x4b')](_0x4294b3)){var _0x372369=_0x309c8f[_0x005b('0x5b')][_0x4294b3];var _0x4e43f2={'id':_0x372369['id'],'available':_0x372369['available'],'loggedIn':_0x372369[_0x005b('0x53')],'name':_0x372369[_0x005b('0x54')],'paused':_0x372369['paused'],'waiting':_0x372369['waiting']};_0x3fe0e3[_0x005b('0x20')](_0x4e43f2);}}_0x314ac6({'count':_0x3fe0e3[_0x005b('0x17')],'rows':_0x3fe0e3});});},'ChatQueuesWaitingInteractions':function(_0x4291be){return new Promise(function(_0x65807b,_0x32b9bd){var _0x19addd=_[_0x005b('0x50')](_0x309c8f[_0x005b('0x5c')]);_0x65807b({'count':_0x19addd[_0x005b('0x17')],'rows':_0x19addd});});},'MailQueuesWaitingInteractions':function(_0x456e44){return new Promise(function(_0x59d464,_0x11a6ab){var _0x4a2e7a=_[_0x005b('0x50')](_0x309c8f[_0x005b('0x5d')]);_0x59d464({'count':_0x4a2e7a[_0x005b('0x17')],'rows':_0x4a2e7a});});},'OpenchannelQueuesWaitingInteractions':function(_0x581b79){return new Promise(function(_0x3aa379,_0x1921a5){var _0x2696fb=_[_0x005b('0x50')](_0x309c8f[_0x005b('0x5e')]);_0x3aa379({'count':_0x2696fb[_0x005b('0x17')],'rows':_0x2696fb});});},'SmsQueuesWaitingInteractions':function(_0x44dd54){return new Promise(function(_0x54a58b,_0x118e8f){var _0x4b5bf6=_[_0x005b('0x50')](_0x309c8f[_0x005b('0x5f')]);_0x54a58b({'count':_0x4b5bf6['length'],'rows':_0x4b5bf6});});},'FaxQueuesWaitingInteractions':function(_0x2de5b6){return new Promise(function(_0x103ef4,_0x1e9683){var _0x1a2efb=_[_0x005b('0x50')](_0x309c8f[_0x005b('0x60')]);_0x103ef4({'count':_0x1a2efb[_0x005b('0x17')],'rows':_0x1a2efb});});},'WhatsappQueuesWaitingInteractions':function(_0x2107cb){return new Promise(function(_0x14d189,_0xa30ed2){var _0x360b08=_[_0x005b('0x50')](_0x309c8f['whatsappQueuesWaitingInteractions']);_0x14d189({'count':_0x360b08[_0x005b('0x17')],'rows':_0x360b08});});}};var _0x3ab540=jayson[_0x005b('0x61')](_0x1c8eed)[_0x005b('0x62')]();_0x3ab540['on'](_0x005b('0x37'),function(_0x44bc20){logger[_0x005b('0x37')](JSON[_0x005b('0x3c')](_0x44bc20));return _0x52f822(_0x44bc20);});_0x3ab540[_0x005b('0x63')](0x232c,_0x005b('0x64'),function(){console[_0x005b('0x65')](_0x005b('0x66'),0x232c);return _0x3e2c82(_0x005b('0x67')+0x232c);});});};
\ No newline at end of file