Built motion from commit (unavailable).|2.5.21
[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 _0x8595=['seconds','queuecallercompleteAt','queuecallerabandonAt','queuecallerexitAt','queuecallerjoinAt','initVoiceCallReports','disposition','duration','billableseconds','initCampaigns','campaigns','dialQueueProject','SquareProject','initVoiceExtensions','initCampaignHopperHistory','initFaxAccounts','exports','bluebird','util','lodash','moment','../model/agent','../model/telephone','../model/trunk','../model/voiceQueue','../model/campaign','../model/voiceExtension','../model/zendeskAccount','../model/salesforceAccount','../model/zohoAccount','../model/vtigerAccount','../model/servicenowAccount','../model/dynamics365Account','../model/freshsalesAccount','../model/faxAccount','agents','telephones','trunks','voiceQueues','triggers','templates','outbound','voiceExtensions','channels','queueChannels','outboundChannels','sugarcrmAccounts','freshdeskAccounts','zohoAccounts','deskAccounts','servicenowAccounts','dynamics365Accounts','freshsalesAccounts','faxAccounts','mapKeys','hasOwnProperty','SIP/%s','interface','format','name','total','answered','sumHoldTime','sumBillable','isEmpty','ivrTotalCallsDays','ivrAnswerCallsDay','abandoned','sumDuration','outboundAnswerAgiCallsDay','outboundCongestionCallsDay','outboundNoSuchCallsDay','outboundDropCallsDayTimeout','outboundDropCallsDayCallersExit','outboundOriginateFailureCallsDay','outboundRejectCallsDay','outboundReCallsDay','outboundAnswerCallsDay','queueStatusComplete','prototype','mergeFromDatabase','initAgents','length','isNil','isUndefined','initTrunks','initVoiceQueues','initTriggers','initZendeskAccounts','zendeskAccounts','initSalesforceAccounts','salesforceAccounts','initFreshdeskAccounts','initZohoAccounts','initVtigerAccounts','vtigerAccounts','initServicenowAccounts','initDynamics365Accounts','initVoiceQueueHopperHistory','groupBy','uniqueid','queue','queuecallerexit','unmanaged','queuecallerabandon','queuecallerleaveAt','diff'];(function(_0x100209,_0x3b7819){var _0x3a3fda=function(_0x3f1726){while(--_0x3f1726){_0x100209['push'](_0x100209['shift']());}};_0x3a3fda(++_0x3b7819);}(_0x8595,0xe7));var _0x5859=function(_0xb0f7c3,_0x4eae95){_0xb0f7c3=_0xb0f7c3-0x0;var _0x28ea68=_0x8595[_0xb0f7c3];return _0x28ea68;};'use strict';var BPromise=require(_0x5859('0x0'));var util=require(_0x5859('0x1'));var _=require(_0x5859('0x2'));var moment=require(_0x5859('0x3'));var Agent=require(_0x5859('0x4'));var Telephone=require(_0x5859('0x5'));var Trunk=require(_0x5859('0x6'));var VoiceQueue=require(_0x5859('0x7'));var Trigger=require('../model/trigger');var Template=require('../model/template');var Campaign=require(_0x5859('0x8'));var VoiceExtension=require(_0x5859('0x9'));var ZendeskAccount=require(_0x5859('0xa'));var SalesforceAccount=require(_0x5859('0xb'));var FreshdeskAccount=require('../model/freshdeskAccount');var SugarcrmAccount=require('../model/sugarcrmAccount');var ZohoAccount=require(_0x5859('0xc'));var DeskAccount=require('../model/deskAccount');var VtigerAccount=require(_0x5859('0xd'));var ServicenowAccount=require(_0x5859('0xe'));var Dynamics365Account=require(_0x5859('0xf'));var FreshsalesAccount=require(_0x5859('0x10'));var FaxAccount=require(_0x5859('0x11'));var Realtime=function(){this[_0x5859('0x12')]={};this[_0x5859('0x13')]={};this[_0x5859('0x14')]={};this[_0x5859('0x15')]={};this[_0x5859('0x16')]={};this['campaigns']={};this[_0x5859('0x17')]={};this[_0x5859('0x18')]={'total':0x0,'answered':0x0,'sumHoldTime':0x0,'sumDuration':0x0,'sumBillable':0x0};this[_0x5859('0x19')]={};this[_0x5859('0x1a')]={};this[_0x5859('0x1b')]={};this[_0x5859('0x1c')]={};this['timers']={};this['zendeskAccounts']={};this['salesforceAccounts']={};this[_0x5859('0x1d')]={};this[_0x5859('0x1e')]={};this[_0x5859('0x1f')]={};this[_0x5859('0x20')]={};this['vtigerAccounts']={};this[_0x5859('0x21')]={};this[_0x5859('0x22')]={};this[_0x5859('0x23')]={};this[_0x5859('0x24')]={};};function freeIsNotKey(_0x2f65c1,_0xc70d42,_0x46d179){var _0x609166=_[_0x5859('0x25')](_0x2f65c1,function(_0x1ede16,_0x9133de){return _0x1ede16[_0x46d179];});for(var _0x1e489a in _0xc70d42){if(_0xc70d42[_0x5859('0x26')](_0x1e489a)){if(!_0x609166[_0x1e489a]){delete _0xc70d42[_0x1e489a];}}}}function freeIsNotKeySip(_0x5c69ca,_0x3c3b18){var _0x4048f9=_['mapKeys'](_0x5c69ca,function(_0x549306,_0x5354b3){return util['format'](_0x5859('0x27'),_0x549306['name']);});for(var _0x3f4df7 in _0x3c3b18){if(_0x3c3b18[_0x5859('0x26')](_0x3f4df7)){if(!_0x4048f9[_0x3f4df7]){delete _0x3c3b18[_0x3f4df7];}}}}function freeIsNotKeyAgent(_0x533d34,_0x236744){var _0x3ccc22=_[_0x5859('0x25')](_0x533d34,function(_0x38fc4b,_0x2d70be){var _0x501fdf=_['isNil'](_0x38fc4b[_0x5859('0x28')])?util[_0x5859('0x29')](_0x5859('0x27'),_0x38fc4b[_0x5859('0x2a')]):_0x38fc4b[_0x5859('0x28')];return _0x501fdf;});for(var _0x5bc9e2 in _0x236744){if(_0x236744['hasOwnProperty'](_0x5bc9e2)){if(!_0x3ccc22[_0x5bc9e2]){delete _0x236744[_0x5bc9e2];}}}}function clearVoiceCallReports(_0x19501c){_0x19501c[_0x5859('0x2b')]=0x0;_0x19501c[_0x5859('0x2c')]=0x0;_0x19501c[_0x5859('0x2d')]=0x0;_0x19501c['sumDuration']=0x0;_0x19501c[_0x5859('0x2e')]=0x0;}function clearCampaigns(_0x445102){if(!_[_0x5859('0x2f')](_0x445102)){for(var _0x5cdc28 in _0x445102){if(_0x445102[_0x5859('0x26')](_0x5cdc28)){_0x445102[_0x5cdc28][_0x5859('0x30')]=0x0;_0x445102[_0x5cdc28][_0x5859('0x31')]=0x0;}}}}function clearVoiceQueues(_0x1a37d1){if(!_[_0x5859('0x2f')](_0x1a37d1)){for(var _0x2296ad in _0x1a37d1){if(_0x1a37d1[_0x5859('0x26')](_0x2296ad)){_0x1a37d1[_0x2296ad]['total']=0x0;_0x1a37d1[_0x2296ad][_0x5859('0x2c')]=0x0;_0x1a37d1[_0x2296ad]['unmanaged']=0x0;_0x1a37d1[_0x2296ad][_0x5859('0x32')]=0x0;_0x1a37d1[_0x2296ad][_0x5859('0x2d')]=0x0;_0x1a37d1[_0x2296ad][_0x5859('0x33')]=0x0;_0x1a37d1[_0x2296ad][_0x5859('0x2e')]=0x0;_0x1a37d1[_0x2296ad][_0x5859('0x34')]=0x0;_0x1a37d1[_0x2296ad]['outboundNoAnswerCallsDay']=0x0;_0x1a37d1[_0x2296ad]['outboundBusyCallsDay']=0x0;_0x1a37d1[_0x2296ad][_0x5859('0x35')]=0x0;_0x1a37d1[_0x2296ad][_0x5859('0x36')]=0x0;_0x1a37d1[_0x2296ad]['outboundUnknownCallsDay']=0x0;_0x1a37d1[_0x2296ad][_0x5859('0x37')]=0x0;_0x1a37d1[_0x2296ad][_0x5859('0x38')]=0x0;_0x1a37d1[_0x2296ad]['outboundBlacklistCallsDay']=0x0;_0x1a37d1[_0x2296ad][_0x5859('0x39')]=0x0;_0x1a37d1[_0x2296ad][_0x5859('0x3a')]=0x0;_0x1a37d1[_0x2296ad][_0x5859('0x3b')]=0x0;_0x1a37d1[_0x2296ad][_0x5859('0x34')]=0x0;_0x1a37d1[_0x2296ad][_0x5859('0x3c')]=0x0;_0x1a37d1[_0x2296ad][_0x5859('0x3d')]=!![];}}}}Realtime[_0x5859('0x3e')][_0x5859('0x3f')]=function(_0x1a3e06,_0x1b464f){for(var _0x576439 in _0x1b464f){if(_0x1a3e06[_0x5859('0x26')](_0x576439)){_0x1a3e06[_0x576439]=_0x1b464f[_0x576439];}}};Realtime[_0x5859('0x3e')][_0x5859('0x40')]=function(){var _0x3b1e5b=this;return function(_0x29a652){if(_0x29a652){freeIsNotKeyAgent(_0x29a652,_0x3b1e5b[_0x5859('0x12')]);for(var _0x425880=0x0,_0x30f43e={},_0x4cf5fa={};_0x425880<_0x29a652[_0x5859('0x41')];_0x425880+=0x1){_0x30f43e=_0x29a652[_0x425880];var _0x48ca8e=_[_0x5859('0x42')](_0x30f43e[_0x5859('0x28')])?util[_0x5859('0x29')](_0x5859('0x27'),_0x30f43e['name']):_0x30f43e['interface'];if(_['isUndefined'](_0x3b1e5b[_0x5859('0x12')][_0x48ca8e])){_0x3b1e5b[_0x5859('0x12')][_0x48ca8e]=new Agent(_0x30f43e);}else{_0x3b1e5b[_0x5859('0x3f')](_0x3b1e5b[_0x5859('0x12')][_0x48ca8e],_0x30f43e);}}}return _0x3b1e5b[_0x5859('0x12')];};};Realtime[_0x5859('0x3e')]['initTelephones']=function(){var _0x17ff28=this;return function(_0x1c8d0c){if(_0x1c8d0c){freeIsNotKeySip(_0x1c8d0c,_0x17ff28[_0x5859('0x13')]);for(var _0x1d954a=0x0,_0x3c1c61={},_0x350ba8={};_0x1d954a<_0x1c8d0c['length'];_0x1d954a+=0x1){_0x3c1c61=_0x1c8d0c[_0x1d954a];if(_[_0x5859('0x43')](_0x17ff28[_0x5859('0x13')][util[_0x5859('0x29')](_0x5859('0x27'),_0x3c1c61[_0x5859('0x2a')])])){_0x17ff28[_0x5859('0x13')][util[_0x5859('0x29')](_0x5859('0x27'),_0x3c1c61[_0x5859('0x2a')])]=new Telephone(_0x3c1c61);}else{_0x17ff28[_0x5859('0x3f')](_0x17ff28['telephones'][util[_0x5859('0x29')](_0x5859('0x27'),_0x3c1c61[_0x5859('0x2a')])],_0x3c1c61);}}}return _0x17ff28['telephones'];};};Realtime['prototype'][_0x5859('0x44')]=function(){var _0x574bd3=this;return function(_0x465eef){if(_0x465eef){freeIsNotKeySip(_0x465eef,_0x574bd3[_0x5859('0x14')]);for(var _0x59465c=0x0,_0x32a0f3={},_0x551833={};_0x59465c<_0x465eef[_0x5859('0x41')];_0x59465c+=0x1){_0x32a0f3=_0x465eef[_0x59465c];if(_[_0x5859('0x43')](_0x574bd3[_0x5859('0x14')][util['format']('SIP/%s',_0x32a0f3['name'])])){_0x574bd3[_0x5859('0x14')][util[_0x5859('0x29')](_0x5859('0x27'),_0x32a0f3[_0x5859('0x2a')])]=new Trunk(_0x32a0f3);}else{_0x574bd3[_0x5859('0x3f')](_0x574bd3[_0x5859('0x14')][util[_0x5859('0x29')]('SIP/%s',_0x32a0f3['name'])],_0x32a0f3);}}}return _0x574bd3[_0x5859('0x14')];};};Realtime[_0x5859('0x3e')][_0x5859('0x45')]=function(){var _0x421c80=this;return function(_0xe59ff2){if(_0xe59ff2){freeIsNotKey(_0xe59ff2,_0x421c80['voiceQueues'],'name');for(var _0x2cc74d=0x0,_0x295bd7={},_0x168601={};_0x2cc74d<_0xe59ff2[_0x5859('0x41')];_0x2cc74d+=0x1){_0x295bd7=_0xe59ff2[_0x2cc74d];if(_[_0x5859('0x43')](_0x421c80[_0x5859('0x15')][_0x295bd7[_0x5859('0x2a')]])){_0x421c80['voiceQueues'][_0x295bd7[_0x5859('0x2a')]]=new VoiceQueue(_0x295bd7);}else{_0x421c80[_0x5859('0x3f')](_0x421c80['voiceQueues'][_0x295bd7[_0x5859('0x2a')]],_0x295bd7);}}}return _0x421c80['voiceQueues'];};};Realtime[_0x5859('0x3e')][_0x5859('0x46')]=function(){var _0x3286eb=this;return function(_0x42790e){if(_0x42790e){freeIsNotKey(_0x42790e,_0x3286eb['triggers'],'id');for(var _0x12af9e=0x0,_0x129816={},_0x29928c={};_0x12af9e<_0x42790e[_0x5859('0x41')];_0x12af9e+=0x1){_0x129816=_0x42790e[_0x12af9e];if(_[_0x5859('0x43')](_0x3286eb[_0x5859('0x16')][_0x129816['id']])){_0x3286eb[_0x5859('0x16')][_0x129816['id']]=new Trigger(_0x129816);}else{_0x3286eb[_0x5859('0x3f')](_0x3286eb[_0x5859('0x16')][_0x129816['id']],_0x129816);}}}return _0x3286eb[_0x5859('0x16')];};};Realtime[_0x5859('0x3e')]['initTemplates']=function(){var _0x546226=this;return function(_0x538e0e){if(_0x538e0e){freeIsNotKey(_0x538e0e,_0x546226['templates'],'id');for(var _0x595250=0x0,_0x190454={},_0x337e83={};_0x595250<_0x538e0e['length'];_0x595250+=0x1){_0x190454=_0x538e0e[_0x595250];if(_[_0x5859('0x43')](_0x546226['templates'][_0x190454['id']])){_0x546226[_0x5859('0x17')][_0x190454['id']]=new Template(_0x190454);}else{_0x546226[_0x5859('0x3f')](_0x546226['templates'][_0x190454['id']],_0x190454);}}}return _0x546226[_0x5859('0x17')];};};Realtime['prototype'][_0x5859('0x47')]=function(){var _0x471533=this;return function(_0x3482bb){if(_0x3482bb){freeIsNotKey(_0x3482bb,_0x471533[_0x5859('0x48')],'id');for(var _0x59ae36=0x0,_0x59be35={},_0xdf45e6={};_0x59ae36<_0x3482bb[_0x5859('0x41')];_0x59ae36+=0x1){_0x59be35=_0x3482bb[_0x59ae36];if(_[_0x5859('0x43')](_0x471533[_0x5859('0x48')][_0x59be35['id']])){_0x471533[_0x5859('0x48')][_0x59be35['id']]=new ZendeskAccount(_0x59be35);}else{_0x471533[_0x5859('0x3f')](_0x471533[_0x5859('0x48')][_0x59be35['id']],_0x59be35);}}}return _0x471533[_0x5859('0x48')];};};Realtime[_0x5859('0x3e')][_0x5859('0x49')]=function(){var _0x5721ac=this;return function(_0x300b4d){if(_0x300b4d){freeIsNotKey(_0x300b4d,_0x5721ac[_0x5859('0x4a')],'id');for(var _0x35fb87=0x0,_0x271dd7={},_0x1c3a98={};_0x35fb87<_0x300b4d[_0x5859('0x41')];_0x35fb87+=0x1){_0x271dd7=_0x300b4d[_0x35fb87];if(_['isUndefined'](_0x5721ac[_0x5859('0x4a')][_0x271dd7['id']])){_0x5721ac[_0x5859('0x4a')][_0x271dd7['id']]=new SalesforceAccount(_0x271dd7);}else{_0x5721ac[_0x5859('0x3f')](_0x5721ac['salesforceAccounts'][_0x271dd7['id']],_0x271dd7);}}}return _0x5721ac[_0x5859('0x4a')];};};Realtime[_0x5859('0x3e')][_0x5859('0x4b')]=function(){var _0x53db93=this;return function(_0x5e7f57){if(_0x5e7f57){freeIsNotKey(_0x5e7f57,_0x53db93[_0x5859('0x1e')],'id');for(var _0x420c03=0x0,_0x4a35a9={},_0x2c7370={};_0x420c03<_0x5e7f57[_0x5859('0x41')];_0x420c03+=0x1){_0x4a35a9=_0x5e7f57[_0x420c03];if(_[_0x5859('0x43')](_0x53db93[_0x5859('0x1e')][_0x4a35a9['id']])){_0x53db93['freshdeskAccounts'][_0x4a35a9['id']]=new FreshdeskAccount(_0x4a35a9);}else{_0x53db93[_0x5859('0x3f')](_0x53db93[_0x5859('0x1e')][_0x4a35a9['id']],_0x4a35a9);}}}return _0x53db93[_0x5859('0x1e')];};};Realtime[_0x5859('0x3e')][_0x5859('0x4c')]=function(){var _0x47a5f5=this;return function(_0x31c351){if(_0x31c351){freeIsNotKey(_0x31c351,_0x47a5f5[_0x5859('0x1f')],'id');for(var _0x23297d=0x0,_0x1d1374={},_0x39ff16={};_0x23297d<_0x31c351[_0x5859('0x41')];_0x23297d+=0x1){_0x1d1374=_0x31c351[_0x23297d];if(_['isUndefined'](_0x47a5f5[_0x5859('0x1f')][_0x1d1374['id']])){_0x47a5f5[_0x5859('0x1f')][_0x1d1374['id']]=new ZohoAccount(_0x1d1374);}else{_0x47a5f5[_0x5859('0x3f')](_0x47a5f5[_0x5859('0x1f')][_0x1d1374['id']],_0x1d1374);}}}return _0x47a5f5[_0x5859('0x1f')];};};Realtime[_0x5859('0x3e')]['initDeskAccounts']=function(){var _0x2fceaf=this;return function(_0x5c6ea4){if(_0x5c6ea4){freeIsNotKey(_0x5c6ea4,_0x2fceaf[_0x5859('0x20')],'id');for(var _0x3bd97a=0x0,_0x36f942={},_0x49257b={};_0x3bd97a<_0x5c6ea4[_0x5859('0x41')];_0x3bd97a+=0x1){_0x36f942=_0x5c6ea4[_0x3bd97a];if(_[_0x5859('0x43')](_0x2fceaf[_0x5859('0x20')][_0x36f942['id']])){_0x2fceaf['deskAccounts'][_0x36f942['id']]=new DeskAccount(_0x36f942);}else{_0x2fceaf[_0x5859('0x3f')](_0x2fceaf[_0x5859('0x20')][_0x36f942['id']],_0x36f942);}}}return _0x2fceaf[_0x5859('0x20')];};};Realtime[_0x5859('0x3e')]['initSugarcrmAccounts']=function(){var _0x928ec5=this;return function(_0x485517){if(_0x485517){freeIsNotKey(_0x485517,_0x928ec5[_0x5859('0x1d')],'id');for(var _0x2b9fae=0x0,_0x21b963={},_0x168691={};_0x2b9fae<_0x485517['length'];_0x2b9fae+=0x1){_0x21b963=_0x485517[_0x2b9fae];if(_[_0x5859('0x43')](_0x928ec5[_0x5859('0x1d')][_0x21b963['id']])){_0x928ec5[_0x5859('0x1d')][_0x21b963['id']]=new SugarcrmAccount(_0x21b963);}else{_0x928ec5[_0x5859('0x3f')](_0x928ec5[_0x5859('0x1d')][_0x21b963['id']],_0x21b963);}}}return _0x928ec5[_0x5859('0x1d')];};};Realtime['prototype'][_0x5859('0x4d')]=function(){var _0x356901=this;return function(_0x11693c){if(_0x11693c){freeIsNotKey(_0x11693c,_0x356901[_0x5859('0x4e')],'id');for(var _0xb31237=0x0,_0x1e9443={},_0x1291b1={};_0xb31237<_0x11693c[_0x5859('0x41')];_0xb31237+=0x1){_0x1e9443=_0x11693c[_0xb31237];if(_[_0x5859('0x43')](_0x356901[_0x5859('0x4e')][_0x1e9443['id']])){_0x356901[_0x5859('0x4e')][_0x1e9443['id']]=new VtigerAccount(_0x1e9443);}else{_0x356901[_0x5859('0x3f')](_0x356901[_0x5859('0x4e')][_0x1e9443['id']],_0x1e9443);}}}return _0x356901[_0x5859('0x4e')];};};Realtime[_0x5859('0x3e')][_0x5859('0x4f')]=function(){var _0x9c21ba=this;return function(_0x393341){if(_0x393341){freeIsNotKey(_0x393341,_0x9c21ba[_0x5859('0x21')],'id');for(var _0x31329a=0x0,_0x11ede4={},_0xad5684={};_0x31329a<_0x393341[_0x5859('0x41')];_0x31329a+=0x1){_0x11ede4=_0x393341[_0x31329a];if(_['isUndefined'](_0x9c21ba[_0x5859('0x21')][_0x11ede4['id']])){_0x9c21ba['servicenowAccounts'][_0x11ede4['id']]=new ServicenowAccount(_0x11ede4);}else{_0x9c21ba[_0x5859('0x3f')](_0x9c21ba['servicenowAccounts'][_0x11ede4['id']],_0x11ede4);}}}return _0x9c21ba[_0x5859('0x21')];};};Realtime['prototype'][_0x5859('0x50')]=function(){var _0x395317=this;return function(_0x5be81c){if(_0x5be81c){freeIsNotKey(_0x5be81c,_0x395317['dynamics365Accounts'],'id');for(var _0x342fc8=0x0,_0x4aaf1e={},_0x47143b={};_0x342fc8<_0x5be81c[_0x5859('0x41')];_0x342fc8+=0x1){_0x4aaf1e=_0x5be81c[_0x342fc8];if(_[_0x5859('0x43')](_0x395317[_0x5859('0x22')][_0x4aaf1e['id']])){_0x395317[_0x5859('0x22')][_0x4aaf1e['id']]=new Dynamics365Account(_0x4aaf1e);}else{_0x395317['mergeFromDatabase'](_0x395317[_0x5859('0x22')][_0x4aaf1e['id']],_0x4aaf1e);}}}return _0x395317['dynamics365Accounts'];};};Realtime[_0x5859('0x3e')]['initFreshsalesAccounts']=function(){var _0x47dbff=this;return function(_0x4190cb){if(_0x4190cb){freeIsNotKey(_0x4190cb,_0x47dbff[_0x5859('0x23')],'id');for(var _0x584712=0x0,_0x1e0993={},_0x44b315={};_0x584712<_0x4190cb['length'];_0x584712+=0x1){_0x1e0993=_0x4190cb[_0x584712];if(_[_0x5859('0x43')](_0x47dbff[_0x5859('0x23')][_0x1e0993['id']])){_0x47dbff['freshsalesAccounts'][_0x1e0993['id']]=new FreshsalesAccount(_0x1e0993);}else{_0x47dbff[_0x5859('0x3f')](_0x47dbff['freshsalesAccounts'][_0x1e0993['id']],_0x1e0993);}}}return _0x47dbff[_0x5859('0x23')];};};Realtime[_0x5859('0x3e')][_0x5859('0x51')]=function(){var _0x4394ce=this;return function(_0x4414d5){for(var _0x58c152=0x0;_0x58c152<_0x4414d5[_0x5859('0x41')];_0x58c152+=0x1){_['merge'](_0x4394ce['voiceQueues'][_0x4414d5[_0x58c152][_0x5859('0x2a')]],_0x4414d5[_0x58c152]);}return _0x4394ce[_0x5859('0x15')];};};Realtime[_0x5859('0x3e')]['initVoiceQueueReports']=function(){var _0x568612=this;return function(_0x488134){clearVoiceQueues(_0x568612['voiceQueues']);if(_0x488134){_0x488134=_[_0x5859('0x52')](_0x488134,_0x5859('0x53'));for(var _0x190b4f in _0x488134){if(_0x488134['hasOwnProperty'](_0x190b4f)){var _0x4b8ac9={};for(var _0x2b7bf0=0x0;_0x2b7bf0<_0x488134[_0x190b4f]['length'];_0x2b7bf0+=0x1){var _0x2f17d5=_0x488134[_0x190b4f][_0x2b7bf0][_0x5859('0x54')];if(_0x568612[_0x5859('0x15')][_0x2f17d5]){if(_0x488134[_0x190b4f][_0x2b7bf0][_0x5859('0x55')]){_0x568612['voiceQueues'][_0x2f17d5][_0x5859('0x56')]+=0x1;}if(_0x488134[_0x190b4f][_0x2b7bf0][_0x5859('0x57')]){_0x568612[_0x5859('0x15')][_0x2f17d5][_0x5859('0x32')]+=0x1;}_0x568612['voiceQueues'][_0x2f17d5][_0x5859('0x2d')]+=moment(_0x488134[_0x190b4f][_0x2b7bf0][_0x5859('0x58')])[_0x5859('0x59')](moment(_0x488134[_0x190b4f][_0x2b7bf0]['queuecallerjoinAt']),_0x5859('0x5a'))||0x0;if(_0x2b7bf0===_0x488134[_0x190b4f][_0x5859('0x41')]-0x1){_0x568612[_0x5859('0x15')][_0x2f17d5][_0x5859('0x33')]+=moment(_0x488134[_0x190b4f][_0x2b7bf0][_0x5859('0x5b')]||_0x488134[_0x190b4f][_0x2b7bf0][_0x5859('0x5c')]||_0x488134[_0x190b4f][_0x2b7bf0][_0x5859('0x5d')])[_0x5859('0x59')](moment(_0x488134[_0x190b4f][_0x2b7bf0][_0x5859('0x5e')]),_0x5859('0x5a'))||0x0;_0x568612[_0x5859('0x15')][_0x2f17d5]['total']+=0x1;if(_0x488134[_0x190b4f][_0x2b7bf0]['queuecallercomplete']){_0x568612['voiceQueues'][_0x2f17d5][_0x5859('0x2c')]+=0x1;_0x568612['voiceQueues'][_0x2f17d5][_0x5859('0x2e')]+=moment(_0x488134[_0x190b4f][_0x2b7bf0][_0x5859('0x5b')])[_0x5859('0x59')](moment(_0x488134[_0x190b4f][_0x2b7bf0][_0x5859('0x58')]),'seconds')||0x0;}}else{_0x568612['voiceQueues'][_0x2f17d5][_0x5859('0x33')]+=_0x568612[_0x5859('0x15')][_0x2f17d5]['sumHoldTime']||0x0;}}}}}}return _0x568612['voiceQueues'];};};Realtime[_0x5859('0x3e')][_0x5859('0x5f')]=function(){var _0x5403c1=this;return function(_0x17f97d){clearVoiceCallReports(_0x5403c1[_0x5859('0x18')]);if(_0x17f97d){for(var _0x558796=0x0;_0x558796<_0x17f97d[_0x5859('0x41')];_0x558796+=0x1){_0x5403c1['outbound'][_0x5859('0x2b')]+=0x1;_0x5403c1['outbound'][_0x5859('0x33')]+=_0x17f97d[_0x558796]['duration'];if(_0x17f97d[_0x558796][_0x5859('0x60')]==='ANSWERED'){_0x5403c1[_0x5859('0x18')][_0x5859('0x2c')]+=0x1;_0x5403c1[_0x5859('0x18')][_0x5859('0x2d')]+=_0x17f97d[_0x558796][_0x5859('0x61')]-_0x17f97d[_0x558796][_0x5859('0x62')]||0x0;_0x5403c1[_0x5859('0x18')][_0x5859('0x2e')]+=_0x17f97d[_0x558796]['billableseconds'];}}}return _0x5403c1[_0x5859('0x18')];};};Realtime['prototype'][_0x5859('0x63')]=function(){var _0x3ded95=this;return function(_0x13eb18){if(_0x13eb18){freeIsNotKey(_0x13eb18,_0x3ded95[_0x5859('0x64')],_0x5859('0x2a'));for(var _0x157c4d=0x0,_0x2ec7ea={};_0x157c4d<_0x13eb18[_0x5859('0x41')];_0x157c4d+=0x1){_0x2ec7ea=_0x13eb18[_0x157c4d];if(_[_0x5859('0x43')](_0x3ded95[_0x5859('0x64')][_0x2ec7ea[_0x5859('0x2a')]])){_0x3ded95['campaigns'][_0x2ec7ea[_0x5859('0x2a')]]=new Campaign(_0x2ec7ea);}else{_0x3ded95['mergeFromDatabase'](_0x3ded95[_0x5859('0x64')][_0x2ec7ea[_0x5859('0x2a')]],_0x2ec7ea);_0x3ded95[_0x5859('0x64')][_0x2ec7ea['name']][_0x5859('0x65')]=_0x2ec7ea[_0x5859('0x66')]?_0x2ec7ea[_0x5859('0x66')][_0x5859('0x2a')]:undefined;}}}return _0x3ded95[_0x5859('0x64')];};};Realtime['prototype'][_0x5859('0x67')]=function(){var _0x1a239c=this;return function(_0x26e210){if(_0x26e210){freeIsNotKey(_0x26e210,_0x1a239c['voiceExtensions'],'id');for(var _0x51d3da=0x0,_0x93607d={};_0x51d3da<_0x26e210['length'];_0x51d3da+=0x1){_0x93607d=_0x26e210[_0x51d3da];if(_[_0x5859('0x43')](_0x1a239c[_0x5859('0x19')][_0x93607d['id']])){_0x1a239c[_0x5859('0x19')][_0x93607d['id']]=new VoiceExtension(_0x93607d);}else{_0x1a239c[_0x5859('0x3f')](_0x1a239c[_0x5859('0x19')][_0x93607d['id']],_0x93607d);}}}return _0x1a239c[_0x5859('0x19')];};};Realtime['prototype'][_0x5859('0x68')]=function(){var _0x1e2d08=this;return function(_0x3b2524){clearCampaigns(_0x1e2d08[_0x5859('0x64')]);for(var _0x84d033=0x0;_0x84d033<_0x3b2524[_0x5859('0x41')];_0x84d033+=0x1){_['merge'](_0x1e2d08['campaigns'][_0x3b2524[_0x84d033][_0x5859('0x2a')]],_0x3b2524[_0x84d033]);}return _0x1e2d08['campaigns'];};};Realtime[_0x5859('0x3e')][_0x5859('0x69')]=function(){var _0x528504=this;return function(_0x38dd2a){if(_0x38dd2a){freeIsNotKey(_0x38dd2a,_0x528504[_0x5859('0x24')],'id');for(var _0x1e0b95=0x0,_0x1c92aa={},_0x19d091={};_0x1e0b95<_0x38dd2a[_0x5859('0x41')];_0x1e0b95+=0x1){_0x1c92aa=_0x38dd2a[_0x1e0b95];if(_[_0x5859('0x43')](_0x528504['faxAccounts'][_0x1c92aa['id']])){_0x528504[_0x5859('0x24')][_0x1c92aa['id']]=new FaxAccount(_0x1c92aa);}else{_0x528504[_0x5859('0x3f')](_0x528504[_0x5859('0x24')][_0x1c92aa['id']],_0x1c92aa);}}}return _0x528504[_0x5859('0x24')];};};module[_0x5859('0x6a')]=Realtime;