Built motion from commit 9d1906d1.|2.5.40
[motion2.git] / server / services / routing / server / index.js
index 65b1c84..c99e9ef 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0xb28a=['listen','rules','message','interaction','applications','isArray','length','existsSync','join','app','toLowerCase','autoreply','appdata','split','channel','mail','push','dialogflow','slice','dialogflowv2','%s:%s:%s','./interval','condition','./applications/','consequence','priority','info','Push\x20new\x20rule','on\x20interval','intervals','\x20|\x20','Please\x20create\x20a\x20new\x20file\x20under','.js','execute','stringify','matchPath','emit','complete','No\x20applications\x20to\x20execute','error','routing\x20is\x20empty','agents','agent','busyQueue','update','UserId','catch','stack','message\x20is\x20empty','busy','end','hasOwnProperty','CurrentCapacity','capacity','updateRealtime','agent\x20not\x20found','values','chatQueues','available','name','waiting','mailQueues','loggedIn','paused','openchannelQueues','faxQueues','whatsappQueues','chatQueuesWaitingInteractions','mailQueuesWaitingInteractions','faxQueuesWaitingInteractions','whatsappQueuesWaitingInteractions','server','http','127.0.0.1','Routing\x20RPC\x20server\x20listening\x20on\x20127.0.0.1:%d!','RPC\x20listening\x20on\x20port:','util','path','bluebird','routing','../rpc/openchannelQueueReport','../rpc/mailQueueReport','../rpc/chatQueueReport','../rpc/smsQueueReport','../rpc/faxQueueReport','../rpc/whatsappQueueReport','../lib/rule-engine','format','%s.%s.%s','IntervalId','isNil','Intervals','map','interval'];(function(_0x474d03,_0x5291a1){var _0x562c21=function(_0x32cb22){while(--_0x32cb22){_0x474d03['push'](_0x474d03['shift']());}};_0x562c21(++_0x5291a1);}(_0xb28a,0x166));var _0xab28=function(_0x1f2142,_0x3b88ba){_0x1f2142=_0x1f2142-0x0;var _0x108b15=_0xb28a[_0x1f2142];return _0x108b15;};'use strict';var _=require('lodash');var util=require(_0xab28('0x0'));var path=require(_0xab28('0x1'));var fs=require('fs');var jayson=require('jayson/promise');var BPromise=require(_0xab28('0x2'));var uuid=require('uuid');var config=require('../../../config/environment');var logger=require('../../../config/logger')(_0xab28('0x3'));var rpc={'openchannelQueueReport':require(_0xab28('0x4')),'mailQueueReport':require(_0xab28('0x5')),'chatQueueReport':require(_0xab28('0x6')),'smsQueueReport':require(_0xab28('0x7')),'faxQueueReport':require(_0xab28('0x8')),'whatsappQueueReport':require(_0xab28('0x9'))};var RuleEngine=require(_0xab28('0xa'));function getId(_0x48949b,_0x479267,_0x294e36){return util[_0xab28('0xb')](_0xab28('0xc'),_0x48949b,_0x479267||0x0,_0x294e36||0x0);}function getIntervals(_0x2508ef,_0x1f1956){var _0x2ac052=[];if(!_['isNil'](_0x1f1956[_0xab28('0xd')])&&!_['isNil'](_0x2508ef[_0x1f1956[_0xab28('0xd')]])&&!_[_0xab28('0xe')](_0x2508ef[_0x1f1956[_0xab28('0xd')]][_0xab28('0xf')])){_0x2ac052=_[_0xab28('0x10')](_0x2508ef[_0x1f1956[_0xab28('0xd')]][_0xab28('0xf')],_0xab28('0x11'));}else if(!_['isNil'](_0x1f1956[_0xab28('0x11')])){_0x2ac052=[_0x1f1956[_0xab28('0x11')]];}return _0x2ac052;}exports[_0xab28('0x12')]=function(_0x389fc3){_0x389fc3[_0xab28('0x13')]={};return new BPromise(function(_0x19029e,_0x554954){var _0x5c9694={'Start':function(_0x7c1921){var _0x3d133e=this;return new Promise(function(_0x14e8b4,_0xaaeb24){if(_0x7c1921){try{var _0x53c5c7=[];var _0x28ebe2=getId(_0x7c1921['channel'],_0x7c1921[_0xab28('0x14')]?_0x7c1921['message']['id']:0x0,_0x7c1921[_0xab28('0x15')]?_0x7c1921[_0xab28('0x15')]['id']:0x0);if(_0x7c1921[_0xab28('0x16')]&&_[_0xab28('0x17')](_0x7c1921[_0xab28('0x16')])&&_0x7c1921[_0xab28('0x16')][_0xab28('0x18')]){for(var _0x300cbd=0x0;_0x300cbd<_0x7c1921['applications'][_0xab28('0x18')];_0x300cbd+=0x1){var _0x18af35=_0x7c1921[_0xab28('0x16')][_0x300cbd];if(fs[_0xab28('0x19')](path[_0xab28('0x1a')](__dirname,_0xab28('0x16'),_0x18af35[_0xab28('0x1b')]+'.js'))){var _0x116c2c=[];switch(_0x18af35['app'][_0xab28('0x1c')]()){case _0xab28('0x1d'):var _0x4a9c6d=_0x18af35[_0xab28('0x1e')][_0xab28('0x1f')](',');if(_0x7c1921[_0xab28('0x20')]===_0xab28('0x21')){_0x116c2c[_0xab28('0x22')](_0x4a9c6d[0x0]);_0x116c2c[_0xab28('0x22')](_0x4a9c6d[0x1]);_0x116c2c[_0xab28('0x22')](_0x4a9c6d['slice'](0x2,_0x4a9c6d[_0xab28('0x18')])['join'](','));}else{_0x116c2c[_0xab28('0x22')](_0x4a9c6d[0x0]);_0x116c2c[_0xab28('0x22')](_0x4a9c6d['slice'](0x1,_0x4a9c6d[_0xab28('0x18')])['join'](','));}break;case _0xab28('0x23'):var _0x2a3405=_0x18af35[_0xab28('0x1e')]['split'](',');_0x116c2c[_0xab28('0x22')](_0x2a3405[0x0]);_0x116c2c[_0xab28('0x22')](_0x2a3405[0x1]);_0x116c2c['push'](_0x2a3405[_0xab28('0x24')](0x2,_0x2a3405[_0xab28('0x18')])[_0xab28('0x1a')](','));break;case _0xab28('0x25'):var _0x537f64=_0x18af35[_0xab28('0x1e')][_0xab28('0x1f')](',');_0x116c2c[_0xab28('0x22')](_0x537f64[0x0]);_0x116c2c[_0xab28('0x22')](_0x537f64[0x1]);_0x116c2c[_0xab28('0x22')](_0x537f64[0x2]);_0x116c2c[_0xab28('0x22')](_0x537f64[0x3]);_0x116c2c[_0xab28('0x22')](_0x537f64[_0xab28('0x24')](0x4,_0x537f64[_0xab28('0x18')])[_0xab28('0x1a')](','));break;case'amazonlex':var _0x520bc2=_0x18af35[_0xab28('0x1e')]['split'](',');_0x116c2c['push'](_0x520bc2[0x0]);_0x116c2c[_0xab28('0x22')](_0x520bc2[0x1]);_0x116c2c[_0xab28('0x22')](_0x520bc2[0x2]);_0x116c2c[_0xab28('0x22')](_0x520bc2[0x3]);_0x116c2c[_0xab28('0x22')](_0x520bc2[_0xab28('0x24')](0x4,_0x520bc2[_0xab28('0x18')])['join'](','));break;case _0xab28('0x14'):_0x116c2c[_0xab28('0x22')](_0x18af35[_0xab28('0x1e')]);break;case'tag':_0x116c2c[_0xab28('0x22')](_0x18af35['TagId']);_0x116c2c[_0xab28('0x22')](_0x18af35[_0xab28('0x1e')]);break;default:_0x116c2c=_['isNil'](_0x18af35[_0xab28('0x1e')])?[]:_0x18af35[_0xab28('0x1e')][_0xab28('0x1f')](',');}var _0xb5e561={'id':util[_0xab28('0xb')](_0xab28('0x26'),_0x28ebe2,_0x18af35['id'],_0x18af35['app']),'condition':require(_0xab28('0x27'))[_0xab28('0x28')](_0x28ebe2,getIntervals(_0x389fc3['intervals'],_0x18af35),_0x389fc3),'consequence':require(_0xab28('0x29')+_0x18af35[_0xab28('0x1b')])[_0xab28('0x2a')](_0x28ebe2,_0x116c2c,_0x389fc3,_0x7c1921),'p':_0x18af35[_0xab28('0x2b')]||0x0};logger[_0xab28('0x2c')](_0xab28('0x2d'),_0xb5e561['id'],_0xab28('0x2e'),getIntervals(_0x389fc3[_0xab28('0x2f')],_0x18af35)['join'](_0xab28('0x30')));_0x53c5c7[_0xab28('0x22')](_0xb5e561);}else{logger['error'](_0xab28('0x31'),path[_0xab28('0x1a')](__dirname,'applications',_0x18af35[_0xab28('0x1b')]+_0xab28('0x32')));}}_0x389fc3[_0xab28('0x13')][_0x28ebe2]=new RuleEngine(_0x53c5c7);_0x389fc3[_0xab28('0x13')][_0x28ebe2][_0xab28('0x33')](_0x7c1921,function(_0x443cc8){logger[_0xab28('0x2c')]('Applications\x20executed',JSON[_0xab28('0x34')](_0x443cc8[_0xab28('0x35')]));if(_0x389fc3['rules'][_0x28ebe2]){_0x389fc3[_0xab28('0x13')][_0x28ebe2][_0xab28('0x36')](_0xab28('0x37'));}});return _0x14e8b4({'code':0xc8,'message':_0x7c1921});}else{logger[_0xab28('0x2c')](_0xab28('0x38'));return _0x14e8b4({'code':0xc8,'message':_0x7c1921});}}catch(_0x5b77c1){logger[_0xab28('0x39')](_0x5b77c1['stack']);return _0xaaeb24(_0x3d133e['error'](0x1f4,_0x5b77c1));}}return _0xaaeb24(_0xab28('0x3a'));});},'AcceptMessage':function(_0x11b042){var _0x23ada2=this;return new Promise(function(_0x44a986,_0x2c0b34){if(_0x11b042['agent']&&_0x11b042['agent']['id']){if(_0x389fc3[_0xab28('0x3b')][_0x11b042['agent']['id']]){_0x389fc3[_0xab28('0x3b')][_0x11b042['agent']['id']]['busy']=![];_0x389fc3[_0xab28('0x3b')][_0x11b042[_0xab28('0x3c')]['id']][_0xab28('0x3d')]=undefined;}}if(_0x11b042[_0xab28('0x14')]&&_0x11b042[_0xab28('0x14')]['id']){try{var _0x1aea9b=getId(_0x11b042['channel'],_0x11b042['message']?_0x11b042[_0xab28('0x14')]['id']:0x0,_0x11b042['interaction']?_0x11b042[_0xab28('0x15')]['id']:0x0);if(_0x389fc3['rules'][_0x1aea9b]){_0x389fc3[_0xab28('0x13')][_0x1aea9b]['emit']('end');if(rpc[_0x11b042[_0xab28('0x20')]+'QueueReport']){rpc[_0x11b042['channel']+'QueueReport'][_0xab28('0x3e')](_0x1aea9b,{'UserId':_0x11b042['message'][_0xab28('0x3f')]})[_0xab28('0x40')](function(_0x3f1da9){logger[_0xab28('0x39')]('error\x20update\x20queue\x20report');});}}return _0x44a986({'code':0xc8,'message':_0x11b042});}catch(_0x249a71){logger[_0xab28('0x39')](_0x249a71[_0xab28('0x41')]);return _0x2c0b34(_0x23ada2[_0xab28('0x39')](0x1f4,_0x249a71));}}logger[_0xab28('0x39')]('message\x20is\x20empty');return _0x2c0b34(_0x23ada2[_0xab28('0x39')](0x1f4,_0xab28('0x42')));});},'RejectMessage':function(_0x49bb4f){var _0x37c727=this;return new Promise(function(_0x586717,_0x47cd07){if(_0x49bb4f[_0xab28('0x3c')]&&_0x49bb4f[_0xab28('0x3c')]['id']){try{if(_0x389fc3['agents'][_0x49bb4f[_0xab28('0x3c')]['id']]){_0x389fc3['agents'][_0x49bb4f[_0xab28('0x3c')]['id']][_0xab28('0x43')]=![];_0x389fc3[_0xab28('0x3b')][_0x49bb4f[_0xab28('0x3c')]['id']]['busyQueue']=undefined;}return _0x586717({'code':0xc8,'message':_0x49bb4f});}catch(_0x1e6513){logger['error'](_0x1e6513['stack']);return _0x47cd07(_0x37c727[_0xab28('0x39')](0x1f4,_0x1e6513));}}logger['error'](_0xab28('0x42'));return _0x47cd07(_0x37c727[_0xab28('0x39')](0x1f4,'message\x20is\x20empty'));});},'AbandonInteraction':function(_0x3e037d){var _0x2d5494=this;return new Promise(function(_0x49bc36,_0x41dd3d){if(_0x3e037d['channel']&&_0x3e037d[_0xab28('0x15')]&&_0x3e037d[_0xab28('0x15')]['id']){try{var _0x41c0b8=getId(_0x3e037d[_0xab28('0x20')],_0x3e037d[_0xab28('0x14')]?_0x3e037d[_0xab28('0x14')]['id']:0x0,_0x3e037d[_0xab28('0x15')]?_0x3e037d[_0xab28('0x15')]['id']:0x0);if(_0x389fc3['rules'][_0x41c0b8]){_0x389fc3[_0xab28('0x13')][_0x41c0b8][_0xab28('0x36')](_0xab28('0x44'));}return _0x49bc36({'code':0xc8,'message':_0x3e037d});}catch(_0x12da9c){logger[_0xab28('0x39')](_0x12da9c[_0xab28('0x41')]);return _0x41dd3d(_0x2d5494[_0xab28('0x39')](0x1f4,_0x12da9c));}}logger[_0xab28('0x39')](_0xab28('0x42'));return _0x41dd3d(_0x2d5494[_0xab28('0x39')](0x1f4,_0xab28('0x42')));});},'AgentCapacity':function(_0x4824f7){var _0x626732=this;return new Promise(function(_0x534bfc,_0x5d6d01){if(_0x389fc3[_0xab28('0x3b')][_0xab28('0x45')](_0x4824f7['id'])){for(var _0xf742fd in _0x4824f7['capacity']){if(_0x4824f7['capacity'][_0xab28('0x45')](_0xf742fd)){if(_0x389fc3[_0xab28('0x3b')][_0x4824f7['id']][_0xab28('0x45')](_0xf742fd+_0xab28('0x46'))){_0x389fc3[_0xab28('0x3b')][_0x4824f7['id']][_0xf742fd+_0xab28('0x46')]=parseInt(_0x4824f7[_0xab28('0x47')][_0xf742fd],0xa);}}}_0x389fc3[_0xab28('0x3b')][_0x4824f7['id']][_0xab28('0x48')]();return _0x534bfc({'code':0xc8,'message':_0x389fc3[_0xab28('0x3b')][_0x4824f7['id']]});}else{return _0x5d6d01(_0x626732[_0xab28('0x39')](0x1f4,_0xab28('0x49')));}});},'Agents':function(_0x263fa6){return new Promise(function(_0x150ee2,_0x1937cb){var _0x2d99b1=_[_0xab28('0x4a')](_0x389fc3[_0xab28('0x3b')]);_0x150ee2({'count':_0x2d99b1[_0xab28('0x18')],'rows':_0x2d99b1});});},'ChatQueues':function(_0x29a235){return new Promise(function(_0x473c0b,_0x10b226){var _0x23b50c=[];for(var _0x689bea in _0x389fc3[_0xab28('0x4b')]){if(_0x389fc3[_0xab28('0x4b')][_0xab28('0x45')](_0x689bea)){var _0x537b9a=_0x389fc3[_0xab28('0x4b')][_0x689bea];var _0x45518e={'id':_0x537b9a['id'],'available':_0x537b9a[_0xab28('0x4c')],'loggedIn':_0x537b9a['loggedIn'],'name':_0x537b9a[_0xab28('0x4d')],'paused':_0x537b9a['paused'],'waiting':_0x537b9a[_0xab28('0x4e')]};_0x23b50c[_0xab28('0x22')](_0x45518e);}}_0x473c0b({'count':_0x23b50c['length'],'rows':_0x23b50c});});},'MailQueues':function(_0x47e6dd){return new Promise(function(_0x41a109,_0x2447a5){var _0x59422a=[];for(var _0x63f569 in _0x389fc3['mailQueues']){if(_0x389fc3['mailQueues'][_0xab28('0x45')](_0x63f569)){var _0x2223af=_0x389fc3[_0xab28('0x4f')][_0x63f569];var _0x5eabd3={'id':_0x2223af['id'],'available':_0x2223af[_0xab28('0x4c')],'loggedIn':_0x2223af[_0xab28('0x50')],'name':_0x2223af[_0xab28('0x4d')],'paused':_0x2223af[_0xab28('0x51')],'waiting':_0x2223af[_0xab28('0x4e')]};_0x59422a[_0xab28('0x22')](_0x5eabd3);}}_0x41a109({'count':_0x59422a[_0xab28('0x18')],'rows':_0x59422a});});},'OpenchannelQueues':function(_0x4a622f){return new Promise(function(_0x124573,_0x20cf57){var _0x8b9fa3=[];for(var _0x7c046d in _0x389fc3[_0xab28('0x52')]){if(_0x389fc3[_0xab28('0x52')][_0xab28('0x45')](_0x7c046d)){var _0x4d19f9=_0x389fc3[_0xab28('0x52')][_0x7c046d];var _0x1a2753={'id':_0x4d19f9['id'],'available':_0x4d19f9['available'],'loggedIn':_0x4d19f9[_0xab28('0x50')],'name':_0x4d19f9['name'],'paused':_0x4d19f9[_0xab28('0x51')],'waiting':_0x4d19f9['waiting']};_0x8b9fa3[_0xab28('0x22')](_0x1a2753);}}_0x124573({'count':_0x8b9fa3[_0xab28('0x18')],'rows':_0x8b9fa3});});},'SmsQueues':function(_0x2a2f69){return new Promise(function(_0x54ab8c,_0x3fbbd4){var _0x11699a=[];for(var _0x42c765 in _0x389fc3['smsQueues']){if(_0x389fc3['smsQueues']['hasOwnProperty'](_0x42c765)){var _0x59345b=_0x389fc3['smsQueues'][_0x42c765];var _0x1cb915={'id':_0x59345b['id'],'available':_0x59345b[_0xab28('0x4c')],'loggedIn':_0x59345b[_0xab28('0x50')],'name':_0x59345b[_0xab28('0x4d')],'paused':_0x59345b[_0xab28('0x51')],'waiting':_0x59345b['waiting']};_0x11699a[_0xab28('0x22')](_0x1cb915);}}_0x54ab8c({'count':_0x11699a[_0xab28('0x18')],'rows':_0x11699a});});},'FaxQueues':function(_0x4253ea){return new Promise(function(_0x84c273,_0x4168fb){var _0x57011b=[];for(var _0x29cb9d in _0x389fc3['faxQueues']){if(_0x389fc3[_0xab28('0x53')]['hasOwnProperty'](_0x29cb9d)){var _0x3a1ed1=_0x389fc3[_0xab28('0x53')][_0x29cb9d];var _0x43aede={'id':_0x3a1ed1['id'],'available':_0x3a1ed1[_0xab28('0x4c')],'loggedIn':_0x3a1ed1[_0xab28('0x50')],'name':_0x3a1ed1[_0xab28('0x4d')],'paused':_0x3a1ed1[_0xab28('0x51')],'waiting':_0x3a1ed1[_0xab28('0x4e')]};_0x57011b['push'](_0x43aede);}}_0x84c273({'count':_0x57011b[_0xab28('0x18')],'rows':_0x57011b});});},'WhatsappQueues':function(_0x58d54){return new Promise(function(_0x5ce9d0,_0x46d287){var _0x2d65f1=[];for(var _0x2a153b in _0x389fc3[_0xab28('0x54')]){if(_0x389fc3[_0xab28('0x54')][_0xab28('0x45')](_0x2a153b)){var _0x1dea1d=_0x389fc3[_0xab28('0x54')][_0x2a153b];var _0x5f3e8b={'id':_0x1dea1d['id'],'available':_0x1dea1d['available'],'loggedIn':_0x1dea1d['loggedIn'],'name':_0x1dea1d[_0xab28('0x4d')],'paused':_0x1dea1d['paused'],'waiting':_0x1dea1d['waiting']};_0x2d65f1[_0xab28('0x22')](_0x5f3e8b);}}_0x5ce9d0({'count':_0x2d65f1[_0xab28('0x18')],'rows':_0x2d65f1});});},'ChatQueuesWaitingInteractions':function(_0x3264f2){return new Promise(function(_0x294e2a,_0x12df9c){var _0x474233=_[_0xab28('0x4a')](_0x389fc3[_0xab28('0x55')]);_0x294e2a({'count':_0x474233[_0xab28('0x18')],'rows':_0x474233});});},'MailQueuesWaitingInteractions':function(_0x2a3a16){return new Promise(function(_0x298d8d,_0x231d31){var _0x155f28=_[_0xab28('0x4a')](_0x389fc3[_0xab28('0x56')]);_0x298d8d({'count':_0x155f28['length'],'rows':_0x155f28});});},'OpenchannelQueuesWaitingInteractions':function(_0x5d9fc9){return new Promise(function(_0x1c3ef8,_0x283eaa){var _0x1e95da=_['values'](_0x389fc3['openchannelQueuesWaitingInteractions']);_0x1c3ef8({'count':_0x1e95da[_0xab28('0x18')],'rows':_0x1e95da});});},'SmsQueuesWaitingInteractions':function(_0x432be5){return new Promise(function(_0x4a43ca,_0x86c270){var _0x1ac89f=_[_0xab28('0x4a')](_0x389fc3['smsQueuesWaitingInteractions']);_0x4a43ca({'count':_0x1ac89f['length'],'rows':_0x1ac89f});});},'FaxQueuesWaitingInteractions':function(_0x53c47c){return new Promise(function(_0xa7843d,_0x2882f4){var _0x5213a4=_['values'](_0x389fc3[_0xab28('0x57')]);_0xa7843d({'count':_0x5213a4[_0xab28('0x18')],'rows':_0x5213a4});});},'WhatsappQueuesWaitingInteractions':function(_0x795882){return new Promise(function(_0x217ecd,_0x4198a4){var _0x3cc368=_['values'](_0x389fc3[_0xab28('0x58')]);_0x217ecd({'count':_0x3cc368[_0xab28('0x18')],'rows':_0x3cc368});});}};var _0x30c881=jayson[_0xab28('0x59')](_0x5c9694)[_0xab28('0x5a')]();_0x30c881['on'](_0xab28('0x39'),function(_0x2a2014){logger['error'](JSON[_0xab28('0x34')](_0x2a2014));return _0x554954(_0x2a2014);});_0x30c881['listen'](0x232c,_0xab28('0x5b'),function(){console['log'](_0xab28('0x5c'),0x232c);return _0x19029e(_0xab28('0x5d')+0x232c);});});};
\ No newline at end of file
+var _0x8164=['rules','channel','message','applications','isArray','length','existsSync','app','.js','autoreply','mail','push','slice','join','dialogflow','split','dialogflowv2','appdata','amazonlex','tag','TagId','getMustacheRender','account','notificationTemplate','ChatWebsiteId','interaction','ContactId','body','%s:%s:%s','./interval','condition','intervals','./applications/','consequence','priority','Push\x20new\x20rule','\x20|\x20','error','Please\x20create\x20a\x20new\x20file\x20under','execute','Applications\x20executed','emit','complete','info','No\x20applications\x20to\x20execute','stack','routing\x20is\x20empty','agent','agents','busyQueue','end','QueueReport','update','UserId','catch','error\x20update\x20queue\x20report','message\x20is\x20empty','busy','hasOwnProperty','CurrentCapacity','capacity','updateRealtime','values','chatQueues','available','loggedIn','name','paused','mailQueues','openchannelQueues','waiting','smsQueues','faxQueues','whatsappQueues','chatQueuesWaitingInteractions','smsQueuesWaitingInteractions','faxQueuesWaitingInteractions','server','stringify','log','lodash','util','path','bluebird','uuid','../../../config/environment','routing','../rpc/chatQueueReport','../rpc/whatsappQueueReport','../lib/rule-engine','format','%s.%s.%s','isNil','IntervalId','interval','listen'];(function(_0x4bc65f,_0x39ec43){var _0x44f85f=function(_0x175343){while(--_0x175343){_0x4bc65f['push'](_0x4bc65f['shift']());}};_0x44f85f(++_0x39ec43);}(_0x8164,0x170));var _0x4816=function(_0x1f88f0,_0x2dc0ac){_0x1f88f0=_0x1f88f0-0x0;var _0x3684f5=_0x8164[_0x1f88f0];return _0x3684f5;};'use strict';var _=require(_0x4816('0x0'));var util=require(_0x4816('0x1'));var path=require(_0x4816('0x2'));var fs=require('fs');var jayson=require('jayson/promise');var BPromise=require(_0x4816('0x3'));var uuid=require(_0x4816('0x4'));var utils=require('./applications/utils');var config=require(_0x4816('0x5'));var logger=require('../../../config/logger')(_0x4816('0x6'));var rpc={'openchannelQueueReport':require('../rpc/openchannelQueueReport'),'mailQueueReport':require('../rpc/mailQueueReport'),'chatQueueReport':require(_0x4816('0x7')),'smsQueueReport':require('../rpc/smsQueueReport'),'faxQueueReport':require('../rpc/faxQueueReport'),'whatsappQueueReport':require(_0x4816('0x8'))};var RuleEngine=require(_0x4816('0x9'));function getId(_0x170e7a,_0x383974,_0x2421e1){return util[_0x4816('0xa')](_0x4816('0xb'),_0x170e7a,_0x383974||0x0,_0x2421e1||0x0);}function getIntervals(_0x1e0118,_0x23d125){var _0x520153=[];if(!_[_0x4816('0xc')](_0x23d125['IntervalId'])&&!_[_0x4816('0xc')](_0x1e0118[_0x23d125[_0x4816('0xd')]])&&!_['isNil'](_0x1e0118[_0x23d125[_0x4816('0xd')]]['Intervals'])){_0x520153=_['map'](_0x1e0118[_0x23d125[_0x4816('0xd')]]['Intervals'],'interval');}else if(!_[_0x4816('0xc')](_0x23d125['interval'])){_0x520153=[_0x23d125[_0x4816('0xe')]];}return _0x520153;}exports[_0x4816('0xf')]=function(_0x13a685){_0x13a685[_0x4816('0x10')]={};return new BPromise(function(_0x42fc52,_0x248163){var _0x1eb683={'Start':function(_0x2a58b7){var _0x45c006=this;return new Promise(function(_0x21354c,_0x1ce1fb){if(_0x2a58b7){try{var _0x4678a9=[];var _0x6119f=getId(_0x2a58b7[_0x4816('0x11')],_0x2a58b7[_0x4816('0x12')]?_0x2a58b7[_0x4816('0x12')]['id']:0x0,_0x2a58b7['interaction']?_0x2a58b7['interaction']['id']:0x0);if(_0x2a58b7[_0x4816('0x13')]&&_[_0x4816('0x14')](_0x2a58b7[_0x4816('0x13')])&&_0x2a58b7[_0x4816('0x13')][_0x4816('0x15')]){for(var _0x37effd=0x0;_0x37effd<_0x2a58b7[_0x4816('0x13')][_0x4816('0x15')];_0x37effd+=0x1){var _0x3df423=_0x2a58b7['applications'][_0x37effd];if(fs[_0x4816('0x16')](path['join'](__dirname,'applications',_0x3df423[_0x4816('0x17')]+_0x4816('0x18')))){var _0x5de184=[];switch(_0x3df423[_0x4816('0x17')]['toLowerCase']()){case _0x4816('0x19'):var _0x41d7f0=_0x3df423['appdata']['split'](',');if(_0x2a58b7[_0x4816('0x11')]===_0x4816('0x1a')){_0x5de184[_0x4816('0x1b')](_0x41d7f0[0x0]);_0x5de184['push'](_0x41d7f0[0x1]);_0x5de184[_0x4816('0x1b')](_0x41d7f0[_0x4816('0x1c')](0x2,_0x41d7f0[_0x4816('0x15')])[_0x4816('0x1d')](','));}else{_0x5de184['push'](_0x41d7f0[0x0]);_0x5de184['push'](_0x41d7f0[_0x4816('0x1c')](0x1,_0x41d7f0[_0x4816('0x15')])['join'](','));}break;case _0x4816('0x1e'):var _0x4f9386=_0x3df423['appdata'][_0x4816('0x1f')](',');_0x5de184[_0x4816('0x1b')](_0x4f9386[0x0]);_0x5de184[_0x4816('0x1b')](_0x4f9386[0x1]);_0x5de184['push'](_0x4f9386[_0x4816('0x1c')](0x2,_0x4f9386['length'])[_0x4816('0x1d')](','));break;case _0x4816('0x20'):var _0x49c337=_0x3df423[_0x4816('0x21')][_0x4816('0x1f')](',');_0x5de184[_0x4816('0x1b')](_0x49c337[0x0]);_0x5de184[_0x4816('0x1b')](_0x49c337[0x1]);_0x5de184[_0x4816('0x1b')](_0x49c337[0x2]);_0x5de184[_0x4816('0x1b')](_0x49c337[0x3]);_0x5de184[_0x4816('0x1b')](_0x49c337[_0x4816('0x1c')](0x4,_0x49c337[_0x4816('0x15')])['join'](','));break;case _0x4816('0x22'):var _0x902962=_0x3df423['appdata']['split'](',');_0x5de184[_0x4816('0x1b')](_0x902962[0x0]);_0x5de184[_0x4816('0x1b')](_0x902962[0x1]);_0x5de184[_0x4816('0x1b')](_0x902962[0x2]);_0x5de184[_0x4816('0x1b')](_0x902962[0x3]);_0x5de184[_0x4816('0x1b')](_0x902962['slice'](0x4,_0x902962['length'])['join'](','));break;case _0x4816('0x12'):_0x5de184[_0x4816('0x1b')](_0x3df423[_0x4816('0x21')]);break;case _0x4816('0x23'):_0x5de184[_0x4816('0x1b')](_0x3df423[_0x4816('0x24')]);_0x5de184['push'](_0x3df423[_0x4816('0x21')]);break;case'tvox':var _0xc92865=utils[_0x4816('0x25')](_0x2a58b7[_0x4816('0x26')][_0x4816('0x27')],_0x2a58b7);var _0x192476=_0x3df423['appdata'][_0x4816('0x1f')](',');_0x5de184['push'](_0x192476[0x0]);_0x5de184['push'](_0x192476[0x1]);_0x5de184[_0x4816('0x1b')](_0x192476[0x2]);_0x5de184['push'](_0x192476[0x3]);_0x5de184['push'](_0x192476[0x4]);_0x5de184['push'](_0x192476[0x5]);_0x5de184['push'](_0x192476[0x6]);_0x5de184[_0x4816('0x1b')](_0x192476[0x7]);_0x5de184[_0x4816('0x1b')](_0x192476[0x8]);_0x5de184['push'](_0x192476[0x9]);_0x5de184[_0x4816('0x1b')](_0x192476[0xa]);_0x5de184[_0x4816('0x1b')](_0x2a58b7['interaction']['id']);_0x5de184[_0x4816('0x1b')](_0x2a58b7[_0x4816('0x12')]['id']);_0x5de184[_0x4816('0x1b')](_0x3df423[_0x4816('0x28')]);_0x5de184['push'](_0x2a58b7[_0x4816('0x29')][_0x4816('0x2a')]);_0x5de184[_0x4816('0x1b')](_0x2a58b7[_0x4816('0x2b')][_0x4816('0x2b')]);_0x5de184[_0x4816('0x1b')](_0xc92865);break;default:_0x5de184=_[_0x4816('0xc')](_0x3df423[_0x4816('0x21')])?[]:_0x3df423[_0x4816('0x21')][_0x4816('0x1f')](',');}var _0xcbded0={'id':util[_0x4816('0xa')](_0x4816('0x2c'),_0x6119f,_0x3df423['id'],_0x3df423['app']),'condition':require(_0x4816('0x2d'))[_0x4816('0x2e')](_0x6119f,getIntervals(_0x13a685[_0x4816('0x2f')],_0x3df423),_0x13a685),'consequence':require(_0x4816('0x30')+_0x3df423[_0x4816('0x17')])[_0x4816('0x31')](_0x6119f,_0x5de184,_0x13a685,_0x2a58b7),'p':_0x3df423[_0x4816('0x32')]||0x0};logger['info'](_0x4816('0x33'),_0xcbded0['id'],'on\x20interval',getIntervals(_0x13a685['intervals'],_0x3df423)[_0x4816('0x1d')](_0x4816('0x34')));_0x4678a9['push'](_0xcbded0);}else{logger[_0x4816('0x35')](_0x4816('0x36'),path[_0x4816('0x1d')](__dirname,'applications',_0x3df423[_0x4816('0x17')]+_0x4816('0x18')));}}_0x13a685[_0x4816('0x10')][_0x6119f]=new RuleEngine(_0x4678a9);_0x13a685[_0x4816('0x10')][_0x6119f][_0x4816('0x37')](_0x2a58b7,function(_0x39c713){logger['info'](_0x4816('0x38'),JSON['stringify'](_0x39c713['matchPath']));if(_0x13a685['rules'][_0x6119f]){_0x13a685[_0x4816('0x10')][_0x6119f][_0x4816('0x39')](_0x4816('0x3a'));}});return _0x21354c({'code':0xc8,'message':_0x2a58b7});}else{logger[_0x4816('0x3b')](_0x4816('0x3c'));return _0x21354c({'code':0xc8,'message':_0x2a58b7});}}catch(_0x22d8d3){logger[_0x4816('0x35')](_0x22d8d3[_0x4816('0x3d')]);return _0x1ce1fb(_0x45c006[_0x4816('0x35')](0x1f4,_0x22d8d3));}}return _0x1ce1fb(_0x4816('0x3e'));});},'AcceptMessage':function(_0x5e24bf){var _0x4ffae3=this;return new Promise(function(_0x258f5f,_0x374d25){if(_0x5e24bf[_0x4816('0x3f')]&&_0x5e24bf[_0x4816('0x3f')]['id']){if(_0x13a685[_0x4816('0x40')][_0x5e24bf[_0x4816('0x3f')]['id']]){_0x13a685[_0x4816('0x40')][_0x5e24bf[_0x4816('0x3f')]['id']]['busy']=![];_0x13a685[_0x4816('0x40')][_0x5e24bf[_0x4816('0x3f')]['id']][_0x4816('0x41')]=undefined;}}if(_0x5e24bf['message']&&_0x5e24bf['message']['id']){try{var _0x2ad19b=getId(_0x5e24bf[_0x4816('0x11')],_0x5e24bf[_0x4816('0x12')]?_0x5e24bf['message']['id']:0x0,_0x5e24bf[_0x4816('0x29')]?_0x5e24bf[_0x4816('0x29')]['id']:0x0);if(_0x13a685[_0x4816('0x10')][_0x2ad19b]){_0x13a685[_0x4816('0x10')][_0x2ad19b][_0x4816('0x39')](_0x4816('0x42'));if(rpc[_0x5e24bf[_0x4816('0x11')]+'QueueReport']){rpc[_0x5e24bf[_0x4816('0x11')]+_0x4816('0x43')][_0x4816('0x44')](_0x2ad19b,{'UserId':_0x5e24bf[_0x4816('0x12')][_0x4816('0x45')]})[_0x4816('0x46')](function(_0x309778){logger[_0x4816('0x35')](_0x4816('0x47'));});}}return _0x258f5f({'code':0xc8,'message':_0x5e24bf});}catch(_0x443d0d){logger[_0x4816('0x35')](_0x443d0d[_0x4816('0x3d')]);return _0x374d25(_0x4ffae3[_0x4816('0x35')](0x1f4,_0x443d0d));}}logger[_0x4816('0x35')](_0x4816('0x48'));return _0x374d25(_0x4ffae3[_0x4816('0x35')](0x1f4,_0x4816('0x48')));});},'RejectMessage':function(_0x11272b){var _0x2e619f=this;return new Promise(function(_0x56321c,_0x1702bf){if(_0x11272b[_0x4816('0x3f')]&&_0x11272b['agent']['id']){try{if(_0x13a685[_0x4816('0x40')][_0x11272b[_0x4816('0x3f')]['id']]){_0x13a685['agents'][_0x11272b[_0x4816('0x3f')]['id']][_0x4816('0x49')]=![];_0x13a685[_0x4816('0x40')][_0x11272b[_0x4816('0x3f')]['id']][_0x4816('0x41')]=undefined;}return _0x56321c({'code':0xc8,'message':_0x11272b});}catch(_0x3f6bf2){logger[_0x4816('0x35')](_0x3f6bf2[_0x4816('0x3d')]);return _0x1702bf(_0x2e619f[_0x4816('0x35')](0x1f4,_0x3f6bf2));}}logger[_0x4816('0x35')]('message\x20is\x20empty');return _0x1702bf(_0x2e619f[_0x4816('0x35')](0x1f4,'message\x20is\x20empty'));});},'AbandonInteraction':function(_0x440ba5){var _0x199363=this;return new Promise(function(_0x57d72e,_0x157ee3){if(_0x440ba5[_0x4816('0x11')]&&_0x440ba5[_0x4816('0x29')]&&_0x440ba5[_0x4816('0x29')]['id']){try{var _0x170c23=getId(_0x440ba5['channel'],_0x440ba5[_0x4816('0x12')]?_0x440ba5[_0x4816('0x12')]['id']:0x0,_0x440ba5[_0x4816('0x29')]?_0x440ba5[_0x4816('0x29')]['id']:0x0);if(_0x13a685[_0x4816('0x10')][_0x170c23]){_0x13a685[_0x4816('0x10')][_0x170c23]['emit'](_0x4816('0x42'));}return _0x57d72e({'code':0xc8,'message':_0x440ba5});}catch(_0x43c287){logger[_0x4816('0x35')](_0x43c287['stack']);return _0x157ee3(_0x199363[_0x4816('0x35')](0x1f4,_0x43c287));}}logger[_0x4816('0x35')](_0x4816('0x48'));return _0x157ee3(_0x199363['error'](0x1f4,_0x4816('0x48')));});},'AgentCapacity':function(_0x1f790b){var _0xa67f45=this;return new Promise(function(_0xfb9e4a,_0x56d223){if(_0x13a685[_0x4816('0x40')][_0x4816('0x4a')](_0x1f790b['id'])){for(var _0x5210d2 in _0x1f790b['capacity']){if(_0x1f790b['capacity'][_0x4816('0x4a')](_0x5210d2)){if(_0x13a685[_0x4816('0x40')][_0x1f790b['id']][_0x4816('0x4a')](_0x5210d2+_0x4816('0x4b'))){_0x13a685[_0x4816('0x40')][_0x1f790b['id']][_0x5210d2+_0x4816('0x4b')]=parseInt(_0x1f790b[_0x4816('0x4c')][_0x5210d2],0xa);}}}_0x13a685['agents'][_0x1f790b['id']][_0x4816('0x4d')]();return _0xfb9e4a({'code':0xc8,'message':_0x13a685[_0x4816('0x40')][_0x1f790b['id']]});}else{return _0x56d223(_0xa67f45[_0x4816('0x35')](0x1f4,'agent\x20not\x20found'));}});},'Agents':function(_0x356878){return new Promise(function(_0x27392e,_0xcc9277){var _0x2c2a8c=_[_0x4816('0x4e')](_0x13a685[_0x4816('0x40')]);_0x27392e({'count':_0x2c2a8c[_0x4816('0x15')],'rows':_0x2c2a8c});});},'ChatQueues':function(_0x52cf85){return new Promise(function(_0x171c2b,_0x11e6f9){var _0x11b12a=[];for(var _0x4a3cf9 in _0x13a685[_0x4816('0x4f')]){if(_0x13a685[_0x4816('0x4f')]['hasOwnProperty'](_0x4a3cf9)){var _0x3a1cf7=_0x13a685[_0x4816('0x4f')][_0x4a3cf9];var _0x211a2b={'id':_0x3a1cf7['id'],'available':_0x3a1cf7[_0x4816('0x50')],'loggedIn':_0x3a1cf7[_0x4816('0x51')],'name':_0x3a1cf7[_0x4816('0x52')],'paused':_0x3a1cf7[_0x4816('0x53')],'waiting':_0x3a1cf7['waiting']};_0x11b12a[_0x4816('0x1b')](_0x211a2b);}}_0x171c2b({'count':_0x11b12a['length'],'rows':_0x11b12a});});},'MailQueues':function(_0x483ad3){return new Promise(function(_0x4f357f,_0x4b3a3c){var _0x553093=[];for(var _0x15649e in _0x13a685[_0x4816('0x54')]){if(_0x13a685[_0x4816('0x54')]['hasOwnProperty'](_0x15649e)){var _0x3d6908=_0x13a685[_0x4816('0x54')][_0x15649e];var _0x115dc8={'id':_0x3d6908['id'],'available':_0x3d6908[_0x4816('0x50')],'loggedIn':_0x3d6908[_0x4816('0x51')],'name':_0x3d6908[_0x4816('0x52')],'paused':_0x3d6908[_0x4816('0x53')],'waiting':_0x3d6908['waiting']};_0x553093[_0x4816('0x1b')](_0x115dc8);}}_0x4f357f({'count':_0x553093['length'],'rows':_0x553093});});},'OpenchannelQueues':function(_0x44c2ec){return new Promise(function(_0x2cbc59,_0x5277dc){var _0x3002b7=[];for(var _0x9165c8 in _0x13a685[_0x4816('0x55')]){if(_0x13a685['openchannelQueues'][_0x4816('0x4a')](_0x9165c8)){var _0xd5d3b0=_0x13a685[_0x4816('0x55')][_0x9165c8];var _0x56b799={'id':_0xd5d3b0['id'],'available':_0xd5d3b0[_0x4816('0x50')],'loggedIn':_0xd5d3b0[_0x4816('0x51')],'name':_0xd5d3b0[_0x4816('0x52')],'paused':_0xd5d3b0['paused'],'waiting':_0xd5d3b0[_0x4816('0x56')]};_0x3002b7[_0x4816('0x1b')](_0x56b799);}}_0x2cbc59({'count':_0x3002b7[_0x4816('0x15')],'rows':_0x3002b7});});},'SmsQueues':function(_0x391329){return new Promise(function(_0x1c7fb4,_0x3d7d8b){var _0x23cfc4=[];for(var _0x5b7156 in _0x13a685[_0x4816('0x57')]){if(_0x13a685[_0x4816('0x57')][_0x4816('0x4a')](_0x5b7156)){var _0x24b0d5=_0x13a685[_0x4816('0x57')][_0x5b7156];var _0x24df14={'id':_0x24b0d5['id'],'available':_0x24b0d5[_0x4816('0x50')],'loggedIn':_0x24b0d5['loggedIn'],'name':_0x24b0d5[_0x4816('0x52')],'paused':_0x24b0d5[_0x4816('0x53')],'waiting':_0x24b0d5[_0x4816('0x56')]};_0x23cfc4[_0x4816('0x1b')](_0x24df14);}}_0x1c7fb4({'count':_0x23cfc4['length'],'rows':_0x23cfc4});});},'FaxQueues':function(_0x1e0bab){return new Promise(function(_0x1af0dc,_0x46f5f4){var _0xbb9848=[];for(var _0x12de01 in _0x13a685[_0x4816('0x58')]){if(_0x13a685[_0x4816('0x58')][_0x4816('0x4a')](_0x12de01)){var _0x28419c=_0x13a685[_0x4816('0x58')][_0x12de01];var _0x436d35={'id':_0x28419c['id'],'available':_0x28419c[_0x4816('0x50')],'loggedIn':_0x28419c[_0x4816('0x51')],'name':_0x28419c['name'],'paused':_0x28419c[_0x4816('0x53')],'waiting':_0x28419c[_0x4816('0x56')]};_0xbb9848[_0x4816('0x1b')](_0x436d35);}}_0x1af0dc({'count':_0xbb9848[_0x4816('0x15')],'rows':_0xbb9848});});},'WhatsappQueues':function(_0x21fe50){return new Promise(function(_0x35093e,_0x12d58f){var _0x619070=[];for(var _0x202d18 in _0x13a685[_0x4816('0x59')]){if(_0x13a685[_0x4816('0x59')][_0x4816('0x4a')](_0x202d18)){var _0xf439b3=_0x13a685['whatsappQueues'][_0x202d18];var _0xf05f49={'id':_0xf439b3['id'],'available':_0xf439b3[_0x4816('0x50')],'loggedIn':_0xf439b3[_0x4816('0x51')],'name':_0xf439b3['name'],'paused':_0xf439b3['paused'],'waiting':_0xf439b3[_0x4816('0x56')]};_0x619070[_0x4816('0x1b')](_0xf05f49);}}_0x35093e({'count':_0x619070['length'],'rows':_0x619070});});},'ChatQueuesWaitingInteractions':function(_0x1e2ead){return new Promise(function(_0x192832,_0x357800){var _0x317f3f=_['values'](_0x13a685[_0x4816('0x5a')]);_0x192832({'count':_0x317f3f[_0x4816('0x15')],'rows':_0x317f3f});});},'MailQueuesWaitingInteractions':function(_0x5f391e){return new Promise(function(_0x370439,_0x32ced6){var _0x4957e6=_[_0x4816('0x4e')](_0x13a685['mailQueuesWaitingInteractions']);_0x370439({'count':_0x4957e6[_0x4816('0x15')],'rows':_0x4957e6});});},'OpenchannelQueuesWaitingInteractions':function(_0x485505){return new Promise(function(_0x27ff4f,_0xa7f23c){var _0x30a190=_[_0x4816('0x4e')](_0x13a685['openchannelQueuesWaitingInteractions']);_0x27ff4f({'count':_0x30a190[_0x4816('0x15')],'rows':_0x30a190});});},'SmsQueuesWaitingInteractions':function(_0x4194f6){return new Promise(function(_0x1d0192,_0x2246b3){var _0x5e0b7e=_[_0x4816('0x4e')](_0x13a685[_0x4816('0x5b')]);_0x1d0192({'count':_0x5e0b7e[_0x4816('0x15')],'rows':_0x5e0b7e});});},'FaxQueuesWaitingInteractions':function(_0x1f0f2a){return new Promise(function(_0x5c68cc,_0xc1f850){var _0x37c2a1=_[_0x4816('0x4e')](_0x13a685[_0x4816('0x5c')]);_0x5c68cc({'count':_0x37c2a1[_0x4816('0x15')],'rows':_0x37c2a1});});},'WhatsappQueuesWaitingInteractions':function(_0x4a4e89){return new Promise(function(_0x2765ae,_0x4f43eb){var _0x1c0799=_[_0x4816('0x4e')](_0x13a685['whatsappQueuesWaitingInteractions']);_0x2765ae({'count':_0x1c0799[_0x4816('0x15')],'rows':_0x1c0799});});}};var _0x205cf1=jayson[_0x4816('0x5d')](_0x1eb683)['http']();_0x205cf1['on'](_0x4816('0x35'),function(_0x33eabd){logger['error'](JSON[_0x4816('0x5e')](_0x33eabd));return _0x248163(_0x33eabd);});_0x205cf1[_0x4816('0xf')](0x232c,'127.0.0.1',function(){console[_0x4816('0x5f')]('Routing\x20RPC\x20server\x20listening\x20on\x20127.0.0.1:%d!',0x232c);return _0x42fc52('RPC\x20listening\x20on\x20port:'+0x232c);});});};
\ No newline at end of file