bfbaf843189ab1564b7d9f09956a3e2224eda2f7
[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 _0xe056=['diff','queuecallerjoinAt','seconds','queuecallercompleteAt','queuecallercomplete','outbound','duration','disposition','ANSWERED','billableseconds','initCampaigns','dialQueueProject','SquareProject','initVoiceExtensions','initCampaignHopperHistory','initFaxAccounts','exports','moment','../model/agent','../model/telephone','../model/voiceQueue','../model/template','../model/campaign','../model/freshdeskAccount','../model/sugarcrmAccount','../model/zohoAccount','../model/vtigerAccount','../model/servicenowAccount','../model/dynamics365Account','../model/freshsalesAccount','../model/faxAccount','telephones','trunks','voiceQueues','triggers','campaigns','templates','voiceExtensions','channels','queueChannels','timers','settings','zendeskAccounts','salesforceAccounts','sugarcrmAccounts','zohoAccounts','deskAccounts','dynamics365Accounts','freshsalesAccounts','faxAccounts','mapKeys','hasOwnProperty','SIP/%s','name','isNil','interface','format','total','answered','sumHoldTime','sumDuration','sumBillable','isEmpty','ivrTotalCallsDays','ivrAnswerCallsDay','outboundAnswerAgiCallsDay','outboundBusyCallsDay','outboundCongestionCallsDay','outboundNoSuchCallsDay','outboundDropCallsDayTimeout','outboundRejectCallsDay','outboundReCallsDay','outboundAnswerCallsDay','queueStatusComplete','prototype','mergeFromDatabase','initAgents','length','isUndefined','agents','initTelephones','initTriggers','initZendeskAccounts','initSalesforceAccounts','initFreshdeskAccounts','freshdeskAccounts','initZohoAccounts','initDeskAccounts','initSugarcrmAccounts','initVtigerAccounts','vtigerAccounts','initServicenowAccounts','servicenowAccounts','initDynamics365Accounts','initFreshsalesAccounts','merge','initVoiceQueueReports','groupBy','queue','abandoned','queuecallerleaveAt'];(function(_0x1678c8,_0x1c32f4){var _0x387aa9=function(_0x2803bd){while(--_0x2803bd){_0x1678c8['push'](_0x1678c8['shift']());}};_0x387aa9(++_0x1c32f4);}(_0xe056,0xdb));var _0x6e05=function(_0x485abd,_0x32c7c1){_0x485abd=_0x485abd-0x0;var _0x3379f1=_0xe056[_0x485abd];return _0x3379f1;};'use strict';var util=require('util');var _=require('lodash');var moment=require(_0x6e05('0x0'));var Agent=require(_0x6e05('0x1'));var Telephone=require(_0x6e05('0x2'));var Trunk=require('../model/trunk');var VoiceQueue=require(_0x6e05('0x3'));var Trigger=require('../model/trigger');var Template=require(_0x6e05('0x4'));var Campaign=require(_0x6e05('0x5'));var VoiceExtension=require('../model/voiceExtension');var ZendeskAccount=require('../model/zendeskAccount');var SalesforceAccount=require('../model/salesforceAccount');var FreshdeskAccount=require(_0x6e05('0x6'));var SugarcrmAccount=require(_0x6e05('0x7'));var ZohoAccount=require(_0x6e05('0x8'));var DeskAccount=require('../model/deskAccount');var VtigerAccount=require(_0x6e05('0x9'));var ServicenowAccount=require(_0x6e05('0xa'));var Dynamics365Account=require(_0x6e05('0xb'));var FreshsalesAccount=require(_0x6e05('0xc'));var FaxAccount=require(_0x6e05('0xd'));var Realtime=function(){this['agents']={};this[_0x6e05('0xe')]={};this[_0x6e05('0xf')]={};this[_0x6e05('0x10')]={};this[_0x6e05('0x11')]={};this[_0x6e05('0x12')]={};this[_0x6e05('0x13')]={};this['outbound']={'total':0x0,'answered':0x0,'sumHoldTime':0x0,'sumDuration':0x0,'sumBillable':0x0};this[_0x6e05('0x14')]={};this[_0x6e05('0x15')]={};this[_0x6e05('0x16')]={};this['outboundChannels']={};this[_0x6e05('0x17')]={};this[_0x6e05('0x18')]={};this[_0x6e05('0x19')]={};this[_0x6e05('0x1a')]={};this[_0x6e05('0x1b')]={};this['freshdeskAccounts']={};this[_0x6e05('0x1c')]={};this[_0x6e05('0x1d')]={};this['vtigerAccounts']={};this['servicenowAccounts']={};this[_0x6e05('0x1e')]={};this[_0x6e05('0x1f')]={};this[_0x6e05('0x20')]={};};function freeIsNotKey(_0x5c778b,_0x128186,_0x5e9a38){var _0x3c3ef0=_[_0x6e05('0x21')](_0x5c778b,function(_0x517326,_0x550da7){return _0x517326[_0x5e9a38];});for(var _0x9d1e04 in _0x128186){if(_0x128186[_0x6e05('0x22')](_0x9d1e04)){if(!_0x3c3ef0[_0x9d1e04]){delete _0x128186[_0x9d1e04];}}}}function freeIsNotKeySip(_0x4418c6,_0x3862bb){var _0x41d22c=_['mapKeys'](_0x4418c6,function(_0x13d0aa,_0x4b60ff){return util['format'](_0x6e05('0x23'),_0x13d0aa[_0x6e05('0x24')]);});for(var _0xe49265 in _0x3862bb){if(_0x3862bb[_0x6e05('0x22')](_0xe49265)){if(!_0x41d22c[_0xe49265]){delete _0x3862bb[_0xe49265];}}}}function freeIsNotKeyAgent(_0x2e500a,_0x31c52e){var _0x247cf6=_[_0x6e05('0x21')](_0x2e500a,function(_0x488055,_0x1438a6){var _0x4db161=_[_0x6e05('0x25')](_0x488055[_0x6e05('0x26')])?util[_0x6e05('0x27')]('SIP/%s',_0x488055['name']):_0x488055[_0x6e05('0x26')];return _0x4db161;});for(var _0x5d80cd in _0x31c52e){if(_0x31c52e[_0x6e05('0x22')](_0x5d80cd)){if(!_0x247cf6[_0x5d80cd]){delete _0x31c52e[_0x5d80cd];}}}}function clearVoiceCallReports(_0x63172e){_0x63172e[_0x6e05('0x28')]=0x0;_0x63172e[_0x6e05('0x29')]=0x0;_0x63172e[_0x6e05('0x2a')]=0x0;_0x63172e[_0x6e05('0x2b')]=0x0;_0x63172e[_0x6e05('0x2c')]=0x0;}function clearCampaigns(_0x5d7701){if(!_[_0x6e05('0x2d')](_0x5d7701)){for(var _0x3bdfef in _0x5d7701){if(_0x5d7701['hasOwnProperty'](_0x3bdfef)){_0x5d7701[_0x3bdfef][_0x6e05('0x2e')]=0x0;_0x5d7701[_0x3bdfef][_0x6e05('0x2f')]=0x0;}}}}function clearVoiceQueues(_0x578270){if(!_['isEmpty'](_0x578270)){for(var _0x8a230 in _0x578270){if(_0x578270['hasOwnProperty'](_0x8a230)){_0x578270[_0x8a230][_0x6e05('0x28')]=0x0;_0x578270[_0x8a230][_0x6e05('0x29')]=0x0;_0x578270[_0x8a230]['unmanaged']=0x0;_0x578270[_0x8a230]['abandoned']=0x0;_0x578270[_0x8a230][_0x6e05('0x2a')]=0x0;_0x578270[_0x8a230][_0x6e05('0x2b')]=0x0;_0x578270[_0x8a230][_0x6e05('0x2c')]=0x0;_0x578270[_0x8a230][_0x6e05('0x30')]=0x0;_0x578270[_0x8a230]['outboundNoAnswerCallsDay']=0x0;_0x578270[_0x8a230][_0x6e05('0x31')]=0x0;_0x578270[_0x8a230][_0x6e05('0x32')]=0x0;_0x578270[_0x8a230][_0x6e05('0x33')]=0x0;_0x578270[_0x8a230]['outboundUnknownCallsDay']=0x0;_0x578270[_0x8a230][_0x6e05('0x34')]=0x0;_0x578270[_0x8a230]['outboundDropCallsDayCallersExit']=0x0;_0x578270[_0x8a230]['outboundBlacklistCallsDay']=0x0;_0x578270[_0x8a230]['outboundOriginateFailureCallsDay']=0x0;_0x578270[_0x8a230][_0x6e05('0x35')]=0x0;_0x578270[_0x8a230][_0x6e05('0x36')]=0x0;_0x578270[_0x8a230][_0x6e05('0x30')]=0x0;_0x578270[_0x8a230][_0x6e05('0x37')]=0x0;_0x578270[_0x8a230][_0x6e05('0x38')]=!![];}}}}Realtime[_0x6e05('0x39')][_0x6e05('0x3a')]=function(_0x5c9446,_0x1ea3c6){for(var _0x4a1ed5 in _0x1ea3c6){if(_0x5c9446[_0x6e05('0x22')](_0x4a1ed5)){_0x5c9446[_0x4a1ed5]=_0x1ea3c6[_0x4a1ed5];}}};Realtime['prototype'][_0x6e05('0x3b')]=function(){var _0x5989b9=this;return function(_0xeaeade){if(_0xeaeade){freeIsNotKeyAgent(_0xeaeade,_0x5989b9['agents']);for(var _0x2578a5=0x0,_0x57e879={},_0x335869={};_0x2578a5<_0xeaeade[_0x6e05('0x3c')];_0x2578a5+=0x1){_0x57e879=_0xeaeade[_0x2578a5];var _0x1cb3d7=_[_0x6e05('0x25')](_0x57e879[_0x6e05('0x26')])?util[_0x6e05('0x27')]('SIP/%s',_0x57e879[_0x6e05('0x24')]):_0x57e879[_0x6e05('0x26')];if(_[_0x6e05('0x3d')](_0x5989b9[_0x6e05('0x3e')][_0x1cb3d7])){_0x5989b9['agents'][_0x1cb3d7]=new Agent(_0x57e879);}else{_0x5989b9['mergeFromDatabase'](_0x5989b9[_0x6e05('0x3e')][_0x1cb3d7],_0x57e879);}}}return _0x5989b9['agents'];};};Realtime[_0x6e05('0x39')][_0x6e05('0x3f')]=function(){var _0x20790e=this;return function(_0x4db025){if(_0x4db025){freeIsNotKeySip(_0x4db025,_0x20790e['telephones']);for(var _0x1de54a=0x0,_0x50372d={},_0x490dc9={};_0x1de54a<_0x4db025[_0x6e05('0x3c')];_0x1de54a+=0x1){_0x50372d=_0x4db025[_0x1de54a];if(_['isUndefined'](_0x20790e[_0x6e05('0xe')][util[_0x6e05('0x27')](_0x6e05('0x23'),_0x50372d[_0x6e05('0x24')])])){_0x20790e[_0x6e05('0xe')][util['format'](_0x6e05('0x23'),_0x50372d['name'])]=new Telephone(_0x50372d);}else{_0x20790e[_0x6e05('0x3a')](_0x20790e[_0x6e05('0xe')][util['format'](_0x6e05('0x23'),_0x50372d[_0x6e05('0x24')])],_0x50372d);}}}return _0x20790e[_0x6e05('0xe')];};};Realtime[_0x6e05('0x39')]['initTrunks']=function(){var _0x5c9cdd=this;return function(_0xb6cff2){if(_0xb6cff2){freeIsNotKeySip(_0xb6cff2,_0x5c9cdd[_0x6e05('0xf')]);for(var _0x1ebf81=0x0,_0x2a4b2f={},_0x2bb57d={};_0x1ebf81<_0xb6cff2['length'];_0x1ebf81+=0x1){_0x2a4b2f=_0xb6cff2[_0x1ebf81];if(_[_0x6e05('0x3d')](_0x5c9cdd['trunks'][util['format']('SIP/%s',_0x2a4b2f['name'])])){_0x5c9cdd[_0x6e05('0xf')][util['format']('SIP/%s',_0x2a4b2f[_0x6e05('0x24')])]=new Trunk(_0x2a4b2f);}else{_0x5c9cdd[_0x6e05('0x3a')](_0x5c9cdd[_0x6e05('0xf')][util[_0x6e05('0x27')]('SIP/%s',_0x2a4b2f[_0x6e05('0x24')])],_0x2a4b2f);}}}return _0x5c9cdd['trunks'];};};Realtime[_0x6e05('0x39')]['initVoiceQueues']=function(){var _0x6883dd=this;return function(_0x5c3039){if(_0x5c3039){freeIsNotKey(_0x5c3039,_0x6883dd[_0x6e05('0x10')],'name');for(var _0xa5106d=0x0,_0x9f98e9={},_0x22a5a6={};_0xa5106d<_0x5c3039['length'];_0xa5106d+=0x1){_0x9f98e9=_0x5c3039[_0xa5106d];if(_['isUndefined'](_0x6883dd[_0x6e05('0x10')][_0x9f98e9[_0x6e05('0x24')]])){_0x6883dd['voiceQueues'][_0x9f98e9[_0x6e05('0x24')]]=new VoiceQueue(_0x9f98e9);}else{_0x6883dd[_0x6e05('0x3a')](_0x6883dd[_0x6e05('0x10')][_0x9f98e9[_0x6e05('0x24')]],_0x9f98e9);}}}return _0x6883dd[_0x6e05('0x10')];};};Realtime[_0x6e05('0x39')][_0x6e05('0x40')]=function(){var _0x3d0c95=this;return function(_0x3584a7){if(_0x3584a7){freeIsNotKey(_0x3584a7,_0x3d0c95[_0x6e05('0x11')],'id');for(var _0x243309=0x0,_0x466a3f={},_0x3f47b8={};_0x243309<_0x3584a7[_0x6e05('0x3c')];_0x243309+=0x1){_0x466a3f=_0x3584a7[_0x243309];if(_[_0x6e05('0x3d')](_0x3d0c95[_0x6e05('0x11')][_0x466a3f['id']])){_0x3d0c95['triggers'][_0x466a3f['id']]=new Trigger(_0x466a3f);}else{_0x3d0c95[_0x6e05('0x3a')](_0x3d0c95[_0x6e05('0x11')][_0x466a3f['id']],_0x466a3f);}}}return _0x3d0c95[_0x6e05('0x11')];};};Realtime[_0x6e05('0x39')]['initTemplates']=function(){var _0x5158cb=this;return function(_0x16ca12){if(_0x16ca12){freeIsNotKey(_0x16ca12,_0x5158cb['templates'],'id');for(var _0x26ecc6=0x0,_0x2cd3a6={},_0x3350bf={};_0x26ecc6<_0x16ca12[_0x6e05('0x3c')];_0x26ecc6+=0x1){_0x2cd3a6=_0x16ca12[_0x26ecc6];if(_['isUndefined'](_0x5158cb[_0x6e05('0x13')][_0x2cd3a6['id']])){_0x5158cb[_0x6e05('0x13')][_0x2cd3a6['id']]=new Template(_0x2cd3a6);}else{_0x5158cb[_0x6e05('0x3a')](_0x5158cb[_0x6e05('0x13')][_0x2cd3a6['id']],_0x2cd3a6);}}}return _0x5158cb[_0x6e05('0x13')];};};Realtime['prototype'][_0x6e05('0x41')]=function(){var _0x8592e8=this;return function(_0x4d9be5){if(_0x4d9be5){freeIsNotKey(_0x4d9be5,_0x8592e8[_0x6e05('0x19')],'id');for(var _0x1d07b6=0x0,_0x446a76={},_0x8509a8={};_0x1d07b6<_0x4d9be5[_0x6e05('0x3c')];_0x1d07b6+=0x1){_0x446a76=_0x4d9be5[_0x1d07b6];if(_['isUndefined'](_0x8592e8[_0x6e05('0x19')][_0x446a76['id']])){_0x8592e8[_0x6e05('0x19')][_0x446a76['id']]=new ZendeskAccount(_0x446a76);}else{_0x8592e8[_0x6e05('0x3a')](_0x8592e8[_0x6e05('0x19')][_0x446a76['id']],_0x446a76);}}}return _0x8592e8[_0x6e05('0x19')];};};Realtime['prototype'][_0x6e05('0x42')]=function(){var _0x3593b7=this;return function(_0x4ea1dc){if(_0x4ea1dc){freeIsNotKey(_0x4ea1dc,_0x3593b7[_0x6e05('0x1a')],'id');for(var _0xd57db1=0x0,_0x3baca7={},_0x52f37b={};_0xd57db1<_0x4ea1dc[_0x6e05('0x3c')];_0xd57db1+=0x1){_0x3baca7=_0x4ea1dc[_0xd57db1];if(_[_0x6e05('0x3d')](_0x3593b7[_0x6e05('0x1a')][_0x3baca7['id']])){_0x3593b7[_0x6e05('0x1a')][_0x3baca7['id']]=new SalesforceAccount(_0x3baca7);}else{_0x3593b7[_0x6e05('0x3a')](_0x3593b7['salesforceAccounts'][_0x3baca7['id']],_0x3baca7);}}}return _0x3593b7['salesforceAccounts'];};};Realtime[_0x6e05('0x39')][_0x6e05('0x43')]=function(){var _0x4e99d8=this;return function(_0x1b17c4){if(_0x1b17c4){freeIsNotKey(_0x1b17c4,_0x4e99d8['freshdeskAccounts'],'id');for(var _0x112019=0x0,_0x5d1699={},_0x16b307={};_0x112019<_0x1b17c4[_0x6e05('0x3c')];_0x112019+=0x1){_0x5d1699=_0x1b17c4[_0x112019];if(_[_0x6e05('0x3d')](_0x4e99d8['freshdeskAccounts'][_0x5d1699['id']])){_0x4e99d8[_0x6e05('0x44')][_0x5d1699['id']]=new FreshdeskAccount(_0x5d1699);}else{_0x4e99d8[_0x6e05('0x3a')](_0x4e99d8[_0x6e05('0x44')][_0x5d1699['id']],_0x5d1699);}}}return _0x4e99d8[_0x6e05('0x44')];};};Realtime[_0x6e05('0x39')][_0x6e05('0x45')]=function(){var _0x202646=this;return function(_0x7d22c3){if(_0x7d22c3){freeIsNotKey(_0x7d22c3,_0x202646[_0x6e05('0x1c')],'id');for(var _0x4e4b30=0x0,_0x60532f={},_0x1f3834={};_0x4e4b30<_0x7d22c3[_0x6e05('0x3c')];_0x4e4b30+=0x1){_0x60532f=_0x7d22c3[_0x4e4b30];if(_['isUndefined'](_0x202646[_0x6e05('0x1c')][_0x60532f['id']])){_0x202646[_0x6e05('0x1c')][_0x60532f['id']]=new ZohoAccount(_0x60532f);}else{_0x202646['mergeFromDatabase'](_0x202646[_0x6e05('0x1c')][_0x60532f['id']],_0x60532f);}}}return _0x202646['zohoAccounts'];};};Realtime[_0x6e05('0x39')][_0x6e05('0x46')]=function(){var _0x3efb52=this;return function(_0x4b1dba){if(_0x4b1dba){freeIsNotKey(_0x4b1dba,_0x3efb52[_0x6e05('0x1d')],'id');for(var _0x2c0b82=0x0,_0x5c6fb6={},_0x3d2d58={};_0x2c0b82<_0x4b1dba[_0x6e05('0x3c')];_0x2c0b82+=0x1){_0x5c6fb6=_0x4b1dba[_0x2c0b82];if(_[_0x6e05('0x3d')](_0x3efb52['deskAccounts'][_0x5c6fb6['id']])){_0x3efb52[_0x6e05('0x1d')][_0x5c6fb6['id']]=new DeskAccount(_0x5c6fb6);}else{_0x3efb52['mergeFromDatabase'](_0x3efb52[_0x6e05('0x1d')][_0x5c6fb6['id']],_0x5c6fb6);}}}return _0x3efb52[_0x6e05('0x1d')];};};Realtime[_0x6e05('0x39')][_0x6e05('0x47')]=function(){var _0x2bb8d4=this;return function(_0xb664ff){if(_0xb664ff){freeIsNotKey(_0xb664ff,_0x2bb8d4[_0x6e05('0x1b')],'id');for(var _0x22f9cd=0x0,_0x544375={},_0x1999e1={};_0x22f9cd<_0xb664ff[_0x6e05('0x3c')];_0x22f9cd+=0x1){_0x544375=_0xb664ff[_0x22f9cd];if(_[_0x6e05('0x3d')](_0x2bb8d4[_0x6e05('0x1b')][_0x544375['id']])){_0x2bb8d4['sugarcrmAccounts'][_0x544375['id']]=new SugarcrmAccount(_0x544375);}else{_0x2bb8d4[_0x6e05('0x3a')](_0x2bb8d4[_0x6e05('0x1b')][_0x544375['id']],_0x544375);}}}return _0x2bb8d4[_0x6e05('0x1b')];};};Realtime[_0x6e05('0x39')][_0x6e05('0x48')]=function(){var _0x27744b=this;return function(_0x2d9a3e){if(_0x2d9a3e){freeIsNotKey(_0x2d9a3e,_0x27744b[_0x6e05('0x49')],'id');for(var _0x5eb206=0x0,_0x1ee0de={},_0x49883d={};_0x5eb206<_0x2d9a3e[_0x6e05('0x3c')];_0x5eb206+=0x1){_0x1ee0de=_0x2d9a3e[_0x5eb206];if(_[_0x6e05('0x3d')](_0x27744b['vtigerAccounts'][_0x1ee0de['id']])){_0x27744b[_0x6e05('0x49')][_0x1ee0de['id']]=new VtigerAccount(_0x1ee0de);}else{_0x27744b['mergeFromDatabase'](_0x27744b[_0x6e05('0x49')][_0x1ee0de['id']],_0x1ee0de);}}}return _0x27744b[_0x6e05('0x49')];};};Realtime[_0x6e05('0x39')][_0x6e05('0x4a')]=function(){var _0xe09e38=this;return function(_0x420ceb){if(_0x420ceb){freeIsNotKey(_0x420ceb,_0xe09e38[_0x6e05('0x4b')],'id');for(var _0x1516e7=0x0,_0x10dc8d={},_0x2d275a={};_0x1516e7<_0x420ceb[_0x6e05('0x3c')];_0x1516e7+=0x1){_0x10dc8d=_0x420ceb[_0x1516e7];if(_['isUndefined'](_0xe09e38[_0x6e05('0x4b')][_0x10dc8d['id']])){_0xe09e38['servicenowAccounts'][_0x10dc8d['id']]=new ServicenowAccount(_0x10dc8d);}else{_0xe09e38[_0x6e05('0x3a')](_0xe09e38[_0x6e05('0x4b')][_0x10dc8d['id']],_0x10dc8d);}}}return _0xe09e38[_0x6e05('0x4b')];};};Realtime[_0x6e05('0x39')][_0x6e05('0x4c')]=function(){var _0x387ba9=this;return function(_0x1107a8){if(_0x1107a8){freeIsNotKey(_0x1107a8,_0x387ba9[_0x6e05('0x1e')],'id');for(var _0xa9893=0x0,_0x5077cf={},_0x270712={};_0xa9893<_0x1107a8[_0x6e05('0x3c')];_0xa9893+=0x1){_0x5077cf=_0x1107a8[_0xa9893];if(_[_0x6e05('0x3d')](_0x387ba9[_0x6e05('0x1e')][_0x5077cf['id']])){_0x387ba9[_0x6e05('0x1e')][_0x5077cf['id']]=new Dynamics365Account(_0x5077cf);}else{_0x387ba9[_0x6e05('0x3a')](_0x387ba9[_0x6e05('0x1e')][_0x5077cf['id']],_0x5077cf);}}}return _0x387ba9[_0x6e05('0x1e')];};};Realtime[_0x6e05('0x39')][_0x6e05('0x4d')]=function(){var _0x13146b=this;return function(_0x38897e){if(_0x38897e){freeIsNotKey(_0x38897e,_0x13146b[_0x6e05('0x1f')],'id');for(var _0x183741=0x0,_0x1e8501={},_0x2e49d6={};_0x183741<_0x38897e[_0x6e05('0x3c')];_0x183741+=0x1){_0x1e8501=_0x38897e[_0x183741];if(_[_0x6e05('0x3d')](_0x13146b[_0x6e05('0x1f')][_0x1e8501['id']])){_0x13146b['freshsalesAccounts'][_0x1e8501['id']]=new FreshsalesAccount(_0x1e8501);}else{_0x13146b[_0x6e05('0x3a')](_0x13146b[_0x6e05('0x1f')][_0x1e8501['id']],_0x1e8501);}}}return _0x13146b['freshsalesAccounts'];};};Realtime[_0x6e05('0x39')]['initVoiceQueueHopperHistory']=function(){var _0x51695c=this;return function(_0x4b90ab){for(var _0x3debdb=0x0;_0x3debdb<_0x4b90ab[_0x6e05('0x3c')];_0x3debdb+=0x1){_[_0x6e05('0x4e')](_0x51695c[_0x6e05('0x10')][_0x4b90ab[_0x3debdb]['name']],_0x4b90ab[_0x3debdb]);}return _0x51695c['voiceQueues'];};};Realtime[_0x6e05('0x39')][_0x6e05('0x4f')]=function(){var _0x28132e=this;return function(_0x415d13){clearVoiceQueues(_0x28132e[_0x6e05('0x10')]);if(_0x415d13){_0x415d13=_[_0x6e05('0x50')](_0x415d13,'uniqueid');for(var _0x5d667c in _0x415d13){if(_0x415d13['hasOwnProperty'](_0x5d667c)){var _0x41a7ba={};for(var _0x4449db=0x0;_0x4449db<_0x415d13[_0x5d667c][_0x6e05('0x3c')];_0x4449db+=0x1){var _0x412387=_0x415d13[_0x5d667c][_0x4449db][_0x6e05('0x51')];if(_0x28132e[_0x6e05('0x10')][_0x412387]){if(_0x415d13[_0x5d667c][_0x4449db]['queuecallerexit']){_0x28132e[_0x6e05('0x10')][_0x412387]['unmanaged']+=0x1;}if(_0x415d13[_0x5d667c][_0x4449db]['queuecallerabandon']){_0x28132e['voiceQueues'][_0x412387][_0x6e05('0x52')]+=0x1;}_0x28132e[_0x6e05('0x10')][_0x412387][_0x6e05('0x2a')]+=moment(_0x415d13[_0x5d667c][_0x4449db][_0x6e05('0x53')])[_0x6e05('0x54')](moment(_0x415d13[_0x5d667c][_0x4449db][_0x6e05('0x55')]),_0x6e05('0x56'))||0x0;if(_0x4449db===_0x415d13[_0x5d667c][_0x6e05('0x3c')]-0x1){_0x28132e[_0x6e05('0x10')][_0x412387][_0x6e05('0x2b')]+=moment(_0x415d13[_0x5d667c][_0x4449db][_0x6e05('0x57')]||_0x415d13[_0x5d667c][_0x4449db]['queuecallerabandonAt']||_0x415d13[_0x5d667c][_0x4449db]['queuecallerexitAt'])['diff'](moment(_0x415d13[_0x5d667c][_0x4449db][_0x6e05('0x55')]),_0x6e05('0x56'))||0x0;_0x28132e['voiceQueues'][_0x412387][_0x6e05('0x28')]+=0x1;if(_0x415d13[_0x5d667c][_0x4449db][_0x6e05('0x58')]){_0x28132e['voiceQueues'][_0x412387][_0x6e05('0x29')]+=0x1;_0x28132e[_0x6e05('0x10')][_0x412387][_0x6e05('0x2c')]+=moment(_0x415d13[_0x5d667c][_0x4449db]['queuecallercompleteAt'])['diff'](moment(_0x415d13[_0x5d667c][_0x4449db][_0x6e05('0x53')]),_0x6e05('0x56'))||0x0;}}else{_0x28132e[_0x6e05('0x10')][_0x412387]['sumDuration']+=_0x28132e['voiceQueues'][_0x412387][_0x6e05('0x2a')]||0x0;}}}}}}return _0x28132e['voiceQueues'];};};Realtime[_0x6e05('0x39')]['initVoiceCallReports']=function(){var _0x54007b=this;return function(_0x4ac51e){clearVoiceCallReports(_0x54007b[_0x6e05('0x59')]);if(_0x4ac51e){for(var _0x3ef683=0x0;_0x3ef683<_0x4ac51e[_0x6e05('0x3c')];_0x3ef683+=0x1){_0x54007b[_0x6e05('0x59')][_0x6e05('0x28')]+=0x1;_0x54007b[_0x6e05('0x59')]['sumDuration']+=_0x4ac51e[_0x3ef683][_0x6e05('0x5a')];if(_0x4ac51e[_0x3ef683][_0x6e05('0x5b')]===_0x6e05('0x5c')){_0x54007b[_0x6e05('0x59')]['answered']+=0x1;_0x54007b[_0x6e05('0x59')]['sumHoldTime']+=_0x4ac51e[_0x3ef683][_0x6e05('0x5a')]-_0x4ac51e[_0x3ef683][_0x6e05('0x5d')]||0x0;_0x54007b[_0x6e05('0x59')]['sumBillable']+=_0x4ac51e[_0x3ef683][_0x6e05('0x5d')];}}}return _0x54007b[_0x6e05('0x59')];};};Realtime[_0x6e05('0x39')][_0x6e05('0x5e')]=function(){var _0x1adddf=this;return function(_0x5a64aa){if(_0x5a64aa){freeIsNotKey(_0x5a64aa,_0x1adddf[_0x6e05('0x12')],_0x6e05('0x24'));for(var _0x2045c7=0x0,_0x5993a1={};_0x2045c7<_0x5a64aa[_0x6e05('0x3c')];_0x2045c7+=0x1){_0x5993a1=_0x5a64aa[_0x2045c7];if(_['isUndefined'](_0x1adddf[_0x6e05('0x12')][_0x5993a1['name']])){_0x1adddf[_0x6e05('0x12')][_0x5993a1['name']]=new Campaign(_0x5993a1);}else{_0x1adddf[_0x6e05('0x3a')](_0x1adddf[_0x6e05('0x12')][_0x5993a1[_0x6e05('0x24')]],_0x5993a1);_0x1adddf[_0x6e05('0x12')][_0x5993a1[_0x6e05('0x24')]][_0x6e05('0x5f')]=_0x5993a1[_0x6e05('0x60')]?_0x5993a1[_0x6e05('0x60')][_0x6e05('0x24')]:undefined;}}}return _0x1adddf[_0x6e05('0x12')];};};Realtime[_0x6e05('0x39')][_0x6e05('0x61')]=function(){var _0x3d5d53=this;return function(_0x2d3c7d){if(_0x2d3c7d){freeIsNotKey(_0x2d3c7d,_0x3d5d53[_0x6e05('0x14')],'id');for(var _0x3dd9ad=0x0,_0x49bfd7={};_0x3dd9ad<_0x2d3c7d[_0x6e05('0x3c')];_0x3dd9ad+=0x1){_0x49bfd7=_0x2d3c7d[_0x3dd9ad];if(_['isUndefined'](_0x3d5d53['voiceExtensions'][_0x49bfd7['id']])){_0x3d5d53[_0x6e05('0x14')][_0x49bfd7['id']]=new VoiceExtension(_0x49bfd7);}else{_0x3d5d53[_0x6e05('0x3a')](_0x3d5d53[_0x6e05('0x14')][_0x49bfd7['id']],_0x49bfd7);}}}return _0x3d5d53[_0x6e05('0x14')];};};Realtime[_0x6e05('0x39')][_0x6e05('0x62')]=function(){var _0x4374f9=this;return function(_0x41eb52){clearCampaigns(_0x4374f9[_0x6e05('0x12')]);for(var _0x261f5c=0x0;_0x261f5c<_0x41eb52[_0x6e05('0x3c')];_0x261f5c+=0x1){_[_0x6e05('0x4e')](_0x4374f9[_0x6e05('0x12')][_0x41eb52[_0x261f5c]['name']],_0x41eb52[_0x261f5c]);}return _0x4374f9['campaigns'];};};Realtime[_0x6e05('0x39')][_0x6e05('0x63')]=function(){var _0x4703c0=this;return function(_0x3eccec){if(_0x3eccec){freeIsNotKey(_0x3eccec,_0x4703c0[_0x6e05('0x20')],'id');for(var _0x5084ac=0x0,_0x50d31d={},_0x1cda1a={};_0x5084ac<_0x3eccec[_0x6e05('0x3c')];_0x5084ac+=0x1){_0x50d31d=_0x3eccec[_0x5084ac];if(_['isUndefined'](_0x4703c0[_0x6e05('0x20')][_0x50d31d['id']])){_0x4703c0[_0x6e05('0x20')][_0x50d31d['id']]=new FaxAccount(_0x50d31d);}else{_0x4703c0[_0x6e05('0x3a')](_0x4703c0[_0x6e05('0x20')][_0x50d31d['id']],_0x50d31d);}}}return _0x4703c0[_0x6e05('0x20')];};};module[_0x6e05('0x64')]=Realtime;