Built motion from commit 85328c08.|2.5.50
[motion2.git] / server / api / realtime / realtime.controller.js
1 // *************************************************************************
2 // *                                                                       *
3 // * xCALLY Motion -  The Omnichannel Contact Center                       *
4 // * Copyright (c) Xenialab s.r.l. All Rights Reserved                     *
5 // *                                                                       *
6 // *************************************************************************
7 // *                                                                       *
8 // * Email: info@xcally.com                                                *
9 // * Website: https://www.xcally.com                                       *
10 // *                                                                       *
11 // *************************************************************************
12 // *                                                                       *
13 // * The SOFTWARE PRODUCT is protected by copyright laws and international *
14 // * copyright treaties, as well as other intellectual property laws and   *
15 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                         *
16 // *                                                                       *
17 // *************************************************************************
18 var _0x44ee=['Queue','globalQueueFilter','fieldName','key','agent','getOptions','isEmpty','where','role','user','userProfileId','nolimit','UserProfile','omit','globalStatusFilter','pauseTypeFilter','rawAttributes','QueueCampaigns','getResources','findAndCountAll','rows','type','util','lodash','jayson/promise','../../config/logger','api','client','http','offset','undefined','count','limit','status','set','Content-Range','stack','name','send','error','result','request','Agents','Unable\x20to\x20retrieve\x20RPC\x20agents\x20(Routing)','merge','startCase','Queues','then','format','Unable\x20to\x20retrieve\x20RPC\x20%s\x20queues','catch','VoiceQueuesChannels','Unable\x20to\x20retrieve\x20voice\x20queues\x20channels','loggedIn','waiting','talking','outbound','push','originated','Trunk','startProgressive','erlangCallToSecond','erlangAbandonmentRate','erlangBusyFactor','dialPredictiveInterval','dialPredictiveIntervalMinThreshold','predictiveIntervalAvailable','predictiveIntervalAnsweredCalls','predictiveIntervalDroppedCallsTimeout','predictiveIntervalDroppedCallsCallersExit','predictiveIntervalAvgHoldtime','map','loggedInDb','available','voice','pTalking','find','pick','filter','queue','length','busy','connectedlinenum','internal','toString','getMembers','UserId','accountcode','online','paused','voiceStatus','agents','User','Pause','findAll','idle','unknown','unavailable','ringing','isNil','faxPause','mailPause','openchannelPause','smsPause','voicePause','whatsappPause','every','pause','chatStatus','faxStatus','mailStatus','openchannelStatus','*pause','mail','sms','toLowerCase','Invalid\x20channel','isArray','getAgents','all','flatten','value','split','fields','includes','globalStatus','order','startsWith','DESC','pauseType','lastPauseAt','chatPause','chatCapacity','openchannelCapacity','smsCapacity','whatsappCapacity','faxCapacity','openchannelCurrentCapacity','mailCurrentCapacity','smsCurrentCapacity','whatsappCurrentCapacity','smsStatus','whatsappStatus','chatStatusTime','openchannelStatusTime','mailStatusTime','whatsappStatusTime','voiceStatusTime','destconnectedlinenum','routealias','resolve','channel','query','sort','join'];(function(_0x3947c9,_0x4d6c97){var _0x2e7871=function(_0x1236cc){while(--_0x1236cc){_0x3947c9['push'](_0x3947c9['shift']());}};_0x2e7871(++_0x4d6c97);}(_0x44ee,0x1e7));var _0xe44e=function(_0x561d9b,_0x1a7508){_0x561d9b=_0x561d9b-0x0;var _0xf0b943=_0x44ee[_0x561d9b];return _0xf0b943;};'use strict';var util=require(_0xe44e('0x0'));var _=require(_0xe44e('0x1'));var jayson=require(_0xe44e('0x2'));var qs=require('../../components/parsers/qs');var logger=require(_0xe44e('0x3'))(_0xe44e('0x4'));var db=require('../../mysqldb')['db'];var amiClient=jayson[_0xe44e('0x5')][_0xe44e('0x6')]({'port':0x232a});var routingClient=jayson['client'][_0xe44e('0x6')]({'port':0x232c});function respondWithFilteredResult(_0x2ef89f,_0x17a048){return function(_0x2668e0){if(_0x2668e0){var _0x3b56a9=typeof _0x17a048[_0xe44e('0x7')]===_0xe44e('0x8')&&typeof _0x17a048['limit']===_0xe44e('0x8');var _0x2fb2ec=_0x2668e0[_0xe44e('0x9')];var _0xd777d9=_0x3b56a9?0x0:_0x17a048[_0xe44e('0x7')];var _0x44612c=_0x3b56a9?_0x2668e0[_0xe44e('0x9')]:_0x17a048[_0xe44e('0x7')]+_0x17a048[_0xe44e('0xa')];var _0x527196;if(_0x44612c>=_0x2fb2ec){_0x44612c=_0x2fb2ec;_0x527196=0xc8;}else{_0x527196=0xce;}_0x2ef89f[_0xe44e('0xb')](_0x527196);return _0x2ef89f[_0xe44e('0xc')](_0xe44e('0xd'),_0xd777d9+'-'+_0x44612c+'/'+_0x2fb2ec)['json'](_0x2668e0);}return null;};}function handleError(_0xf9f195,_0x3fd0e6){_0x3fd0e6=_0x3fd0e6||0x1f4;return function(_0x537d55){logger['error'](_0x537d55[_0xe44e('0xe')]);if(_0x537d55[_0xe44e('0xf')]){delete _0x537d55['name'];}_0xf9f195[_0xe44e('0xb')](_0x3fd0e6)[_0xe44e('0x10')](_0x537d55);};}function getRealtimeAgents(){return new Promise(function(_0x2eaf54,_0x2a8a1b){return amiClient['request']('Agents',{})['then'](function(_0x4de300){if(_0x4de300[_0xe44e('0x11')])throw new Error('Unable\x20to\x20retrieve\x20RPC\x20agents\x20(AMI)');var _0x15224d=_0x4de300[_0xe44e('0x12')];return routingClient[_0xe44e('0x13')](_0xe44e('0x14'),{})['then'](function(_0x15c5b3){if(_0x15c5b3[_0xe44e('0x11')])throw new Error(_0xe44e('0x15'));var _0xf7ee03=_0x15c5b3['result'];return _0x2eaf54(_[_0xe44e('0x16')]({},_0x15224d,_0xf7ee03));});})['catch'](function(_0x16f4b0){_0x2a8a1b(_0x16f4b0);});});}function getRealtimeQueues(_0x4b8401,_0x13e488){return new Promise(function(_0x470bcd,_0x136d4a){var _0x52febd=_0x13e488==='voice'?amiClient:routingClient;return _0x52febd[_0xe44e('0x13')](_[_0xe44e('0x17')](_0x13e488)+_0xe44e('0x18'),_0x4b8401)[_0xe44e('0x19')](function(_0x54da33){if(_0x54da33[_0xe44e('0x11')])throw new Error(util[_0xe44e('0x1a')](_0xe44e('0x1b'),_0x13e488));return _0x470bcd(_0x54da33[_0xe44e('0x12')]);})[_0xe44e('0x1c')](function(_0x23fc47){_0x136d4a(_0x23fc47);});});}function getRealtimeVoiceQueueChannels(){return new Promise(function(_0x13e84f,_0x19e5d1){return amiClient[_0xe44e('0x13')](_0xe44e('0x1d'),{})[_0xe44e('0x19')](function(_0x296cef){if(_0x296cef[_0xe44e('0x11')])throw new Error(_0xe44e('0x1e'));return _0x13e84f(_0x296cef[_0xe44e('0x12')]);})[_0xe44e('0x1c')](function(_0x50b4b2){_0x19e5d1(_0x50b4b2);});});}function initializeQueues(_0x5b3b3a,_0x4769f8,_0x5b7f8d,_0x3f545f){var _0x5c2d83=[_0xe44e('0x1f'),'available',_0xe44e('0x20'),_0xe44e('0x21'),'paused'];if(_0x5b7f8d==='voice'&&_0x3f545f===_0xe44e('0x22')){_0x5c2d83[_0xe44e('0x23')]('pTalking',_0xe44e('0x24'),'message','dialActive','dialMethod',_0xe44e('0x25'),'startPredictive',_0xe44e('0x26'),'erlangCalls',_0xe44e('0x27'),_0xe44e('0x28'),_0xe44e('0x29'),_0xe44e('0x2a'),'dialPredictiveIntervalMaxThreshold',_0xe44e('0x2b'),_0xe44e('0x2c'),'predictiveIntervalTotalCalls',_0xe44e('0x2d'),_0xe44e('0x2e'),_0xe44e('0x2f'),_0xe44e('0x30'),'predictiveIntervalAvgTalktime');}return _0x5b3b3a[_0xe44e('0x31')](function(_0x3b3a27){var _0xef6488=_0x3b3a27['get']({'plain':!![]});_0xef6488['agents']=[];_0xef6488['paused']=0x0;_0xef6488[_0xe44e('0x32')]=0x0;_0xef6488['loggedIn']=0x0;_0xef6488[_0xe44e('0x33')]=0x0;_0xef6488['waiting']=0x0;if(_0x5b7f8d===_0xe44e('0x34')){_0xef6488[_0xe44e('0x21')]=0x0;_0xef6488['busy']=0x0;if(_0x3f545f===_0xe44e('0x22')){_0xef6488[_0xe44e('0x35')]=0x0;_0xef6488[_0xe44e('0x24')]=0x0;}}var _0x5a07c8=_[_0xe44e('0x36')](_0x4769f8,['id',_0xef6488['id']]);if(_0x5a07c8)_[_0xe44e('0x16')](_0xef6488,_[_0xe44e('0x37')](_0x5a07c8,_0x5c2d83));return _0xef6488;});}function updateAgentVoiceStatus(_0x14fbc3,_0x2331be,_0x1373a9){var _0x4bcb2b=_[_0xe44e('0x38')](_0x1373a9,[_0xe44e('0x39'),_0x2331be[_0xe44e('0xf')]]);if(_0x4bcb2b[_0xe44e('0x3a')]===0x0)return _0x14fbc3[_0xe44e('0x3b')]=!![];if(_['some'](_0x4bcb2b,[_0xe44e('0x3c'),_0x14fbc3[_0xe44e('0x3d')][_0xe44e('0x3e')]()]))return _0x14fbc3[_0xe44e('0x21')]=!![];if(!_0x14fbc3['talking'])return _0x14fbc3[_0xe44e('0x3b')]=!![];}function getVoiceQueueAgents(_0x43b8bc,_0x8a151a,_0x4eb566,_0x33242d){var _0xb5ca79=_[_0xe44e('0x36')](_0x8a151a,['id',_0x43b8bc['id']]);if(!_0xb5ca79)return _0x43b8bc;return _0xb5ca79[_0xe44e('0x3f')]({'raw':!![]})['then'](function(_0xaaec59){for(var _0xe2caa6=0x0;_0xe2caa6<_0xaaec59[_0xe44e('0x3a')];_0xe2caa6++){var _0x3bf4d2=_[_0xe44e('0x36')](_0x4eb566,['id',_0xaaec59[_0xe2caa6]['UserId']]);if(!_0x3bf4d2){_0x3bf4d2={'id':_0xaaec59[_0xe2caa6][_0xe44e('0x40')],'name':_0xaaec59[_0xe2caa6][_0xe44e('0x40')],'accountcode':'','online':![]};}var _0x1c1b8f={'id':_0x3bf4d2['id'],'name':_0x3bf4d2[_0xe44e('0xf')],'internal':_0x3bf4d2[_0xe44e('0x41')],'online':Boolean(_0x3bf4d2[_0xe44e('0x42')]),'paused':Boolean(_0xaaec59[_0xe2caa6][_0xe44e('0x43')])};if(_0x3bf4d2[_0xe44e('0x44')]===_0xe44e('0x21'))updateAgentVoiceStatus(_0x1c1b8f,_0x43b8bc,_0x33242d);if(_0x1c1b8f['online'])_0x43b8bc['loggedInDb']++;if(_0x1c1b8f['busy'])_0x43b8bc[_0xe44e('0x3b')]++;if(_0x1c1b8f[_0xe44e('0x43')]&&!_0x1c1b8f[_0xe44e('0x3b')]&&!_0x1c1b8f[_0xe44e('0x21')])_0x43b8bc[_0xe44e('0x43')]++;_0x43b8bc[_0xe44e('0x45')][_0xe44e('0x23')](_0x1c1b8f);}return _0x43b8bc;});}function getQueueAgents(_0x58eabb,_0x452e2d,_0x4e8c52){var _0x1065fb=_0xe44e('0x46')+_[_0xe44e('0x17')](_0x4e8c52)+'Queue';var _0x331364=_0x4e8c52+_0xe44e('0x47');return db[_0x1065fb][_0xe44e('0x48')]({'where':{[_[_0xe44e('0x17')](_0x4e8c52)+'QueueId']:_0x58eabb['id']},'raw':!![]})[_0xe44e('0x19')](function(_0x547758){for(var _0xc417e5=0x0;_0xc417e5<_0x547758[_0xe44e('0x3a')];_0xc417e5++){var _0x31ea27=_[_0xe44e('0x36')](_0x452e2d,['id',_0x547758[_0xc417e5][_0xe44e('0x40')]]);if(!_0x31ea27){_0x31ea27={'id':_0x547758[_0xc417e5][_0xe44e('0x40')],'name':_0x547758[_0xc417e5][_0xe44e('0x40')],'online':![],['pauseField']:![]};}var _0x50f930={'id':_0x31ea27['id'],'name':_0x31ea27['name'],'online':Boolean(_0x31ea27['online']),'paused':Boolean(_0x31ea27[_0x331364])};if(_0x50f930['online'])_0x58eabb[_0xe44e('0x32')]++;_0x58eabb[_0xe44e('0x45')]['push'](_0x50f930);}return _0x58eabb;});}function isIdle(_0x2e10cd){return _0x2e10cd===_0xe44e('0x49')||_0x2e10cd===_0xe44e('0x4a')||_0x2e10cd===_0xe44e('0x4b')||_0x2e10cd===_0xe44e('0x4c')||_[_0xe44e('0x4d')](_0x2e10cd);}function isAgentPaused(_0x10e765,_0x4c8451){var _0x2e8ea7=[_0x10e765['chatPause'],_0x10e765[_0xe44e('0x4e')],_0x10e765[_0xe44e('0x4f')],_0x10e765[_0xe44e('0x50')],_0x10e765[_0xe44e('0x51')],_0x10e765[_0xe44e('0x52')],_0x10e765[_0xe44e('0x53')]];if(!_0x4c8451)return _[_0xe44e('0x54')](_0x2e8ea7);var _0x5f4d49=_[_0xe44e('0x38')](_0x2e8ea7);return _0x5f4d49[_0xe44e('0x3a')]>0x0&&_0x5f4d49[_0xe44e('0x3a')]<_0x2e8ea7[_0xe44e('0x3a')]?!![]:![];}function isAgentIdle(_0x32d1dc){if(_0x32d1dc[_0xe44e('0x44')]!==_0xe44e('0x49')&&_0x32d1dc['voicePause']){_0x32d1dc['voiceStatus']=_0xe44e('0x55');return![];}return _[_0xe44e('0x54')]([_0x32d1dc[_0xe44e('0x56')],_0x32d1dc[_0xe44e('0x57')],_0x32d1dc[_0xe44e('0x58')],_0x32d1dc[_0xe44e('0x59')],_0x32d1dc['smsStatus'],_0x32d1dc[_0xe44e('0x44')],_0x32d1dc['whatsappStatus']],isIdle);}function getAgentStatus(_0x4b081a){var _0x1a342f=_0xe44e('0x4a');if(isAgentPaused(_0x4b081a))_0x1a342f=_0xe44e('0x55');else if(isAgentPaused(_0x4b081a,!![]))_0x1a342f=_0xe44e('0x5a');else if(isAgentIdle(_0x4b081a))_0x1a342f=_0xe44e('0x49');else _0x1a342f='busy';return _0x1a342f;}function validateChannel(_0x55cb0c){var _0x2dc163=[_0xe44e('0x5b'),'chat',_0xe44e('0x5c'),'openchannel','fax','whatsapp',_0xe44e('0x34')];if(!_['includes'](_0x2dc163,_0x55cb0c[_0xe44e('0x5d')]()))throw new Error(_0xe44e('0x5e'));return _0x55cb0c['toLowerCase']();}function getFilteredAgentIds(_0x14c262,_0x31364c){var _0x344788=_[_0xe44e('0x5f')](_0x14c262)?_0x14c262:[_0x14c262];var _0x258137=_[_0xe44e('0x31')](_0x344788,function(_0x131dff){return db[_0x31364c]['findOne']({'where':{'name':_0x131dff}})['then'](function(_0x5739aa){if(!_0x5739aa)return[];return _0x5739aa[_0xe44e('0x60')]({'attributes':['id'],'raw':!![]});});});return Promise[_0xe44e('0x61')](_0x258137)[_0xe44e('0x19')](function(_0x2346cb){var _0x1dd9a8=_(_0x2346cb)[_0xe44e('0x62')]()[_0xe44e('0x31')]('id')['uniq']()[_0xe44e('0x63')]();return _0x1dd9a8;});}function getUpdatedSortOptions(_0x3801b8){var _0x332cdf={'fields':[],'order':null};var _0x46082e=_0x3801b8[_0xe44e('0x64')](',');_0x332cdf[_0xe44e('0x65')]=_[_0xe44e('0x38')](_0x46082e,function(_0x5dfbe1){if(!_0x5dfbe1[_0xe44e('0x66')](_0xe44e('0x67')))return!![];_0x332cdf[_0xe44e('0x68')]=_[_0xe44e('0x69')](_0x5dfbe1,'-')?_0xe44e('0x6a'):'ASC';return![];});return _0x332cdf;}function orderAgentsByStatus(_0x5531dc,_0x5a039b){return _0x5531dc['sort'](function(_0x1ab6ae,_0x11ee7b){if(_0x1ab6ae[_0xe44e('0x67')]===_0x11ee7b[_0xe44e('0x67')]&&_0x1ab6ae[_0xe44e('0x67')]===_0xe44e('0x55')){if(_0x5a039b===_0xe44e('0x6a'))return(_0x1ab6ae['pauseType']||'')<(_0x11ee7b[_0xe44e('0x6b')]||'')?0x1:-0x1;return _0x1ab6ae['pauseType']<_0x11ee7b['pauseType']?-0x1:0x1;}else{if(_0x5a039b===_0xe44e('0x6a'))return _0x1ab6ae['globalStatus']<_0x11ee7b[_0xe44e('0x67')]?0x1:-0x1;return _0x1ab6ae[_0xe44e('0x67')]<_0x11ee7b[_0xe44e('0x67')]?-0x1:0x1;}});}exports[_0xe44e('0x60')]=function(_0x14dbdc,_0x5463fe){var _0x88ea1b={'count':0x0,'rows':[]},_0x5c080c={},_0xd11c1f,_0x1e815e,_0x4ab16b,_0x1a03f0,_0x2dae0f=['userpic',_0xe44e('0x42'),'lastLoginAt','lastPauseAt',_0xe44e('0x6b'),_0xe44e('0x6c'),_0xe44e('0x3d'),'address',_0xe44e('0x6d'),_0xe44e('0x50'),_0xe44e('0x4f'),_0xe44e('0x51'),'whatsappPause',_0xe44e('0x4e'),'voicePause',_0xe44e('0x6e'),_0xe44e('0x6f'),'mailCapacity',_0xe44e('0x70'),_0xe44e('0x71'),_0xe44e('0x72'),'chatCurrentCapacity',_0xe44e('0x73'),_0xe44e('0x74'),_0xe44e('0x75'),_0xe44e('0x76'),'faxCurrentCapacity',_0xe44e('0x56'),_0xe44e('0x59'),'mailStatus',_0xe44e('0x77'),_0xe44e('0x78'),'faxStatus','voiceStatus',_0xe44e('0x79'),_0xe44e('0x7a'),_0xe44e('0x7b'),'smsStatusTime',_0xe44e('0x7c'),'faxStatusTime',_0xe44e('0x7d'),_0xe44e('0x39'),_0xe44e('0x7e'),'screenrecording','phoneBarEnableScreenRecordingByAgent','phoneBarEnableAutomaticScreenRecording',_0xe44e('0x7f')],_0x71d430=[_0xe44e('0x6d'),_0xe44e('0x50'),'mailPause',_0xe44e('0x51'),_0xe44e('0x53'),_0xe44e('0x4e'),_0xe44e('0x52'),'online'];Promise[_0xe44e('0x80')]()[_0xe44e('0x19')](function(){if(_0x14dbdc['query']['channel'])_0xd11c1f=validateChannel(_0x14dbdc['query'][_0xe44e('0x81')]);if(!_0x14dbdc[_0xe44e('0x82')][_0xe44e('0x83')]||!_0x14dbdc[_0xe44e('0x82')][_0xe44e('0x83')][_0xe44e('0x66')](_0xe44e('0x67')))return;var _0x26eea4=getUpdatedSortOptions(_0x14dbdc[_0xe44e('0x82')][_0xe44e('0x83')]);_0x14dbdc['query'][_0xe44e('0x83')]=_0x26eea4[_0xe44e('0x65')][_0xe44e('0x84')](',');_0x1e815e=_0x26eea4[_0xe44e('0x68')];})[_0xe44e('0x19')](function(){if(!_0x14dbdc[_0xe44e('0x82')]['globalQueueFilter'])return[];var _0x2e68f9=_[_0xe44e('0x17')](_0xd11c1f)+_0xe44e('0x85');return getFilteredAgentIds(_0x14dbdc[_0xe44e('0x82')][_0xe44e('0x86')],_0x2e68f9);})[_0xe44e('0x19')](function(_0x256849){var _0x4bd192=_[_0xe44e('0x31')](db[_0xe44e('0x46')]['rawAttributes'],function(_0x396157){return{'name':_0x396157[_0xe44e('0x87')],'type':_0x396157['type'][_0xe44e('0x88')]};});_0x14dbdc[_0xe44e('0x82')]['role']=_0xe44e('0x89');_0x14dbdc['query'][_0xe44e('0x42')]=!![];_0x5c080c=qs[_0xe44e('0x8a')](_0x4bd192,_0x14dbdc);_0x5c080c['raw']=!![];if(!_[_0xe44e('0x8b')](_0x256849)){_0x5c080c['where']=_[_0xe44e('0x16')](_0x5c080c[_0xe44e('0x8c')],{'$and':[{'id':{'$in':_0x256849}}]});}else if(!_[_0xe44e('0x8b')](_0x14dbdc[_0xe44e('0x82')][_0xe44e('0x86')])){return _0x88ea1b;}if(_0x14dbdc['user'][_0xe44e('0x8d')]===_0xe44e('0x8e')){var _0x2bc678={'params':{'id':_0x14dbdc['user'][_0xe44e('0x8f')]},'query':{'section':'Agents','role':_0xe44e('0x89'),'online':!![],'nolimit':_0x14dbdc[_0xe44e('0x82')][_0xe44e('0x90')],'sort':_0x14dbdc[_0xe44e('0x82')][_0xe44e('0x83')],'filter':_0x14dbdc[_0xe44e('0x82')][_0xe44e('0x38')],'raw':!![],'ids':_0x256849}};return db[_0xe44e('0x91')]['getResources'](_0x2bc678);}return db[_0xe44e('0x46')]['findAndCountAll'](_0x5c080c);})[_0xe44e('0x19')](function(_0x3f0d22){_0x88ea1b[_0xe44e('0x9')]=_0x3f0d22[_0xe44e('0x9')];_0x4ab16b=_0x3f0d22['rows'];return getRealtimeAgents();})[_0xe44e('0x19')](function(_0xc22968){_0x1a03f0=_0xc22968['rows'];return _0x4ab16b[_0xe44e('0x31')](function(_0x40f2b8){var _0x4ceed1=_[_0xe44e('0x36')](_0x1a03f0,['id',_0x40f2b8['id']]);if(_0x4ceed1)_['merge'](_0x40f2b8,_['pick'](_[_0xe44e('0x92')](_0x4ceed1,_0x71d430),_0x2dae0f));_0x40f2b8[_0xe44e('0x67')]=getAgentStatus(_0x40f2b8);return _0x40f2b8;});})[_0xe44e('0x19')](function(_0x154fa3){var _0x58b5e7;if(_0x14dbdc[_0xe44e('0x82')][_0xe44e('0x93')]){_0x58b5e7=_[_0xe44e('0x38')](_0x154fa3,[_0xe44e('0x67'),_0x14dbdc[_0xe44e('0x82')][_0xe44e('0x93')]]);if(_0x14dbdc[_0xe44e('0x82')][_0xe44e('0x94')]){_0x58b5e7=_['filter'](_0x58b5e7,[_0xe44e('0x6b'),_0x14dbdc[_0xe44e('0x82')][_0xe44e('0x94')]]);}}if(_0x58b5e7)_0x154fa3=_0x58b5e7;if(!_0x1e815e)return _0x154fa3;return orderAgentsByStatus(_0x154fa3,_0x1e815e);})[_0xe44e('0x19')](function(_0x9a7f69){_0x88ea1b['rows']=_0x9a7f69;return _0x88ea1b;})['then'](respondWithFilteredResult(_0x5463fe,_0x5c080c))['catch'](handleError(_0x5463fe,null));};exports['getQueues']=function(_0x2b22a6,_0x452e0c){var _0x468ee2={'count':0x0,'rows':[]},_0x322d64={},_0x231030,_0x41865e,_0x148e40,_0x44ed9a,_0x251a92;Promise[_0xe44e('0x80')]()[_0xe44e('0x19')](function(){if(_0x2b22a6[_0xe44e('0x82')][_0xe44e('0x81')])_0x231030=validateChannel(_0x2b22a6['query'][_0xe44e('0x81')]);var _0x4f126c=_[_0xe44e('0x17')](_0x231030)+_0xe44e('0x85');var _0xf89534=_[_0xe44e('0x31')](db[_0x4f126c][_0xe44e('0x95')],function(_0x20655b){return{'name':_0x20655b[_0xe44e('0x87')],'type':_0x20655b['type'][_0xe44e('0x88')]};});_0x322d64=qs[_0xe44e('0x8a')](_0xf89534,_0x2b22a6);if(_0x2b22a6[_0xe44e('0x8e')][_0xe44e('0x8d')]===_0xe44e('0x8e')){var _0x4d8417={'params':{'id':_0x2b22a6[_0xe44e('0x8e')]['userProfileId']},'query':{'section':_0x231030==='voice'&&_0x2b22a6[_0xe44e('0x82')]['type']===_0xe44e('0x22')?_0xe44e('0x96'):_[_0xe44e('0x17')](_0x231030)+'Queues','type':_0x2b22a6[_0xe44e('0x82')]['type'],'nolimit':!![],'sort':'name','filter':_0x2b22a6[_0xe44e('0x82')]['filter']}};return db['UserProfile'][_0xe44e('0x97')](_0x4d8417);}return db[_0x4f126c][_0xe44e('0x98')](_0x322d64);})[_0xe44e('0x19')](function(_0x447214){_0x468ee2[_0xe44e('0x9')]=_0x447214[_0xe44e('0x9')];_0x41865e=_0x447214[_0xe44e('0x99')];return getRealtimeQueues(_0x2b22a6,_0x231030);})[_0xe44e('0x19')](function(_0x56ce4e){_0x44ed9a=_0x56ce4e[_0xe44e('0x99')];return getRealtimeAgents();})[_0xe44e('0x19')](function(_0x2dfd4c){_0x148e40=_0x2dfd4c[_0xe44e('0x99')];if(_0x231030!=_0xe44e('0x34'))return;return getRealtimeVoiceQueueChannels();})[_0xe44e('0x19')](function(_0x4f22f8){_0x251a92=_0x4f22f8?_0x4f22f8['rows']:[];return initializeQueues(_0x41865e,_0x44ed9a,_0x231030,_0x2b22a6[_0xe44e('0x82')][_0xe44e('0x9a')]);})[_0xe44e('0x19')](function(_0x4bae17){var _0x3ece2d=_0x4bae17['map'](function(_0x343963){if(_0x231030===_0xe44e('0x34'))return getVoiceQueueAgents(_0x343963,_0x41865e,_0x148e40,_0x251a92);else return getQueueAgents(_0x343963,_0x148e40,_0x231030);});return Promise[_0xe44e('0x61')](_0x3ece2d);})['then'](function(_0x261860){_0x468ee2[_0xe44e('0x99')]=_0x261860;return _0x468ee2;})[_0xe44e('0x19')](respondWithFilteredResult(_0x452e0c,_0x322d64))[_0xe44e('0x1c')](handleError(_0x452e0c,null));};