Built motion from commit (unavailable).|2.3.8
[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 _0x97a6=['templates','outbound','voiceExtensions','channels','queueChannels','outboundChannels','timers','zendeskAccounts','salesforceAccounts','freshdeskAccounts','zohoAccounts','deskAccounts','vtigerAccounts','servicenowAccounts','mapKeys','hasOwnProperty','name','interface','format','SIP/%s','total','answered','sumBillable','isEmpty','ivrTotalCallsDays','ivrAnswerCallsDay','unmanaged','abandoned','sumHoldTime','sumDuration','outboundNoAnswerCallsDay','outboundBusyCallsDay','outboundCongestionCallsDay','outboundNoSuchCallsDay','outboundUnknownCallsDay','outboundDropCallsDayTimeout','outboundDropCallsDayCallersExit','outboundBlacklistCallsDay','outboundRejectCallsDay','outboundReCallsDay','prototype','mergeFromDatabase','initAgents','length','isNil','isUndefined','initTelephones','telephones','initTrunks','initVoiceQueues','initTriggers','initTemplates','initZendeskAccounts','initSalesforceAccounts','initFreshdeskAccounts','initZohoAccounts','initDeskAccounts','initSugarcrmAccounts','sugarcrmAccounts','initVtigerAccounts','initServicenowAccounts','initDynamics365Accounts','dynamics365Accounts','initVoiceQueueHopperHistory','merge','groupBy','uniqueid','queue','queuecallerexit','queuecallerabandon','queuecallerleaveAt','diff','queuecallerjoinAt','seconds','queuecallercompleteAt','queuecallerabandonAt','queuecallerexitAt','queuecallercomplete','initVoiceCallReports','disposition','ANSWERED','duration','billableseconds','initCampaigns','campaigns','initVoiceExtensions','initCampaignHopperHistory','initFaxAccounts','faxAccounts','exports','util','lodash','moment','../model/agent','../model/telephone','../model/trunk','../model/voiceQueue','../model/trigger','../model/template','../model/campaign','../model/voiceExtension','../model/zendeskAccount','../model/salesforceAccount','../model/freshdeskAccount','../model/sugarcrmAccount','../model/zohoAccount','../model/deskAccount','../model/vtigerAccount','../model/servicenowAccount','../model/dynamics365Account','../model/faxAccount','agents','trunks','voiceQueues','triggers'];(function(_0x2b6676,_0x3f94b6){var _0xafd0ec=function(_0x8235ac){while(--_0x8235ac){_0x2b6676['push'](_0x2b6676['shift']());}};_0xafd0ec(++_0x3f94b6);}(_0x97a6,0x1b3));var _0x697a=function(_0x3dd15e,_0x1f0015){_0x3dd15e=_0x3dd15e-0x0;var _0x231fd0=_0x97a6[_0x3dd15e];return _0x231fd0;};'use strict';var BPromise=require('bluebird');var util=require(_0x697a('0x0'));var _=require(_0x697a('0x1'));var moment=require(_0x697a('0x2'));var Agent=require(_0x697a('0x3'));var Telephone=require(_0x697a('0x4'));var Trunk=require(_0x697a('0x5'));var VoiceQueue=require(_0x697a('0x6'));var Trigger=require(_0x697a('0x7'));var Template=require(_0x697a('0x8'));var Campaign=require(_0x697a('0x9'));var VoiceExtension=require(_0x697a('0xa'));var ZendeskAccount=require(_0x697a('0xb'));var SalesforceAccount=require(_0x697a('0xc'));var FreshdeskAccount=require(_0x697a('0xd'));var SugarcrmAccount=require(_0x697a('0xe'));var ZohoAccount=require(_0x697a('0xf'));var DeskAccount=require(_0x697a('0x10'));var VtigerAccount=require(_0x697a('0x11'));var ServicenowAccount=require(_0x697a('0x12'));var Dynamics365Account=require(_0x697a('0x13'));var FaxAccount=require(_0x697a('0x14'));var Realtime=function(){this[_0x697a('0x15')]={};this['telephones']={};this[_0x697a('0x16')]={};this[_0x697a('0x17')]={};this[_0x697a('0x18')]={};this['campaigns']={};this[_0x697a('0x19')]={};this[_0x697a('0x1a')]={'total':0x0,'answered':0x0,'sumHoldTime':0x0,'sumDuration':0x0,'sumBillable':0x0};this[_0x697a('0x1b')]={};this[_0x697a('0x1c')]={};this[_0x697a('0x1d')]={};this[_0x697a('0x1e')]={};this[_0x697a('0x1f')]={};this[_0x697a('0x20')]={};this[_0x697a('0x21')]={};this['sugarcrmAccounts']={};this[_0x697a('0x22')]={};this[_0x697a('0x23')]={};this[_0x697a('0x24')]={};this[_0x697a('0x25')]={};this[_0x697a('0x26')]={};this['dynamics365Accounts']={};this['faxAccounts']={};};function freeIsNotKey(_0x186bbc,_0x34233b,_0x5b1896){var _0x32893f=_[_0x697a('0x27')](_0x186bbc,function(_0x253bdb,_0xb4668e){return _0x253bdb[_0x5b1896];});for(var _0x31a43a in _0x34233b){if(_0x34233b[_0x697a('0x28')](_0x31a43a)){if(!_0x32893f[_0x31a43a]){delete _0x34233b[_0x31a43a];}}}}function freeIsNotKeySip(_0x114f8d,_0x1442ab){var _0x43f487=_[_0x697a('0x27')](_0x114f8d,function(_0x35bc29,_0x3e867){return util['format']('SIP/%s',_0x35bc29[_0x697a('0x29')]);});for(var _0x369f7b in _0x1442ab){if(_0x1442ab[_0x697a('0x28')](_0x369f7b)){if(!_0x43f487[_0x369f7b]){delete _0x1442ab[_0x369f7b];}}}}function freeIsNotKeyAgent(_0x2db498,_0x39aaf7){var _0x447890=_[_0x697a('0x27')](_0x2db498,function(_0x273ed4,_0x4128fd){var _0x540950=_['isNil'](_0x273ed4[_0x697a('0x2a')])?util[_0x697a('0x2b')](_0x697a('0x2c'),_0x273ed4['name']):_0x273ed4[_0x697a('0x2a')];return _0x540950;});for(var _0x2e1983 in _0x39aaf7){if(_0x39aaf7['hasOwnProperty'](_0x2e1983)){if(!_0x447890[_0x2e1983]){delete _0x39aaf7[_0x2e1983];}}}}function clearVoiceCallReports(_0x3f170a){_0x3f170a[_0x697a('0x2d')]=0x0;_0x3f170a[_0x697a('0x2e')]=0x0;_0x3f170a['sumHoldTime']=0x0;_0x3f170a['sumDuration']=0x0;_0x3f170a[_0x697a('0x2f')]=0x0;}function clearCampaigns(_0x3cda1a){if(!_[_0x697a('0x30')](_0x3cda1a)){for(var _0xe377de in _0x3cda1a){if(_0x3cda1a['hasOwnProperty'](_0xe377de)){_0x3cda1a[_0xe377de][_0x697a('0x31')]=0x0;_0x3cda1a[_0xe377de][_0x697a('0x32')]=0x0;}}}}function clearVoiceQueues(_0x55deaf){if(!_[_0x697a('0x30')](_0x55deaf)){for(var _0x22d472 in _0x55deaf){if(_0x55deaf[_0x697a('0x28')](_0x22d472)){_0x55deaf[_0x22d472]['total']=0x0;_0x55deaf[_0x22d472]['answered']=0x0;_0x55deaf[_0x22d472][_0x697a('0x33')]=0x0;_0x55deaf[_0x22d472][_0x697a('0x34')]=0x0;_0x55deaf[_0x22d472][_0x697a('0x35')]=0x0;_0x55deaf[_0x22d472][_0x697a('0x36')]=0x0;_0x55deaf[_0x22d472]['sumBillable']=0x0;_0x55deaf[_0x22d472]['outboundAnswerAgiCallsDay']=0x0;_0x55deaf[_0x22d472][_0x697a('0x37')]=0x0;_0x55deaf[_0x22d472][_0x697a('0x38')]=0x0;_0x55deaf[_0x22d472][_0x697a('0x39')]=0x0;_0x55deaf[_0x22d472][_0x697a('0x3a')]=0x0;_0x55deaf[_0x22d472][_0x697a('0x3b')]=0x0;_0x55deaf[_0x22d472][_0x697a('0x3c')]=0x0;_0x55deaf[_0x22d472][_0x697a('0x3d')]=0x0;_0x55deaf[_0x22d472][_0x697a('0x3e')]=0x0;_0x55deaf[_0x22d472]['outboundOriginateFailureCallsDay']=0x0;_0x55deaf[_0x22d472][_0x697a('0x3f')]=0x0;_0x55deaf[_0x22d472][_0x697a('0x40')]=0x0;_0x55deaf[_0x22d472]['outboundAnswerAgiCallsDay']=0x0;_0x55deaf[_0x22d472]['outboundAnswerCallsDay']=0x0;_0x55deaf[_0x22d472]['queueStatusComplete']=!![];}}}}Realtime[_0x697a('0x41')][_0x697a('0x42')]=function(_0xb01a34,_0x56a050){for(var _0x5ca000 in _0x56a050){if(_0xb01a34[_0x697a('0x28')](_0x5ca000)){_0xb01a34[_0x5ca000]=_0x56a050[_0x5ca000];}}};Realtime[_0x697a('0x41')][_0x697a('0x43')]=function(){var _0x3a6334=this;return function(_0x2af2a8){if(_0x2af2a8){freeIsNotKeyAgent(_0x2af2a8,_0x3a6334[_0x697a('0x15')]);for(var _0x4fbb26=0x0,_0x5980dd={},_0x190136={};_0x4fbb26<_0x2af2a8[_0x697a('0x44')];_0x4fbb26+=0x1){_0x5980dd=_0x2af2a8[_0x4fbb26];var _0x2456e8=_[_0x697a('0x45')](_0x5980dd['interface'])?util[_0x697a('0x2b')]('SIP/%s',_0x5980dd[_0x697a('0x29')]):_0x5980dd[_0x697a('0x2a')];if(_[_0x697a('0x46')](_0x3a6334[_0x697a('0x15')][_0x2456e8])){_0x3a6334[_0x697a('0x15')][_0x2456e8]=new Agent(_0x5980dd);}else{_0x3a6334['mergeFromDatabase'](_0x3a6334[_0x697a('0x15')][_0x2456e8],_0x5980dd);}}}return _0x3a6334[_0x697a('0x15')];};};Realtime[_0x697a('0x41')][_0x697a('0x47')]=function(){var _0x463939=this;return function(_0x2aa6d5){if(_0x2aa6d5){freeIsNotKeySip(_0x2aa6d5,_0x463939[_0x697a('0x48')]);for(var _0x3b1120=0x0,_0x193acc={},_0x365bca={};_0x3b1120<_0x2aa6d5[_0x697a('0x44')];_0x3b1120+=0x1){_0x193acc=_0x2aa6d5[_0x3b1120];if(_[_0x697a('0x46')](_0x463939['telephones'][util[_0x697a('0x2b')](_0x697a('0x2c'),_0x193acc[_0x697a('0x29')])])){_0x463939[_0x697a('0x48')][util[_0x697a('0x2b')]('SIP/%s',_0x193acc[_0x697a('0x29')])]=new Telephone(_0x193acc);}else{_0x463939[_0x697a('0x42')](_0x463939[_0x697a('0x48')][util[_0x697a('0x2b')](_0x697a('0x2c'),_0x193acc['name'])],_0x193acc);}}}return _0x463939[_0x697a('0x48')];};};Realtime[_0x697a('0x41')][_0x697a('0x49')]=function(){var _0x26bb51=this;return function(_0x14f9eb){if(_0x14f9eb){freeIsNotKeySip(_0x14f9eb,_0x26bb51[_0x697a('0x16')]);for(var _0x42cab3=0x0,_0x18b63a={},_0x82d24d={};_0x42cab3<_0x14f9eb[_0x697a('0x44')];_0x42cab3+=0x1){_0x18b63a=_0x14f9eb[_0x42cab3];if(_[_0x697a('0x46')](_0x26bb51[_0x697a('0x16')][util[_0x697a('0x2b')](_0x697a('0x2c'),_0x18b63a[_0x697a('0x29')])])){_0x26bb51[_0x697a('0x16')][util[_0x697a('0x2b')](_0x697a('0x2c'),_0x18b63a['name'])]=new Trunk(_0x18b63a);}else{_0x26bb51[_0x697a('0x42')](_0x26bb51[_0x697a('0x16')][util[_0x697a('0x2b')](_0x697a('0x2c'),_0x18b63a[_0x697a('0x29')])],_0x18b63a);}}}return _0x26bb51[_0x697a('0x16')];};};Realtime[_0x697a('0x41')][_0x697a('0x4a')]=function(){var _0x3776fb=this;return function(_0x52426f){if(_0x52426f){freeIsNotKey(_0x52426f,_0x3776fb['voiceQueues'],_0x697a('0x29'));for(var _0x25ae2a=0x0,_0x2127d9={},_0x3f1036={};_0x25ae2a<_0x52426f[_0x697a('0x44')];_0x25ae2a+=0x1){_0x2127d9=_0x52426f[_0x25ae2a];if(_[_0x697a('0x46')](_0x3776fb['voiceQueues'][_0x2127d9[_0x697a('0x29')]])){_0x3776fb[_0x697a('0x17')][_0x2127d9[_0x697a('0x29')]]=new VoiceQueue(_0x2127d9);}else{_0x3776fb[_0x697a('0x42')](_0x3776fb['voiceQueues'][_0x2127d9[_0x697a('0x29')]],_0x2127d9);}}}return _0x3776fb[_0x697a('0x17')];};};Realtime[_0x697a('0x41')][_0x697a('0x4b')]=function(){var _0x589609=this;return function(_0x3cc439){if(_0x3cc439){freeIsNotKey(_0x3cc439,_0x589609[_0x697a('0x18')],'id');for(var _0x364a84=0x0,_0x14280e={},_0x444f84={};_0x364a84<_0x3cc439[_0x697a('0x44')];_0x364a84+=0x1){_0x14280e=_0x3cc439[_0x364a84];if(_[_0x697a('0x46')](_0x589609[_0x697a('0x18')][_0x14280e['id']])){_0x589609[_0x697a('0x18')][_0x14280e['id']]=new Trigger(_0x14280e);}else{_0x589609['mergeFromDatabase'](_0x589609[_0x697a('0x18')][_0x14280e['id']],_0x14280e);}}}return _0x589609[_0x697a('0x18')];};};Realtime[_0x697a('0x41')][_0x697a('0x4c')]=function(){var _0x1cf1d9=this;return function(_0x37fb43){if(_0x37fb43){freeIsNotKey(_0x37fb43,_0x1cf1d9[_0x697a('0x19')],'id');for(var _0x50bd91=0x0,_0x4b28f1={},_0x3ded41={};_0x50bd91<_0x37fb43[_0x697a('0x44')];_0x50bd91+=0x1){_0x4b28f1=_0x37fb43[_0x50bd91];if(_[_0x697a('0x46')](_0x1cf1d9[_0x697a('0x19')][_0x4b28f1['id']])){_0x1cf1d9[_0x697a('0x19')][_0x4b28f1['id']]=new Template(_0x4b28f1);}else{_0x1cf1d9['mergeFromDatabase'](_0x1cf1d9[_0x697a('0x19')][_0x4b28f1['id']],_0x4b28f1);}}}return _0x1cf1d9['templates'];};};Realtime[_0x697a('0x41')][_0x697a('0x4d')]=function(){var _0x53ec66=this;return function(_0x4bdbf5){if(_0x4bdbf5){freeIsNotKey(_0x4bdbf5,_0x53ec66[_0x697a('0x20')],'id');for(var _0x25be87=0x0,_0x3aacd1={},_0x2a30e0={};_0x25be87<_0x4bdbf5[_0x697a('0x44')];_0x25be87+=0x1){_0x3aacd1=_0x4bdbf5[_0x25be87];if(_[_0x697a('0x46')](_0x53ec66['zendeskAccounts'][_0x3aacd1['id']])){_0x53ec66[_0x697a('0x20')][_0x3aacd1['id']]=new ZendeskAccount(_0x3aacd1);}else{_0x53ec66[_0x697a('0x42')](_0x53ec66[_0x697a('0x20')][_0x3aacd1['id']],_0x3aacd1);}}}return _0x53ec66[_0x697a('0x20')];};};Realtime['prototype'][_0x697a('0x4e')]=function(){var _0x27ff3a=this;return function(_0x22eab0){if(_0x22eab0){freeIsNotKey(_0x22eab0,_0x27ff3a[_0x697a('0x21')],'id');for(var _0x52c193=0x0,_0x182ab8={},_0x3a5457={};_0x52c193<_0x22eab0[_0x697a('0x44')];_0x52c193+=0x1){_0x182ab8=_0x22eab0[_0x52c193];if(_['isUndefined'](_0x27ff3a[_0x697a('0x21')][_0x182ab8['id']])){_0x27ff3a[_0x697a('0x21')][_0x182ab8['id']]=new SalesforceAccount(_0x182ab8);}else{_0x27ff3a['mergeFromDatabase'](_0x27ff3a['salesforceAccounts'][_0x182ab8['id']],_0x182ab8);}}}return _0x27ff3a['salesforceAccounts'];};};Realtime['prototype'][_0x697a('0x4f')]=function(){var _0x1d4e35=this;return function(_0x29bfc7){if(_0x29bfc7){freeIsNotKey(_0x29bfc7,_0x1d4e35[_0x697a('0x22')],'id');for(var _0x4230f4=0x0,_0x5e71a6={},_0x53c5c6={};_0x4230f4<_0x29bfc7['length'];_0x4230f4+=0x1){_0x5e71a6=_0x29bfc7[_0x4230f4];if(_[_0x697a('0x46')](_0x1d4e35[_0x697a('0x22')][_0x5e71a6['id']])){_0x1d4e35[_0x697a('0x22')][_0x5e71a6['id']]=new FreshdeskAccount(_0x5e71a6);}else{_0x1d4e35[_0x697a('0x42')](_0x1d4e35[_0x697a('0x22')][_0x5e71a6['id']],_0x5e71a6);}}}return _0x1d4e35[_0x697a('0x22')];};};Realtime[_0x697a('0x41')][_0x697a('0x50')]=function(){var _0x480558=this;return function(_0x5816e9){if(_0x5816e9){freeIsNotKey(_0x5816e9,_0x480558[_0x697a('0x23')],'id');for(var _0x134551=0x0,_0x5d1465={},_0x5540bc={};_0x134551<_0x5816e9['length'];_0x134551+=0x1){_0x5d1465=_0x5816e9[_0x134551];if(_['isUndefined'](_0x480558[_0x697a('0x23')][_0x5d1465['id']])){_0x480558[_0x697a('0x23')][_0x5d1465['id']]=new ZohoAccount(_0x5d1465);}else{_0x480558[_0x697a('0x42')](_0x480558[_0x697a('0x23')][_0x5d1465['id']],_0x5d1465);}}}return _0x480558[_0x697a('0x23')];};};Realtime['prototype'][_0x697a('0x51')]=function(){var _0x30e548=this;return function(_0x4ec1d3){if(_0x4ec1d3){freeIsNotKey(_0x4ec1d3,_0x30e548[_0x697a('0x24')],'id');for(var _0x39891e=0x0,_0x2fcaa1={},_0x511c3b={};_0x39891e<_0x4ec1d3[_0x697a('0x44')];_0x39891e+=0x1){_0x2fcaa1=_0x4ec1d3[_0x39891e];if(_['isUndefined'](_0x30e548['deskAccounts'][_0x2fcaa1['id']])){_0x30e548[_0x697a('0x24')][_0x2fcaa1['id']]=new DeskAccount(_0x2fcaa1);}else{_0x30e548[_0x697a('0x42')](_0x30e548[_0x697a('0x24')][_0x2fcaa1['id']],_0x2fcaa1);}}}return _0x30e548[_0x697a('0x24')];};};Realtime[_0x697a('0x41')][_0x697a('0x52')]=function(){var _0x3d4bc5=this;return function(_0x6f02ab){if(_0x6f02ab){freeIsNotKey(_0x6f02ab,_0x3d4bc5[_0x697a('0x53')],'id');for(var _0x377e1e=0x0,_0x49a17e={},_0x2bf34a={};_0x377e1e<_0x6f02ab[_0x697a('0x44')];_0x377e1e+=0x1){_0x49a17e=_0x6f02ab[_0x377e1e];if(_[_0x697a('0x46')](_0x3d4bc5['sugarcrmAccounts'][_0x49a17e['id']])){_0x3d4bc5[_0x697a('0x53')][_0x49a17e['id']]=new SugarcrmAccount(_0x49a17e);}else{_0x3d4bc5[_0x697a('0x42')](_0x3d4bc5[_0x697a('0x53')][_0x49a17e['id']],_0x49a17e);}}}return _0x3d4bc5[_0x697a('0x53')];};};Realtime['prototype'][_0x697a('0x54')]=function(){var _0x36efe7=this;return function(_0x149c18){if(_0x149c18){freeIsNotKey(_0x149c18,_0x36efe7[_0x697a('0x25')],'id');for(var _0x1068bb=0x0,_0x57617c={},_0x2d1aa4={};_0x1068bb<_0x149c18['length'];_0x1068bb+=0x1){_0x57617c=_0x149c18[_0x1068bb];if(_[_0x697a('0x46')](_0x36efe7['vtigerAccounts'][_0x57617c['id']])){_0x36efe7['vtigerAccounts'][_0x57617c['id']]=new VtigerAccount(_0x57617c);}else{_0x36efe7[_0x697a('0x42')](_0x36efe7[_0x697a('0x25')][_0x57617c['id']],_0x57617c);}}}return _0x36efe7[_0x697a('0x25')];};};Realtime[_0x697a('0x41')][_0x697a('0x55')]=function(){var _0xbbd3da=this;return function(_0x226a60){if(_0x226a60){freeIsNotKey(_0x226a60,_0xbbd3da[_0x697a('0x26')],'id');for(var _0x124b05=0x0,_0x179531={},_0x269433={};_0x124b05<_0x226a60['length'];_0x124b05+=0x1){_0x179531=_0x226a60[_0x124b05];if(_[_0x697a('0x46')](_0xbbd3da[_0x697a('0x26')][_0x179531['id']])){_0xbbd3da['servicenowAccounts'][_0x179531['id']]=new ServicenowAccount(_0x179531);}else{_0xbbd3da[_0x697a('0x42')](_0xbbd3da[_0x697a('0x26')][_0x179531['id']],_0x179531);}}}return _0xbbd3da['servicenowAccounts'];};};Realtime[_0x697a('0x41')][_0x697a('0x56')]=function(){var _0x52860b=this;return function(_0x4c6da2){if(_0x4c6da2){freeIsNotKey(_0x4c6da2,_0x52860b[_0x697a('0x57')],'id');for(var _0x5a4303=0x0,_0x11e25a={},_0x340258={};_0x5a4303<_0x4c6da2[_0x697a('0x44')];_0x5a4303+=0x1){_0x11e25a=_0x4c6da2[_0x5a4303];if(_[_0x697a('0x46')](_0x52860b[_0x697a('0x57')][_0x11e25a['id']])){_0x52860b['dynamics365Accounts'][_0x11e25a['id']]=new Dynamics365Account(_0x11e25a);}else{_0x52860b[_0x697a('0x42')](_0x52860b['dynamics365Accounts'][_0x11e25a['id']],_0x11e25a);}}}return _0x52860b[_0x697a('0x57')];};};Realtime[_0x697a('0x41')][_0x697a('0x58')]=function(){var _0x586347=this;return function(_0x4d5497){for(var _0x3ac8f3=0x0;_0x3ac8f3<_0x4d5497[_0x697a('0x44')];_0x3ac8f3+=0x1){_[_0x697a('0x59')](_0x586347['voiceQueues'][_0x4d5497[_0x3ac8f3][_0x697a('0x29')]],_0x4d5497[_0x3ac8f3]);}return _0x586347['voiceQueues'];};};Realtime[_0x697a('0x41')]['initVoiceQueueReports']=function(){var _0xbeb2bd=this;return function(_0x3ba845){clearVoiceQueues(_0xbeb2bd[_0x697a('0x17')]);if(_0x3ba845){_0x3ba845=_[_0x697a('0x5a')](_0x3ba845,_0x697a('0x5b'));for(var _0x349ad1 in _0x3ba845){if(_0x3ba845[_0x697a('0x28')](_0x349ad1)){var _0x4fdb08={};for(var _0x47c631=0x0;_0x47c631<_0x3ba845[_0x349ad1]['length'];_0x47c631+=0x1){var _0x5bcc86=_0x3ba845[_0x349ad1][_0x47c631][_0x697a('0x5c')];if(_0xbeb2bd[_0x697a('0x17')][_0x5bcc86]){if(_0x3ba845[_0x349ad1][_0x47c631][_0x697a('0x5d')]){_0xbeb2bd[_0x697a('0x17')][_0x5bcc86][_0x697a('0x33')]+=0x1;}if(_0x3ba845[_0x349ad1][_0x47c631][_0x697a('0x5e')]){_0xbeb2bd[_0x697a('0x17')][_0x5bcc86][_0x697a('0x34')]+=0x1;}_0xbeb2bd[_0x697a('0x17')][_0x5bcc86][_0x697a('0x35')]+=moment(_0x3ba845[_0x349ad1][_0x47c631][_0x697a('0x5f')])[_0x697a('0x60')](moment(_0x3ba845[_0x349ad1][_0x47c631][_0x697a('0x61')]),_0x697a('0x62'))||0x0;if(_0x47c631===_0x3ba845[_0x349ad1]['length']-0x1){_0xbeb2bd[_0x697a('0x17')][_0x5bcc86][_0x697a('0x36')]+=moment(_0x3ba845[_0x349ad1][_0x47c631][_0x697a('0x63')]||_0x3ba845[_0x349ad1][_0x47c631][_0x697a('0x64')]||_0x3ba845[_0x349ad1][_0x47c631][_0x697a('0x65')])['diff'](moment(_0x3ba845[_0x349ad1][_0x47c631][_0x697a('0x61')]),'seconds')||0x0;_0xbeb2bd[_0x697a('0x17')][_0x5bcc86]['total']+=0x1;if(_0x3ba845[_0x349ad1][_0x47c631][_0x697a('0x66')]){_0xbeb2bd[_0x697a('0x17')][_0x5bcc86]['answered']+=0x1;_0xbeb2bd['voiceQueues'][_0x5bcc86][_0x697a('0x2f')]+=moment(_0x3ba845[_0x349ad1][_0x47c631]['queuecallercompleteAt'])[_0x697a('0x60')](moment(_0x3ba845[_0x349ad1][_0x47c631][_0x697a('0x5f')]),'seconds')||0x0;}}else{_0xbeb2bd[_0x697a('0x17')][_0x5bcc86][_0x697a('0x36')]+=_0xbeb2bd[_0x697a('0x17')][_0x5bcc86]['sumHoldTime']||0x0;}}}}}}return _0xbeb2bd[_0x697a('0x17')];};};Realtime[_0x697a('0x41')][_0x697a('0x67')]=function(){var _0x4022ce=this;return function(_0x2aeff8){clearVoiceCallReports(_0x4022ce['outbound']);if(_0x2aeff8){for(var _0x4178bd=0x0;_0x4178bd<_0x2aeff8[_0x697a('0x44')];_0x4178bd+=0x1){_0x4022ce['outbound']['total']+=0x1;_0x4022ce[_0x697a('0x1a')][_0x697a('0x36')]+=_0x2aeff8[_0x4178bd]['duration'];if(_0x2aeff8[_0x4178bd][_0x697a('0x68')]===_0x697a('0x69')){_0x4022ce[_0x697a('0x1a')][_0x697a('0x2e')]+=0x1;_0x4022ce[_0x697a('0x1a')][_0x697a('0x35')]+=_0x2aeff8[_0x4178bd][_0x697a('0x6a')]-_0x2aeff8[_0x4178bd][_0x697a('0x6b')]||0x0;_0x4022ce[_0x697a('0x1a')][_0x697a('0x2f')]+=_0x2aeff8[_0x4178bd]['billableseconds'];}}}return _0x4022ce[_0x697a('0x1a')];};};Realtime[_0x697a('0x41')][_0x697a('0x6c')]=function(){var _0x2b1b6a=this;return function(_0x6e6ce7){if(_0x6e6ce7){freeIsNotKey(_0x6e6ce7,_0x2b1b6a['campaigns'],_0x697a('0x29'));for(var _0x484436=0x0,_0x542d68={};_0x484436<_0x6e6ce7[_0x697a('0x44')];_0x484436+=0x1){_0x542d68=_0x6e6ce7[_0x484436];if(_['isUndefined'](_0x2b1b6a[_0x697a('0x6d')][_0x542d68[_0x697a('0x29')]])){_0x2b1b6a['campaigns'][_0x542d68[_0x697a('0x29')]]=new Campaign(_0x542d68);}else{_0x2b1b6a['mergeFromDatabase'](_0x2b1b6a[_0x697a('0x6d')][_0x542d68[_0x697a('0x29')]],_0x542d68);}}}return _0x2b1b6a[_0x697a('0x6d')];};};Realtime[_0x697a('0x41')][_0x697a('0x6e')]=function(){var _0x478464=this;return function(_0x4067ca){if(_0x4067ca){freeIsNotKey(_0x4067ca,_0x478464[_0x697a('0x1b')],'id');for(var _0x22d909=0x0,_0x5d61fc={};_0x22d909<_0x4067ca[_0x697a('0x44')];_0x22d909+=0x1){_0x5d61fc=_0x4067ca[_0x22d909];if(_[_0x697a('0x46')](_0x478464[_0x697a('0x1b')][_0x5d61fc['id']])){_0x478464['voiceExtensions'][_0x5d61fc['id']]=new VoiceExtension(_0x5d61fc);}else{_0x478464[_0x697a('0x42')](_0x478464['voiceExtensions'][_0x5d61fc['id']],_0x5d61fc);}}}return _0x478464[_0x697a('0x1b')];};};Realtime[_0x697a('0x41')][_0x697a('0x6f')]=function(){var _0x10e7fe=this;return function(_0x400c39){clearCampaigns(_0x10e7fe[_0x697a('0x6d')]);for(var _0x341365=0x0;_0x341365<_0x400c39[_0x697a('0x44')];_0x341365+=0x1){_[_0x697a('0x59')](_0x10e7fe[_0x697a('0x6d')][_0x400c39[_0x341365][_0x697a('0x29')]],_0x400c39[_0x341365]);}return _0x10e7fe[_0x697a('0x6d')];};};Realtime[_0x697a('0x41')][_0x697a('0x70')]=function(){var _0x3564ed=this;return function(_0x542e79){if(_0x542e79){freeIsNotKey(_0x542e79,_0x3564ed['faxAccounts'],'id');for(var _0x13877c=0x0,_0x4d8ee9={},_0x14c0e7={};_0x13877c<_0x542e79[_0x697a('0x44')];_0x13877c+=0x1){_0x4d8ee9=_0x542e79[_0x13877c];if(_['isUndefined'](_0x3564ed['faxAccounts'][_0x4d8ee9['id']])){_0x3564ed['faxAccounts'][_0x4d8ee9['id']]=new FaxAccount(_0x4d8ee9);}else{_0x3564ed[_0x697a('0x42')](_0x3564ed['faxAccounts'][_0x4d8ee9['id']],_0x4d8ee9);}}}return _0x3564ed[_0x697a('0x71')];};};module[_0x697a('0x72')]=Realtime;