dfef9d0d7927f2efcd93e3a10ddfe058c4e94196
[motion2.git] / server / components / realtime / queues.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 _0x69d3=['invalid','notInUse','unavailable','unknown','pTalking','message','dialActive','dialMethod','Trunk','startProgressive','erlangCalls','erlangCallToSecond','erlangAbandonmentRate','erlangBusyFactor','dialPredictiveInterval','dialPredictiveIntervalMaxThreshold','dialPredictiveIntervalMinThreshold','predictiveIntervalAvailable','predictiveIntervalTotalCalls','predictiveIntervalAnsweredCalls','predictiveIntervalDroppedCallsTimeout','predictiveIntervalDroppedCallsCallersExit','predictiveIntervalAvgHoldtime','predictiveIntervalAvgTalktime','voice','startCase','Queues','then','error','format','Unable\x20to\x20retrieve\x20RPC\x20%s\x20queues','catch','getRealtimeQueues','inbound','concat','outbound','loggedInDb','loggedIn','talking','originated','find','merge','initializeQueues','lodash','jayson/promise','util','client','http','available','paused','waiting','busy'];(function(_0x343343,_0x46874d){var _0x25462d=function(_0x2f88a4){while(--_0x2f88a4){_0x343343['push'](_0x343343['shift']());}};_0x25462d(++_0x46874d);}(_0x69d3,0x93));var _0x369d=function(_0x50d8b0,_0xba165d){_0x50d8b0=_0x50d8b0-0x0;var _0x2d5045=_0x69d3[_0x50d8b0];return _0x2d5045;};'use strict';var _=require(_0x369d('0x0'));var jayson=require(_0x369d('0x1'));var util=require(_0x369d('0x2'));var amiClient=jayson[_0x369d('0x3')][_0x369d('0x4')]({'port':0x232a});var routingClient=jayson[_0x369d('0x3')]['http']({'port':0x232c});var DEFAULT_QUEUE_ATTRIBUTES=[_0x369d('0x5'),'loggedIn',_0x369d('0x6'),_0x369d('0x7')];var VOICE_QUEUE_ATTRIBUTES=[_0x369d('0x8'),'inUse',_0x369d('0x9'),'loggedInDb',_0x369d('0xa'),'onHold','ringing','ringInUse','talking',_0x369d('0xb'),_0x369d('0xc')];var OUTBOUND_QUEUE_ATTRIBUTES=[_0x369d('0xd'),'originated',_0x369d('0xe'),'statusMessage',_0x369d('0xf'),_0x369d('0x10'),_0x369d('0x11'),'startPredictive',_0x369d('0x12'),_0x369d('0x13'),_0x369d('0x14'),_0x369d('0x15'),_0x369d('0x16'),_0x369d('0x17'),_0x369d('0x18'),_0x369d('0x19'),_0x369d('0x1a'),_0x369d('0x1b'),_0x369d('0x1c'),_0x369d('0x1d'),_0x369d('0x1e'),_0x369d('0x1f'),_0x369d('0x20')];function getRealtimeQueues(_0x25fc76,_0x2a0d4c){var _0x54e389=_0x2a0d4c===_0x369d('0x21')?amiClient:routingClient;return _0x54e389['request'](_[_0x369d('0x22')](_0x2a0d4c)+_0x369d('0x23'),_0x25fc76)[_0x369d('0x24')](function(_0x320fa7){if(_0x320fa7[_0x369d('0x25')])throw new Error(util[_0x369d('0x26')](_0x369d('0x27'),_0x2a0d4c));return _0x320fa7['result'];})[_0x369d('0x28')](function(_0x4e1494){throw _0x4e1494;});}exports[_0x369d('0x29')]=getRealtimeQueues;function initializeQueues(_0x42cb16,_0x2833dc,_0x402fd6,_0x55addd){var _0x18d5ef=DEFAULT_QUEUE_ATTRIBUTES;if(_0x402fd6===_0x369d('0x21')){if(_0x55addd===_0x369d('0x2a')){_0x18d5ef=_0x18d5ef[_0x369d('0x2b')](VOICE_QUEUE_ATTRIBUTES);}else if(_0x55addd===_0x369d('0x2c')){_0x18d5ef=_0x18d5ef[_0x369d('0x2b')](VOICE_QUEUE_ATTRIBUTES,OUTBOUND_QUEUE_ATTRIBUTES);}}return _0x42cb16['map'](function(_0x53b25a){var _0x5686d9=_0x53b25a['get']({'plain':!![]});_0x5686d9['paused']=0x0;_0x5686d9[_0x369d('0x2d')]=0x0;_0x5686d9[_0x369d('0x2e')]=0x0;_0x5686d9[_0x369d('0x5')]=0x0;_0x5686d9['waiting']=0x0;if(_0x402fd6===_0x369d('0x21')){_0x5686d9[_0x369d('0x2f')]=0x0;_0x5686d9[_0x369d('0x8')]=0x0;if(_0x55addd===_0x369d('0x2c')){_0x5686d9[_0x369d('0xd')]=0x0;_0x5686d9[_0x369d('0x30')]=0x0;}}var _0x517791=_[_0x369d('0x31')](_0x2833dc,['id',_0x5686d9['id']]);if(_0x517791){_[_0x369d('0x32')](_0x5686d9,_['pick'](_0x517791,_0x18d5ef));}return _0x5686d9;});}exports[_0x369d('0x33')]=initializeQueues;