Built motion from commit (unavailable).|2.4.4
[motion2.git] / server / services / ami / realtime / index.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 _0x8bea=['zohoAccounts','deskAccounts','vtigerAccounts','servicenowAccounts','dynamics365Accounts','faxAccounts','mapKeys','hasOwnProperty','format','SIP/%s','name','isNil','interface','sumHoldTime','sumBillable','isEmpty','ivrTotalCallsDays','answered','unmanaged','abandoned','outboundAnswerAgiCallsDay','outboundCongestionCallsDay','outboundUnknownCallsDay','outboundDropCallsDayTimeout','outboundDropCallsDayCallersExit','outboundBlacklistCallsDay','outboundOriginateFailureCallsDay','outboundRejectCallsDay','outboundReCallsDay','prototype','initAgents','length','isUndefined','mergeFromDatabase','initTelephones','initTrunks','initVoiceQueues','initTriggers','initTemplates','initZendeskAccounts','zendeskAccounts','initSalesforceAccounts','initFreshdeskAccounts','initZohoAccounts','initSugarcrmAccounts','initVtigerAccounts','initServicenowAccounts','initDynamics365Accounts','initVoiceQueueHopperHistory','merge','initVoiceQueueReports','groupBy','uniqueid','queue','queuecallerabandon','queuecallerleaveAt','diff','queuecallerjoinAt','queuecallerabandonAt','seconds','total','queuecallercomplete','queuecallercompleteAt','sumDuration','initVoiceCallReports','duration','disposition','ANSWERED','billableseconds','initVoiceExtensions','initCampaignHopperHistory','exports','bluebird','lodash','moment','../model/telephone','../model/trunk','../model/voiceQueue','../model/campaign','../model/voiceExtension','../model/zendeskAccount','../model/salesforceAccount','../model/freshdeskAccount','../model/deskAccount','../model/vtigerAccount','../model/servicenowAccount','../model/dynamics365Account','../model/faxAccount','agents','telephones','trunks','voiceQueues','triggers','campaigns','templates','outbound','voiceExtensions','queueChannels','outboundChannels','timers','salesforceAccounts','sugarcrmAccounts','freshdeskAccounts'];(function(_0x26da89,_0x264785){var _0xc95b7b=function(_0x230e5b){while(--_0x230e5b){_0x26da89['push'](_0x26da89['shift']());}};_0xc95b7b(++_0x264785);}(_0x8bea,0x116));var _0xa8be=function(_0x437dd3,_0x2e5941){_0x437dd3=_0x437dd3-0x0;var _0x4967fa=_0x8bea[_0x437dd3];return _0x4967fa;};'use strict';var BPromise=require(_0xa8be('0x0'));var util=require('util');var _=require(_0xa8be('0x1'));var moment=require(_0xa8be('0x2'));var Agent=require('../model/agent');var Telephone=require(_0xa8be('0x3'));var Trunk=require(_0xa8be('0x4'));var VoiceQueue=require(_0xa8be('0x5'));var Trigger=require('../model/trigger');var Template=require('../model/template');var Campaign=require(_0xa8be('0x6'));var VoiceExtension=require(_0xa8be('0x7'));var ZendeskAccount=require(_0xa8be('0x8'));var SalesforceAccount=require(_0xa8be('0x9'));var FreshdeskAccount=require(_0xa8be('0xa'));var SugarcrmAccount=require('../model/sugarcrmAccount');var ZohoAccount=require('../model/zohoAccount');var DeskAccount=require(_0xa8be('0xb'));var VtigerAccount=require(_0xa8be('0xc'));var ServicenowAccount=require(_0xa8be('0xd'));var Dynamics365Account=require(_0xa8be('0xe'));var FaxAccount=require(_0xa8be('0xf'));var Realtime=function(){this[_0xa8be('0x10')]={};this[_0xa8be('0x11')]={};this[_0xa8be('0x12')]={};this[_0xa8be('0x13')]={};this[_0xa8be('0x14')]={};this[_0xa8be('0x15')]={};this[_0xa8be('0x16')]={};this[_0xa8be('0x17')]={'total':0x0,'answered':0x0,'sumHoldTime':0x0,'sumDuration':0x0,'sumBillable':0x0};this[_0xa8be('0x18')]={};this['channels']={};this[_0xa8be('0x19')]={};this[_0xa8be('0x1a')]={};this[_0xa8be('0x1b')]={};this['zendeskAccounts']={};this[_0xa8be('0x1c')]={};this[_0xa8be('0x1d')]={};this[_0xa8be('0x1e')]={};this[_0xa8be('0x1f')]={};this[_0xa8be('0x20')]={};this[_0xa8be('0x21')]={};this[_0xa8be('0x22')]={};this[_0xa8be('0x23')]={};this[_0xa8be('0x24')]={};};function freeIsNotKey(_0x3bc38f,_0x10fafe,_0x32ca52){var _0x2563a2=_[_0xa8be('0x25')](_0x3bc38f,function(_0x546cd2,_0x5ada7d){return _0x546cd2[_0x32ca52];});for(var _0x2a122e in _0x10fafe){if(_0x10fafe[_0xa8be('0x26')](_0x2a122e)){if(!_0x2563a2[_0x2a122e]){delete _0x10fafe[_0x2a122e];}}}}function freeIsNotKeySip(_0x2f7f2c,_0x25c417){var _0x58b302=_['mapKeys'](_0x2f7f2c,function(_0x46dbf6,_0x36f93b){return util[_0xa8be('0x27')](_0xa8be('0x28'),_0x46dbf6[_0xa8be('0x29')]);});for(var _0x10a0db in _0x25c417){if(_0x25c417[_0xa8be('0x26')](_0x10a0db)){if(!_0x58b302[_0x10a0db]){delete _0x25c417[_0x10a0db];}}}}function freeIsNotKeyAgent(_0x492695,_0x27c611){var _0x28800e=_[_0xa8be('0x25')](_0x492695,function(_0x5b2549,_0x26fb56){var _0x5b47de=_[_0xa8be('0x2a')](_0x5b2549[_0xa8be('0x2b')])?util['format'](_0xa8be('0x28'),_0x5b2549[_0xa8be('0x29')]):_0x5b2549['interface'];return _0x5b47de;});for(var _0xdd8bbc in _0x27c611){if(_0x27c611[_0xa8be('0x26')](_0xdd8bbc)){if(!_0x28800e[_0xdd8bbc]){delete _0x27c611[_0xdd8bbc];}}}}function clearVoiceCallReports(_0x247e5e){_0x247e5e['total']=0x0;_0x247e5e['answered']=0x0;_0x247e5e[_0xa8be('0x2c')]=0x0;_0x247e5e['sumDuration']=0x0;_0x247e5e[_0xa8be('0x2d')]=0x0;}function clearCampaigns(_0x531277){if(!_[_0xa8be('0x2e')](_0x531277)){for(var _0x4523cc in _0x531277){if(_0x531277[_0xa8be('0x26')](_0x4523cc)){_0x531277[_0x4523cc][_0xa8be('0x2f')]=0x0;_0x531277[_0x4523cc]['ivrAnswerCallsDay']=0x0;}}}}function clearVoiceQueues(_0x12ee7e){if(!_[_0xa8be('0x2e')](_0x12ee7e)){for(var _0x51312a in _0x12ee7e){if(_0x12ee7e[_0xa8be('0x26')](_0x51312a)){_0x12ee7e[_0x51312a]['total']=0x0;_0x12ee7e[_0x51312a][_0xa8be('0x30')]=0x0;_0x12ee7e[_0x51312a][_0xa8be('0x31')]=0x0;_0x12ee7e[_0x51312a][_0xa8be('0x32')]=0x0;_0x12ee7e[_0x51312a]['sumHoldTime']=0x0;_0x12ee7e[_0x51312a]['sumDuration']=0x0;_0x12ee7e[_0x51312a][_0xa8be('0x2d')]=0x0;_0x12ee7e[_0x51312a][_0xa8be('0x33')]=0x0;_0x12ee7e[_0x51312a]['outboundNoAnswerCallsDay']=0x0;_0x12ee7e[_0x51312a]['outboundBusyCallsDay']=0x0;_0x12ee7e[_0x51312a][_0xa8be('0x34')]=0x0;_0x12ee7e[_0x51312a]['outboundNoSuchCallsDay']=0x0;_0x12ee7e[_0x51312a][_0xa8be('0x35')]=0x0;_0x12ee7e[_0x51312a][_0xa8be('0x36')]=0x0;_0x12ee7e[_0x51312a][_0xa8be('0x37')]=0x0;_0x12ee7e[_0x51312a][_0xa8be('0x38')]=0x0;_0x12ee7e[_0x51312a][_0xa8be('0x39')]=0x0;_0x12ee7e[_0x51312a][_0xa8be('0x3a')]=0x0;_0x12ee7e[_0x51312a][_0xa8be('0x3b')]=0x0;_0x12ee7e[_0x51312a]['outboundAnswerAgiCallsDay']=0x0;_0x12ee7e[_0x51312a]['outboundAnswerCallsDay']=0x0;_0x12ee7e[_0x51312a]['queueStatusComplete']=!![];}}}}Realtime[_0xa8be('0x3c')]['mergeFromDatabase']=function(_0x46add9,_0x174c7c){for(var _0x45bc9a in _0x174c7c){if(_0x46add9[_0xa8be('0x26')](_0x45bc9a)){_0x46add9[_0x45bc9a]=_0x174c7c[_0x45bc9a];}}};Realtime['prototype'][_0xa8be('0x3d')]=function(){var _0x53f8d5=this;return function(_0x29dd26){if(_0x29dd26){freeIsNotKeyAgent(_0x29dd26,_0x53f8d5[_0xa8be('0x10')]);for(var _0x173bf2=0x0,_0x35828a={},_0x34b8a3={};_0x173bf2<_0x29dd26[_0xa8be('0x3e')];_0x173bf2+=0x1){_0x35828a=_0x29dd26[_0x173bf2];var _0x46511b=_[_0xa8be('0x2a')](_0x35828a['interface'])?util['format'](_0xa8be('0x28'),_0x35828a[_0xa8be('0x29')]):_0x35828a['interface'];if(_[_0xa8be('0x3f')](_0x53f8d5[_0xa8be('0x10')][_0x46511b])){_0x53f8d5[_0xa8be('0x10')][_0x46511b]=new Agent(_0x35828a);}else{_0x53f8d5[_0xa8be('0x40')](_0x53f8d5[_0xa8be('0x10')][_0x46511b],_0x35828a);}}}return _0x53f8d5['agents'];};};Realtime[_0xa8be('0x3c')][_0xa8be('0x41')]=function(){var _0x13ede9=this;return function(_0x149e66){if(_0x149e66){freeIsNotKeySip(_0x149e66,_0x13ede9[_0xa8be('0x11')]);for(var _0x2c9c93=0x0,_0x3ad6bf={},_0x437570={};_0x2c9c93<_0x149e66[_0xa8be('0x3e')];_0x2c9c93+=0x1){_0x3ad6bf=_0x149e66[_0x2c9c93];if(_[_0xa8be('0x3f')](_0x13ede9['telephones'][util[_0xa8be('0x27')](_0xa8be('0x28'),_0x3ad6bf[_0xa8be('0x29')])])){_0x13ede9[_0xa8be('0x11')][util[_0xa8be('0x27')]('SIP/%s',_0x3ad6bf[_0xa8be('0x29')])]=new Telephone(_0x3ad6bf);}else{_0x13ede9[_0xa8be('0x40')](_0x13ede9[_0xa8be('0x11')][util[_0xa8be('0x27')]('SIP/%s',_0x3ad6bf[_0xa8be('0x29')])],_0x3ad6bf);}}}return _0x13ede9[_0xa8be('0x11')];};};Realtime[_0xa8be('0x3c')][_0xa8be('0x42')]=function(){var _0x516823=this;return function(_0x1ee56b){if(_0x1ee56b){freeIsNotKeySip(_0x1ee56b,_0x516823[_0xa8be('0x12')]);for(var _0x9bf4e2=0x0,_0x382e9c={},_0x6bceb3={};_0x9bf4e2<_0x1ee56b[_0xa8be('0x3e')];_0x9bf4e2+=0x1){_0x382e9c=_0x1ee56b[_0x9bf4e2];if(_[_0xa8be('0x3f')](_0x516823[_0xa8be('0x12')][util[_0xa8be('0x27')](_0xa8be('0x28'),_0x382e9c['name'])])){_0x516823['trunks'][util['format'](_0xa8be('0x28'),_0x382e9c[_0xa8be('0x29')])]=new Trunk(_0x382e9c);}else{_0x516823['mergeFromDatabase'](_0x516823[_0xa8be('0x12')][util[_0xa8be('0x27')]('SIP/%s',_0x382e9c['name'])],_0x382e9c);}}}return _0x516823['trunks'];};};Realtime[_0xa8be('0x3c')][_0xa8be('0x43')]=function(){var _0x3d776b=this;return function(_0xa25331){if(_0xa25331){freeIsNotKey(_0xa25331,_0x3d776b[_0xa8be('0x13')],_0xa8be('0x29'));for(var _0x495952=0x0,_0x59dd96={},_0x2c2725={};_0x495952<_0xa25331[_0xa8be('0x3e')];_0x495952+=0x1){_0x59dd96=_0xa25331[_0x495952];if(_[_0xa8be('0x3f')](_0x3d776b['voiceQueues'][_0x59dd96[_0xa8be('0x29')]])){_0x3d776b[_0xa8be('0x13')][_0x59dd96[_0xa8be('0x29')]]=new VoiceQueue(_0x59dd96);}else{_0x3d776b['mergeFromDatabase'](_0x3d776b[_0xa8be('0x13')][_0x59dd96['name']],_0x59dd96);}}}return _0x3d776b[_0xa8be('0x13')];};};Realtime[_0xa8be('0x3c')][_0xa8be('0x44')]=function(){var _0x1b411b=this;return function(_0x35d245){if(_0x35d245){freeIsNotKey(_0x35d245,_0x1b411b[_0xa8be('0x14')],'id');for(var _0x13735e=0x0,_0x544c4d={},_0x2ff013={};_0x13735e<_0x35d245[_0xa8be('0x3e')];_0x13735e+=0x1){_0x544c4d=_0x35d245[_0x13735e];if(_['isUndefined'](_0x1b411b[_0xa8be('0x14')][_0x544c4d['id']])){_0x1b411b[_0xa8be('0x14')][_0x544c4d['id']]=new Trigger(_0x544c4d);}else{_0x1b411b[_0xa8be('0x40')](_0x1b411b['triggers'][_0x544c4d['id']],_0x544c4d);}}}return _0x1b411b[_0xa8be('0x14')];};};Realtime[_0xa8be('0x3c')][_0xa8be('0x45')]=function(){var _0x3947c0=this;return function(_0x2943c9){if(_0x2943c9){freeIsNotKey(_0x2943c9,_0x3947c0[_0xa8be('0x16')],'id');for(var _0x5c9e53=0x0,_0x503e8a={},_0xd3d1ed={};_0x5c9e53<_0x2943c9[_0xa8be('0x3e')];_0x5c9e53+=0x1){_0x503e8a=_0x2943c9[_0x5c9e53];if(_[_0xa8be('0x3f')](_0x3947c0[_0xa8be('0x16')][_0x503e8a['id']])){_0x3947c0['templates'][_0x503e8a['id']]=new Template(_0x503e8a);}else{_0x3947c0[_0xa8be('0x40')](_0x3947c0['templates'][_0x503e8a['id']],_0x503e8a);}}}return _0x3947c0[_0xa8be('0x16')];};};Realtime[_0xa8be('0x3c')][_0xa8be('0x46')]=function(){var _0xa73da4=this;return function(_0x18bf14){if(_0x18bf14){freeIsNotKey(_0x18bf14,_0xa73da4[_0xa8be('0x47')],'id');for(var _0x225fd5=0x0,_0x4163b7={},_0x2cae81={};_0x225fd5<_0x18bf14[_0xa8be('0x3e')];_0x225fd5+=0x1){_0x4163b7=_0x18bf14[_0x225fd5];if(_['isUndefined'](_0xa73da4[_0xa8be('0x47')][_0x4163b7['id']])){_0xa73da4['zendeskAccounts'][_0x4163b7['id']]=new ZendeskAccount(_0x4163b7);}else{_0xa73da4[_0xa8be('0x40')](_0xa73da4[_0xa8be('0x47')][_0x4163b7['id']],_0x4163b7);}}}return _0xa73da4[_0xa8be('0x47')];};};Realtime[_0xa8be('0x3c')][_0xa8be('0x48')]=function(){var _0x51b058=this;return function(_0x5222b9){if(_0x5222b9){freeIsNotKey(_0x5222b9,_0x51b058[_0xa8be('0x1c')],'id');for(var _0x1e9fab=0x0,_0x1eabc8={},_0x5c31e4={};_0x1e9fab<_0x5222b9[_0xa8be('0x3e')];_0x1e9fab+=0x1){_0x1eabc8=_0x5222b9[_0x1e9fab];if(_[_0xa8be('0x3f')](_0x51b058[_0xa8be('0x1c')][_0x1eabc8['id']])){_0x51b058['salesforceAccounts'][_0x1eabc8['id']]=new SalesforceAccount(_0x1eabc8);}else{_0x51b058[_0xa8be('0x40')](_0x51b058[_0xa8be('0x1c')][_0x1eabc8['id']],_0x1eabc8);}}}return _0x51b058[_0xa8be('0x1c')];};};Realtime[_0xa8be('0x3c')][_0xa8be('0x49')]=function(){var _0x204954=this;return function(_0x224074){if(_0x224074){freeIsNotKey(_0x224074,_0x204954[_0xa8be('0x1e')],'id');for(var _0x4201fb=0x0,_0x4b20a6={},_0x3d3861={};_0x4201fb<_0x224074[_0xa8be('0x3e')];_0x4201fb+=0x1){_0x4b20a6=_0x224074[_0x4201fb];if(_[_0xa8be('0x3f')](_0x204954[_0xa8be('0x1e')][_0x4b20a6['id']])){_0x204954['freshdeskAccounts'][_0x4b20a6['id']]=new FreshdeskAccount(_0x4b20a6);}else{_0x204954[_0xa8be('0x40')](_0x204954[_0xa8be('0x1e')][_0x4b20a6['id']],_0x4b20a6);}}}return _0x204954['freshdeskAccounts'];};};Realtime[_0xa8be('0x3c')][_0xa8be('0x4a')]=function(){var _0x433e8a=this;return function(_0x4262d3){if(_0x4262d3){freeIsNotKey(_0x4262d3,_0x433e8a['zohoAccounts'],'id');for(var _0x22c3f1=0x0,_0x24b3a9={},_0x49409f={};_0x22c3f1<_0x4262d3[_0xa8be('0x3e')];_0x22c3f1+=0x1){_0x24b3a9=_0x4262d3[_0x22c3f1];if(_[_0xa8be('0x3f')](_0x433e8a['zohoAccounts'][_0x24b3a9['id']])){_0x433e8a[_0xa8be('0x1f')][_0x24b3a9['id']]=new ZohoAccount(_0x24b3a9);}else{_0x433e8a[_0xa8be('0x40')](_0x433e8a['zohoAccounts'][_0x24b3a9['id']],_0x24b3a9);}}}return _0x433e8a[_0xa8be('0x1f')];};};Realtime[_0xa8be('0x3c')]['initDeskAccounts']=function(){var _0x28efd5=this;return function(_0x169c87){if(_0x169c87){freeIsNotKey(_0x169c87,_0x28efd5['deskAccounts'],'id');for(var _0x512e5f=0x0,_0xe5abc3={},_0xf75ab1={};_0x512e5f<_0x169c87[_0xa8be('0x3e')];_0x512e5f+=0x1){_0xe5abc3=_0x169c87[_0x512e5f];if(_['isUndefined'](_0x28efd5['deskAccounts'][_0xe5abc3['id']])){_0x28efd5['deskAccounts'][_0xe5abc3['id']]=new DeskAccount(_0xe5abc3);}else{_0x28efd5[_0xa8be('0x40')](_0x28efd5['deskAccounts'][_0xe5abc3['id']],_0xe5abc3);}}}return _0x28efd5[_0xa8be('0x20')];};};Realtime[_0xa8be('0x3c')][_0xa8be('0x4b')]=function(){var _0x2e6efa=this;return function(_0x54019d){if(_0x54019d){freeIsNotKey(_0x54019d,_0x2e6efa[_0xa8be('0x1d')],'id');for(var _0x5239e9=0x0,_0x49b926={},_0x293ad8={};_0x5239e9<_0x54019d['length'];_0x5239e9+=0x1){_0x49b926=_0x54019d[_0x5239e9];if(_['isUndefined'](_0x2e6efa[_0xa8be('0x1d')][_0x49b926['id']])){_0x2e6efa[_0xa8be('0x1d')][_0x49b926['id']]=new SugarcrmAccount(_0x49b926);}else{_0x2e6efa[_0xa8be('0x40')](_0x2e6efa[_0xa8be('0x1d')][_0x49b926['id']],_0x49b926);}}}return _0x2e6efa['sugarcrmAccounts'];};};Realtime[_0xa8be('0x3c')][_0xa8be('0x4c')]=function(){var _0x3478a3=this;return function(_0x2d2c11){if(_0x2d2c11){freeIsNotKey(_0x2d2c11,_0x3478a3[_0xa8be('0x21')],'id');for(var _0x2fba57=0x0,_0x1b8efb={},_0xa84df4={};_0x2fba57<_0x2d2c11[_0xa8be('0x3e')];_0x2fba57+=0x1){_0x1b8efb=_0x2d2c11[_0x2fba57];if(_[_0xa8be('0x3f')](_0x3478a3[_0xa8be('0x21')][_0x1b8efb['id']])){_0x3478a3['vtigerAccounts'][_0x1b8efb['id']]=new VtigerAccount(_0x1b8efb);}else{_0x3478a3[_0xa8be('0x40')](_0x3478a3[_0xa8be('0x21')][_0x1b8efb['id']],_0x1b8efb);}}}return _0x3478a3[_0xa8be('0x21')];};};Realtime[_0xa8be('0x3c')][_0xa8be('0x4d')]=function(){var _0x5c7dbb=this;return function(_0x5bf4c2){if(_0x5bf4c2){freeIsNotKey(_0x5bf4c2,_0x5c7dbb[_0xa8be('0x22')],'id');for(var _0x379ddb=0x0,_0x2efe39={},_0x406a91={};_0x379ddb<_0x5bf4c2[_0xa8be('0x3e')];_0x379ddb+=0x1){_0x2efe39=_0x5bf4c2[_0x379ddb];if(_['isUndefined'](_0x5c7dbb[_0xa8be('0x22')][_0x2efe39['id']])){_0x5c7dbb[_0xa8be('0x22')][_0x2efe39['id']]=new ServicenowAccount(_0x2efe39);}else{_0x5c7dbb[_0xa8be('0x40')](_0x5c7dbb[_0xa8be('0x22')][_0x2efe39['id']],_0x2efe39);}}}return _0x5c7dbb['servicenowAccounts'];};};Realtime[_0xa8be('0x3c')][_0xa8be('0x4e')]=function(){var _0x274b6a=this;return function(_0x10b4d8){if(_0x10b4d8){freeIsNotKey(_0x10b4d8,_0x274b6a['dynamics365Accounts'],'id');for(var _0x3ad2d7=0x0,_0x317933={},_0x23e389={};_0x3ad2d7<_0x10b4d8[_0xa8be('0x3e')];_0x3ad2d7+=0x1){_0x317933=_0x10b4d8[_0x3ad2d7];if(_['isUndefined'](_0x274b6a[_0xa8be('0x23')][_0x317933['id']])){_0x274b6a[_0xa8be('0x23')][_0x317933['id']]=new Dynamics365Account(_0x317933);}else{_0x274b6a[_0xa8be('0x40')](_0x274b6a[_0xa8be('0x23')][_0x317933['id']],_0x317933);}}}return _0x274b6a[_0xa8be('0x23')];};};Realtime[_0xa8be('0x3c')][_0xa8be('0x4f')]=function(){var _0x2fe39f=this;return function(_0x6a3d04){for(var _0x237c24=0x0;_0x237c24<_0x6a3d04[_0xa8be('0x3e')];_0x237c24+=0x1){_[_0xa8be('0x50')](_0x2fe39f[_0xa8be('0x13')][_0x6a3d04[_0x237c24][_0xa8be('0x29')]],_0x6a3d04[_0x237c24]);}return _0x2fe39f['voiceQueues'];};};Realtime[_0xa8be('0x3c')][_0xa8be('0x51')]=function(){var _0x545581=this;return function(_0x1f26a0){clearVoiceQueues(_0x545581[_0xa8be('0x13')]);if(_0x1f26a0){_0x1f26a0=_[_0xa8be('0x52')](_0x1f26a0,_0xa8be('0x53'));for(var _0x27f36e in _0x1f26a0){if(_0x1f26a0['hasOwnProperty'](_0x27f36e)){var _0x1387cd={};for(var _0x3a2c0b=0x0;_0x3a2c0b<_0x1f26a0[_0x27f36e][_0xa8be('0x3e')];_0x3a2c0b+=0x1){var _0x43672c=_0x1f26a0[_0x27f36e][_0x3a2c0b][_0xa8be('0x54')];if(_0x545581[_0xa8be('0x13')][_0x43672c]){if(_0x1f26a0[_0x27f36e][_0x3a2c0b]['queuecallerexit']){_0x545581[_0xa8be('0x13')][_0x43672c][_0xa8be('0x31')]+=0x1;}if(_0x1f26a0[_0x27f36e][_0x3a2c0b][_0xa8be('0x55')]){_0x545581[_0xa8be('0x13')][_0x43672c][_0xa8be('0x32')]+=0x1;}_0x545581['voiceQueues'][_0x43672c][_0xa8be('0x2c')]+=moment(_0x1f26a0[_0x27f36e][_0x3a2c0b][_0xa8be('0x56')])[_0xa8be('0x57')](moment(_0x1f26a0[_0x27f36e][_0x3a2c0b][_0xa8be('0x58')]),'seconds')||0x0;if(_0x3a2c0b===_0x1f26a0[_0x27f36e][_0xa8be('0x3e')]-0x1){_0x545581['voiceQueues'][_0x43672c]['sumDuration']+=moment(_0x1f26a0[_0x27f36e][_0x3a2c0b]['queuecallercompleteAt']||_0x1f26a0[_0x27f36e][_0x3a2c0b][_0xa8be('0x59')]||_0x1f26a0[_0x27f36e][_0x3a2c0b]['queuecallerexitAt'])[_0xa8be('0x57')](moment(_0x1f26a0[_0x27f36e][_0x3a2c0b]['queuecallerjoinAt']),_0xa8be('0x5a'))||0x0;_0x545581['voiceQueues'][_0x43672c][_0xa8be('0x5b')]+=0x1;if(_0x1f26a0[_0x27f36e][_0x3a2c0b][_0xa8be('0x5c')]){_0x545581[_0xa8be('0x13')][_0x43672c]['answered']+=0x1;_0x545581[_0xa8be('0x13')][_0x43672c]['sumBillable']+=moment(_0x1f26a0[_0x27f36e][_0x3a2c0b][_0xa8be('0x5d')])[_0xa8be('0x57')](moment(_0x1f26a0[_0x27f36e][_0x3a2c0b]['queuecallerleaveAt']),_0xa8be('0x5a'))||0x0;}}else{_0x545581[_0xa8be('0x13')][_0x43672c][_0xa8be('0x5e')]+=_0x545581['voiceQueues'][_0x43672c][_0xa8be('0x2c')]||0x0;}}}}}}return _0x545581[_0xa8be('0x13')];};};Realtime[_0xa8be('0x3c')][_0xa8be('0x5f')]=function(){var _0xc7bb72=this;return function(_0x1f293b){clearVoiceCallReports(_0xc7bb72[_0xa8be('0x17')]);if(_0x1f293b){for(var _0x4f8dcc=0x0;_0x4f8dcc<_0x1f293b[_0xa8be('0x3e')];_0x4f8dcc+=0x1){_0xc7bb72[_0xa8be('0x17')][_0xa8be('0x5b')]+=0x1;_0xc7bb72[_0xa8be('0x17')][_0xa8be('0x5e')]+=_0x1f293b[_0x4f8dcc][_0xa8be('0x60')];if(_0x1f293b[_0x4f8dcc][_0xa8be('0x61')]===_0xa8be('0x62')){_0xc7bb72[_0xa8be('0x17')]['answered']+=0x1;_0xc7bb72[_0xa8be('0x17')][_0xa8be('0x2c')]+=_0x1f293b[_0x4f8dcc][_0xa8be('0x60')]-_0x1f293b[_0x4f8dcc][_0xa8be('0x63')]||0x0;_0xc7bb72['outbound']['sumBillable']+=_0x1f293b[_0x4f8dcc][_0xa8be('0x63')];}}}return _0xc7bb72[_0xa8be('0x17')];};};Realtime[_0xa8be('0x3c')]['initCampaigns']=function(){var _0x224c08=this;return function(_0x2c744e){if(_0x2c744e){freeIsNotKey(_0x2c744e,_0x224c08[_0xa8be('0x15')],'name');for(var _0x5a1c91=0x0,_0x47a277={};_0x5a1c91<_0x2c744e['length'];_0x5a1c91+=0x1){_0x47a277=_0x2c744e[_0x5a1c91];if(_[_0xa8be('0x3f')](_0x224c08[_0xa8be('0x15')][_0x47a277['name']])){_0x224c08[_0xa8be('0x15')][_0x47a277['name']]=new Campaign(_0x47a277);}else{_0x224c08['mergeFromDatabase'](_0x224c08[_0xa8be('0x15')][_0x47a277[_0xa8be('0x29')]],_0x47a277);}}}return _0x224c08[_0xa8be('0x15')];};};Realtime[_0xa8be('0x3c')][_0xa8be('0x64')]=function(){var _0x32d298=this;return function(_0x4926c7){if(_0x4926c7){freeIsNotKey(_0x4926c7,_0x32d298[_0xa8be('0x18')],'id');for(var _0x230b8d=0x0,_0x255bab={};_0x230b8d<_0x4926c7[_0xa8be('0x3e')];_0x230b8d+=0x1){_0x255bab=_0x4926c7[_0x230b8d];if(_[_0xa8be('0x3f')](_0x32d298[_0xa8be('0x18')][_0x255bab['id']])){_0x32d298[_0xa8be('0x18')][_0x255bab['id']]=new VoiceExtension(_0x255bab);}else{_0x32d298['mergeFromDatabase'](_0x32d298[_0xa8be('0x18')][_0x255bab['id']],_0x255bab);}}}return _0x32d298[_0xa8be('0x18')];};};Realtime[_0xa8be('0x3c')][_0xa8be('0x65')]=function(){var _0x498a61=this;return function(_0x5d204b){clearCampaigns(_0x498a61[_0xa8be('0x15')]);for(var _0x380b59=0x0;_0x380b59<_0x5d204b[_0xa8be('0x3e')];_0x380b59+=0x1){_[_0xa8be('0x50')](_0x498a61[_0xa8be('0x15')][_0x5d204b[_0x380b59][_0xa8be('0x29')]],_0x5d204b[_0x380b59]);}return _0x498a61[_0xa8be('0x15')];};};Realtime[_0xa8be('0x3c')]['initFaxAccounts']=function(){var _0x143107=this;return function(_0x2ca3dd){if(_0x2ca3dd){freeIsNotKey(_0x2ca3dd,_0x143107[_0xa8be('0x24')],'id');for(var _0x53fbc4=0x0,_0x56264e={},_0x3d3622={};_0x53fbc4<_0x2ca3dd['length'];_0x53fbc4+=0x1){_0x56264e=_0x2ca3dd[_0x53fbc4];if(_[_0xa8be('0x3f')](_0x143107[_0xa8be('0x24')][_0x56264e['id']])){_0x143107[_0xa8be('0x24')][_0x56264e['id']]=new FaxAccount(_0x56264e);}else{_0x143107[_0xa8be('0x40')](_0x143107[_0xa8be('0x24')][_0x56264e['id']],_0x56264e);}}}return _0x143107[_0xa8be('0x24')];};};module[_0xa8be('0x66')]=Realtime;