47b720f5f9853d5556995baf15a9efca617d69c9
[motion2.git] / server / services / ami / model / voiceQueueSummary.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 _0x0ec6=['unmanaged','pTalking','dialActive','dialMethod','dialOriginateCallerIdName','dialOriginateCallerIdNumber','dialOriginateTimeout','dialPrefix','temp','outboundAnswerAgiCallsDay','outboundBlacklistCallsDay','outboundCongestionCallsDay','outboundDropCallsDayACS','outboundDropCallsDayCallersExit','outboundDropCallsDayTimeout','outboundOriginateFailureCallsDay','predictiveIntervalAnsweredCalls','predictiveIntervalAvgHoldtime','predictiveIntervalAvgTalktime','predictiveIntervalDroppedCallsCallersExit','predictiveIntervalDroppedCallsTimeout','predictiveIntervalErlangCalls','predictiveIntervalErlangCallsDroppedCalls','predictiveIntervalHitRate','predictiveIntervalMultiplicativeFactor','predictiveIntervalPauses','predictiveIntervalAvailable','predictiveIntervalTotalCalls','erlangCalls','erlangCallToSecond','erlangAbandonmentRate','erlangBusyFactor','startPredictive','message','statusMessage','Trunk','active','callerid','prototype','unavailable','loggedin','callers','length','SIP/','name','online','incall','status','booked','keys','queue','dialer','exten','some','updateReportFromOutboundQueue','preview','exports','available','paused','ringing','talking','waiting','answered','inUse','loggedInDb','originated','outboundAbandonedCallsDay','outboundAnswerCallsDay','outboundBusyCallsDay','outboundNoAnswerCallsDay','outboundNoSuchCallsDay','outboundReCallsDay','outboundRejectCallsDay','outboundUnknownCallsDay','sumBillable','sumDuration','total','strategy','abandoned','busy','invalid','loggedIn','onHold','notInUse','ringInUse','sumHoldTime','type','unknown'];(function(_0xaa8a12,_0x4b02fa){var _0xe8546e=function(_0x4b90bd){while(--_0x4b90bd){_0xaa8a12['push'](_0xaa8a12['shift']());}};_0xe8546e(++_0x4b02fa);}(_0x0ec6,0x1f1));var _0x60ec=function(_0x5997aa,_0x2fb3ed){_0x5997aa=_0x5997aa-0x0;var _0x4e970=_0x0ec6[_0x5997aa];return _0x4e970;};'use strict';var INBOUND_COUNTERS=[_0x60ec('0x0'),'loggedIn','loggedInDb',_0x60ec('0x1'),_0x60ec('0x2'),_0x60ec('0x3'),_0x60ec('0x4')];var OUTBOUND_COUNTERS=[_0x60ec('0x0'),_0x60ec('0x5'),_0x60ec('0x6'),'loggedIn',_0x60ec('0x7'),_0x60ec('0x8'),_0x60ec('0x9'),_0x60ec('0xa'),'outboundBlacklistCallsDay',_0x60ec('0xb'),'outboundCongestionCallsDay',_0x60ec('0xc'),_0x60ec('0xd'),_0x60ec('0xe'),_0x60ec('0xf'),_0x60ec('0x10'),_0x60ec('0x1'),'pTalking','talking',_0x60ec('0x11'),_0x60ec('0x12'),_0x60ec('0x13'),_0x60ec('0x4')];function VoiceQueueSummary(_0x10ec80){this['id']=_0x10ec80['id'];this['name']=_0x10ec80['name'];this[_0x60ec('0x14')]=_0x10ec80[_0x60ec('0x14')];this[_0x60ec('0x15')]=_0x10ec80[_0x60ec('0x15')]||0x0;this[_0x60ec('0x5')]=_0x10ec80['answered']||0x0;this[_0x60ec('0x0')]=_0x10ec80[_0x60ec('0x0')]||0x0;this[_0x60ec('0x16')]=_0x10ec80[_0x60ec('0x16')]||0x0;this[_0x60ec('0x6')]=_0x10ec80[_0x60ec('0x6')]||0x0;this[_0x60ec('0x17')]=_0x10ec80[_0x60ec('0x17')]||0x0;this[_0x60ec('0x18')]=_0x10ec80['loggedIn']||0x0;this[_0x60ec('0x7')]=_0x10ec80[_0x60ec('0x7')]||0x0;this[_0x60ec('0x19')]=_0x10ec80[_0x60ec('0x19')]||0x0;this[_0x60ec('0x1a')]=_0x10ec80[_0x60ec('0x1a')]||0x0;this[_0x60ec('0x1')]=_0x10ec80[_0x60ec('0x1')]||0x0;this[_0x60ec('0x2')]=_0x10ec80[_0x60ec('0x2')]||0x0;this[_0x60ec('0x1b')]=_0x10ec80[_0x60ec('0x1b')];this['sumBillable']=_0x10ec80[_0x60ec('0x11')];this[_0x60ec('0x12')]=_0x10ec80[_0x60ec('0x12')];this[_0x60ec('0x1c')]=_0x10ec80['sumHoldTime']||0x0;this[_0x60ec('0x3')]=_0x10ec80[_0x60ec('0x3')]||0x0;this[_0x60ec('0x13')]=_0x10ec80[_0x60ec('0x13')]||0x0;this[_0x60ec('0x1d')]=_0x10ec80[_0x60ec('0x1d')];this['unavailable']=_0x10ec80['unavailable']||0x0;this['unknown']=_0x10ec80[_0x60ec('0x1e')]||0x0;this[_0x60ec('0x1f')]=_0x10ec80[_0x60ec('0x1f')]||0x0;this[_0x60ec('0x4')]=_0x10ec80['waiting']||0x0;if(_0x10ec80['type']==='outbound'){this['pTalking']=_0x10ec80[_0x60ec('0x20')]||0x0;this[_0x60ec('0x21')]=_0x10ec80[_0x60ec('0x21')];this[_0x60ec('0x22')]=_0x10ec80[_0x60ec('0x22')];this[_0x60ec('0x23')]=_0x10ec80[_0x60ec('0x23')];this[_0x60ec('0x24')]=_0x10ec80[_0x60ec('0x24')];this['dialOriginateTimeout']=_0x10ec80[_0x60ec('0x25')];this[_0x60ec('0x26')]=_0x10ec80[_0x60ec('0x26')];this[_0x60ec('0x27')]=_0x10ec80[_0x60ec('0x27')];this[_0x60ec('0x28')]=_0x10ec80[_0x60ec('0x28')];this[_0x60ec('0xa')]=_0x10ec80[_0x60ec('0xa')];this[_0x60ec('0x29')]=_0x10ec80['outboundBlacklistCallsDay'];this['outboundBusyCallsDay']=_0x10ec80[_0x60ec('0xb')];this[_0x60ec('0x2a')]=_0x10ec80['outboundCongestionCallsDay'];this['outboundDropCallsDayACS']=_0x10ec80[_0x60ec('0x2b')];this['outboundDropCallsDayCallersExit']=_0x10ec80[_0x60ec('0x2c')];this[_0x60ec('0x2d')]=_0x10ec80[_0x60ec('0x2d')];this[_0x60ec('0xc')]=_0x10ec80[_0x60ec('0xc')];this['outboundNoSuchCallsDay']=_0x10ec80[_0x60ec('0xd')];this[_0x60ec('0x2e')]=_0x10ec80[_0x60ec('0x2e')];this[_0x60ec('0xe')]=_0x10ec80[_0x60ec('0xe')];this[_0x60ec('0xf')]=_0x10ec80['outboundRejectCallsDay'];this[_0x60ec('0x10')]=_0x10ec80[_0x60ec('0x10')];this['predictiveIntervalAnsweredCalls']=_0x10ec80[_0x60ec('0x2f')];this[_0x60ec('0x30')]=_0x10ec80[_0x60ec('0x30')];this[_0x60ec('0x31')]=_0x10ec80['predictiveIntervalAvgTalktime'];this[_0x60ec('0x32')]=_0x10ec80[_0x60ec('0x32')];this[_0x60ec('0x33')]=_0x10ec80[_0x60ec('0x33')];this[_0x60ec('0x34')]=_0x10ec80[_0x60ec('0x34')];this[_0x60ec('0x35')]=_0x10ec80[_0x60ec('0x35')];this[_0x60ec('0x36')]=_0x10ec80[_0x60ec('0x36')];this[_0x60ec('0x37')]=_0x10ec80[_0x60ec('0x37')];this[_0x60ec('0x38')]=_0x10ec80[_0x60ec('0x38')];this[_0x60ec('0x39')]=_0x10ec80[_0x60ec('0x39')];this[_0x60ec('0x3a')]=_0x10ec80['predictiveIntervalTotalCalls'];this[_0x60ec('0x8')]=_0x10ec80[_0x60ec('0x8')];this['erlangCalls']=_0x10ec80[_0x60ec('0x3b')];this['erlangCallToSecond']=_0x10ec80[_0x60ec('0x3c')];this[_0x60ec('0x3d')]=_0x10ec80[_0x60ec('0x3d')];this[_0x60ec('0x3e')]=_0x10ec80[_0x60ec('0x3e')];this[_0x60ec('0x3f')]=_0x10ec80[_0x60ec('0x3f')];this['startProgressive']=_0x10ec80['startProgressive'];this['message']=_0x10ec80[_0x60ec('0x40')];this['statusMessage']=_0x10ec80[_0x60ec('0x41')];}if(_0x10ec80[_0x60ec('0x42')]){this['Trunk']={'id':_0x10ec80[_0x60ec('0x42')]['id'],'name':_0x10ec80['Trunk']['name'],'active':_0x10ec80['Trunk'][_0x60ec('0x43')],'callerid':_0x10ec80[_0x60ec('0x42')][_0x60ec('0x44')]};}}VoiceQueueSummary[_0x60ec('0x45')]['createReport']=function(_0x3bb831,_0x1bee8d,_0xdaf11b,_0x2de1d6){this[_0x60ec('0x7')]=0x0;this[_0x60ec('0x3')]=0x0;this[_0x60ec('0x1')]=0x0;this[_0x60ec('0x1e')]=0x0;this[_0x60ec('0x1a')]=0x0;this[_0x60ec('0x6')]=0x0;this[_0x60ec('0x16')]=0x0;this[_0x60ec('0x17')]=0x0;this[_0x60ec('0x46')]=0x0;this[_0x60ec('0x2')]=0x0;this['ringInUse']=0x0;this[_0x60ec('0x19')]=0x0;if(_0xdaf11b){if(_0xdaf11b[_0x60ec('0x0')]){this['available']=Number(_0xdaf11b[_0x60ec('0x0')]);}if(_0xdaf11b['loggedin']){this[_0x60ec('0x18')]=Number(_0xdaf11b[_0x60ec('0x47')]);}if(_0xdaf11b[_0x60ec('0x48')]){this[_0x60ec('0x4')]=Number(_0xdaf11b[_0x60ec('0x48')]);}}for(var _0x52a668=0x0;_0x52a668<_0x3bb831[_0x60ec('0x49')];_0x52a668++){var _0x5bb833=_0x1bee8d[_0x60ec('0x4a')+_0x3bb831[_0x52a668][_0x60ec('0x4b')]];if(_0x5bb833&&_0x5bb833[_0x60ec('0x4c')]){this[_0x60ec('0x7')]+=0x1;}if(_0x3bb831[_0x52a668][_0x60ec('0x4d')]==='1'){this['talking']+=0x1;}if(_0x3bb831[_0x52a668][_0x60ec('0x1')]==='1'&&!['2','7','8']['includes'](_0x3bb831[_0x52a668][_0x60ec('0x4e')])){this[_0x60ec('0x1')]+=0x1;}switch(_0x3bb831[_0x52a668]['status']){case'0':this['unknown']+=0x1;break;case'1':this[_0x60ec('0x1a')]+=0x1;break;case'2':this[_0x60ec('0x6')]+=0x1;break;case'3':this[_0x60ec('0x16')]+=0x1;break;case'4':this[_0x60ec('0x17')]+=0x1;break;case'5':this[_0x60ec('0x46')]+=0x1;break;case'6':this[_0x60ec('0x2')]+=0x1;break;case'7':this[_0x60ec('0x1b')]+=0x1;break;case'8':this[_0x60ec('0x19')]+=0x1;break;}}if(this[_0x60ec('0x22')]===_0x60ec('0x4f')){var _0xc3c51d=Object[_0x60ec('0x50')](_0x2de1d6);for(var _0x43bfcf=0x0;_0x43bfcf<_0xc3c51d[_0x60ec('0x49')];_0x43bfcf++){var _0x327401=_0xc3c51d[_0x43bfcf];var _0x4f6653=_0x2de1d6[_0x327401];if(_0x4f6653[_0x60ec('0x51')]===this[_0x60ec('0x4b')]&&_0x4f6653[_0x60ec('0x1d')]===_0x60ec('0x52')&&_0x4f6653[_0x60ec('0x53')]==='xcally-motion-preview'){this[_0x60ec('0x3')]+=0x1;}}if(this['talking']>this[_0x60ec('0x6')]){this[_0x60ec('0x3')]=this['inUse'];}this[_0x60ec('0x20')]=0x0;}return this;};VoiceQueueSummary[_0x60ec('0x45')]['compareToInboundQueue']=function(_0x572450){var _0x17f085=![];if(_0x572450){_0x17f085=INBOUND_COUNTERS['some'](function(_0x4a5c57){return this[_0x4a5c57]!==_0x572450[_0x4a5c57];},this);}return _0x17f085;};VoiceQueueSummary[_0x60ec('0x45')]['compareToOutboundQueue']=function(_0x31aa1b){var _0x41a87f=![];var _0x4874f0=![];var _0x2af33e=![];if(_0x31aa1b){_0x41a87f=this[_0x60ec('0x22')]!==_0x31aa1b[_0x60ec('0x22')]||this['dialActive']!==_0x31aa1b[_0x60ec('0x21')]||this[_0x60ec('0x40')]!==_0x31aa1b[_0x60ec('0x40')]||this[_0x60ec('0x41')]!==_0x31aa1b[_0x60ec('0x41')];_0x4874f0=OUTBOUND_COUNTERS[_0x60ec('0x54')](function(_0x33458c){return this[_0x33458c]!==_0x31aa1b[_0x33458c];},this);if(this[_0x60ec('0x42')]&&_0x31aa1b['Trunk']){_0x2af33e=this[_0x60ec('0x42')][_0x60ec('0x4b')]!==_0x31aa1b[_0x60ec('0x42')][_0x60ec('0x4b')]||this['Trunk'][_0x60ec('0x43')]!==_0x31aa1b[_0x60ec('0x42')][_0x60ec('0x43')];}}return _0x41a87f||_0x4874f0||_0x2af33e;};VoiceQueueSummary['prototype'][_0x60ec('0x55')]=function(_0x3c233e){this[_0x60ec('0x5')]=_0x3c233e[_0x60ec('0x5')];this['message']=_0x3c233e[_0x60ec('0x40')];this['statusMessage']=_0x3c233e[_0x60ec('0x41')];this['originated']=_0x3c233e['originated'];this[_0x60ec('0x9')]=_0x3c233e[_0x60ec('0x9')];this['outboundAnswerCallsDay']=_0x3c233e[_0x60ec('0xa')];this[_0x60ec('0x29')]=_0x3c233e[_0x60ec('0x29')];this[_0x60ec('0xb')]=_0x3c233e[_0x60ec('0xb')];this[_0x60ec('0x2a')]=_0x3c233e[_0x60ec('0x2a')];this['outboundNoAnswerCallsDay']=_0x3c233e['outboundNoAnswerCallsDay'];this[_0x60ec('0xd')]=_0x3c233e[_0x60ec('0xd')];this[_0x60ec('0xe')]=_0x3c233e['outboundReCallsDay'];this['outboundRejectCallsDay']=_0x3c233e[_0x60ec('0xf')];this['outboundUnknownCallsDay']=_0x3c233e[_0x60ec('0x10')];this[_0x60ec('0x11')]=_0x3c233e[_0x60ec('0x11')];this[_0x60ec('0x12')]=_0x3c233e[_0x60ec('0x12')];this[_0x60ec('0x13')]=_0x3c233e['total'];if(this[_0x60ec('0x22')]===_0x60ec('0x56')){this['pTalking']=_0x3c233e['pTalking'];}};module[_0x60ec('0x57')]=VoiceQueueSummary;