Built motion from commit (unavailable).|2.5.6
[motion2.git] / server / services / ami / report / voiceDialReport.js
index 743d27e..1b9468c 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0xeec6=['value','[syncVarSet][VoiceDialReport]','rtpaudioqos','rtpaudioqosbridged','rtpaudioqosjitter','rtpaudioqosloss','rtpaudioqoslossbridged','sipcallid','sipuri','bridgepeer','bridgepvtcallid','memberinterface','memberpenalty','memberrealtime','isNil','includes','variables','endtime','duration','starttime','seconds','complete','total','answered','holdtime','diff','sumHoldTime','sumBillable','billableseconds','sumDuration','custom:dialend','voice_outbound:save','info','voice_outbound_channel:remove','exports','lodash','moment','util','ioredis','../../../config/logger','ami','../ami','redis','defaults','socket.io-emitter','channels','outboundChannels','outbound','dialbegin','syncDialBegin','bind','varset','syncVarSet','syncHangup','prototype','isNotNull','isUndefined','emit','uniqueid','format','YYYY-MM-DD\x20HH:mm:ss','channel','substring','lastIndexOf','event','privilege','voice:outbound','voice_outbound_channel:save','custom:dialbegin','error','inspect','syncDialEnd','dialstatus','ANSWER','connectedlinenum','connectedlinename','answertime','lastevent','connect','[syncDialEnd][VoiceDialReport]','addVariable','keys','variable'];(function(_0x46b2d9,_0x135738){var _0x4cf9af=function(_0x20fa17){while(--_0x20fa17){_0x46b2d9['push'](_0x46b2d9['shift']());}};_0x4cf9af(++_0x135738);}(_0xeec6,0x1c2));var _0x6eec=function(_0x2ee790,_0x5a8661){_0x2ee790=_0x2ee790-0x0;var _0x5a54a5=_0xeec6[_0x2ee790];return _0x5a54a5;};'use strict';var _=require(_0x6eec('0x0'));var moment=require(_0x6eec('0x1'));var util=require(_0x6eec('0x2'));var Redis=require(_0x6eec('0x3'));var config=require('../../../config/environment');var logger=require(_0x6eec('0x4'))(_0x6eec('0x5'));var ami=require(_0x6eec('0x6'));config[_0x6eec('0x7')]=_[_0x6eec('0x8')](config[_0x6eec('0x7')],{'host':'localhost','port':0x18eb});var io=require(_0x6eec('0x9'))(new Redis(config[_0x6eec('0x7')]));function VoiceDialReport(_0x48064a){this[_0x6eec('0xa')]=_0x48064a[_0x6eec('0xb')];this[_0x6eec('0xc')]=_0x48064a[_0x6eec('0xc')];this['variables']={};ami['on'](_0x6eec('0xd'),this[_0x6eec('0xe')][_0x6eec('0xf')](this));ami['on']('dialend',this['syncDialEnd']['bind'](this));ami['on'](_0x6eec('0x10'),this[_0x6eec('0x11')]['bind'](this));ami['on']('hangup',this[_0x6eec('0x12')]['bind'](this));}VoiceDialReport[_0x6eec('0x13')][_0x6eec('0x14')]=function(_0x162db1){return _0x162db1!==null&&!_[_0x6eec('0x15')](_0x162db1);};VoiceDialReport[_0x6eec('0x13')]['emit']=function(_0x25e2a5,_0x3b2972,_0x462dbb){io['to'](_0x25e2a5)[_0x6eec('0x16')](_0x3b2972,_0x462dbb);};VoiceDialReport[_0x6eec('0x13')][_0x6eec('0xe')]=function(_0x345852){try{if(this[_0x6eec('0x14')](_0x345852)){if(this[_0x6eec('0xa')][_0x345852[_0x6eec('0x17')]]){_['merge'](this[_0x6eec('0xa')][_0x345852['uniqueid']],{'starttime':moment()[_0x6eec('0x18')](_0x6eec('0x19')),'lastevent':'called','interface':_0x345852[_0x6eec('0x1a')][_0x6eec('0x1b')](0x0,_0x345852[_0x6eec('0x1a')]['lastIndexOf']('-')),'membername':_0x345852[_0x6eec('0x1a')][_0x6eec('0x1b')](_0x345852[_0x6eec('0x1a')][_0x6eec('0x1c')]('/')+0x1,_0x345852[_0x6eec('0x1a')][_0x6eec('0x1c')]('-'))},_['omit'](_0x345852,[_0x6eec('0x1d'),_0x6eec('0x1e')]));this[_0x6eec('0x16')](_0x6eec('0x1f'),_0x6eec('0x20'),this[_0x6eec('0xa')][_0x345852['uniqueid']]);ami[_0x6eec('0x16')](_0x6eec('0x21'),this[_0x6eec('0xa')][_0x345852[_0x6eec('0x17')]]);}}}catch(_0x409b26){logger[_0x6eec('0x22')]('[syncDialBegin][VoiceDialReport]',util[_0x6eec('0x23')](_0x409b26,{'showHidden':![],'depth':null}));}};VoiceDialReport[_0x6eec('0x13')][_0x6eec('0x24')]=function(_0x33d580){try{if(this[_0x6eec('0x14')](_0x33d580)){if(this[_0x6eec('0xa')][_0x33d580[_0x6eec('0x17')]]){this[_0x6eec('0xa')][_0x33d580[_0x6eec('0x17')]]['dialstatus']=_0x33d580[_0x6eec('0x25')];if(_0x33d580[_0x6eec('0x25')]===_0x6eec('0x26')){this[_0x6eec('0xa')][_0x33d580['uniqueid']][_0x6eec('0x27')]=_0x33d580[_0x6eec('0x27')];this['channels'][_0x33d580['uniqueid']][_0x6eec('0x28')]=_0x33d580['connectedlinename'];this[_0x6eec('0xa')][_0x33d580[_0x6eec('0x17')]][_0x6eec('0x29')]=moment()[_0x6eec('0x18')](_0x6eec('0x19'));this[_0x6eec('0xa')][_0x33d580[_0x6eec('0x17')]][_0x6eec('0x2a')]=_0x6eec('0x2b');ami[_0x6eec('0x16')]('custom:dialconnect',this[_0x6eec('0xa')][_0x33d580['uniqueid']]);}this[_0x6eec('0x16')](_0x6eec('0x1f'),_0x6eec('0x20'),this['channels'][_0x33d580['uniqueid']]);}}}catch(_0x508735){logger[_0x6eec('0x22')](_0x6eec('0x2c'),util[_0x6eec('0x23')](_0x508735,{'showHidden':![],'depth':null}));}};VoiceDialReport[_0x6eec('0x13')][_0x6eec('0x11')]=function(_0x23547d){try{if(this[_0x6eec('0x14')](_0x23547d)){this[_0x6eec('0x2d')](_0x23547d[_0x6eec('0x17')],_[_0x6eec('0x2e')](_0x23547d[_0x6eec('0x2f')])[0x0],_0x23547d[_0x6eec('0x30')]);if(this['isNotNull'](_0x23547d[_0x6eec('0x2f')])&&this[_0x6eec('0x14')](_0x23547d[_0x6eec('0x2f')]['outboundrouteid'])){if(_[_0x6eec('0x15')](this[_0x6eec('0xa')][_0x23547d[_0x6eec('0x17')]])){this[_0x6eec('0xa')][_0x23547d[_0x6eec('0x17')]]={'routeId':_0x23547d[_0x6eec('0x30')],'variables':this['variables'][_0x23547d[_0x6eec('0x17')]]};this[_0x6eec('0x16')](_0x6eec('0x1f'),'voice_outbound_channel:save',this['channels'][_0x23547d[_0x6eec('0x17')]]);}}}}catch(_0x297f53){logger[_0x6eec('0x22')](_0x6eec('0x31'),util[_0x6eec('0x23')](_0x297f53,{'showHidden':![],'depth':null}));}};VoiceDialReport['prototype'][_0x6eec('0x2d')]=function(_0x2c3b14,_0x44118c,_0x2bf388){var _0x15918c=[_0x6eec('0x32'),_0x6eec('0x33'),_0x6eec('0x34'),'rtpaudioqosjitterbridged',_0x6eec('0x35'),_0x6eec('0x36'),'rtpaudioqosrtt','rtpaudioqosrttbridged',_0x6eec('0x37'),_0x6eec('0x38'),_0x6eec('0x39'),_0x6eec('0x3a'),'membercalls','memberdynamic',_0x6eec('0x3b'),'memberlastcall','membername',_0x6eec('0x3c'),_0x6eec('0x3d')];if(!_[_0x6eec('0x3e')](_0x44118c)&&!_[_0x6eec('0x3f')](_0x15918c,_0x44118c)){if(_[_0x6eec('0x15')](this['variables'][_0x2c3b14])){this[_0x6eec('0x40')][_0x2c3b14]={};}this[_0x6eec('0x40')][_0x2c3b14][_0x44118c]=_0x2bf388;}};VoiceDialReport['prototype'][_0x6eec('0x12')]=function(_0x241512){try{if(this['isNotNull'](_0x241512)){if(this[_0x6eec('0xa')][_0x241512[_0x6eec('0x17')]]){this['channels'][_0x241512[_0x6eec('0x17')]][_0x6eec('0x41')]=moment()[_0x6eec('0x18')](_0x6eec('0x19'));this['channels'][_0x241512[_0x6eec('0x17')]][_0x6eec('0x42')]=moment(this[_0x6eec('0xa')][_0x241512[_0x6eec('0x17')]][_0x6eec('0x41')])['diff'](this['channels'][_0x241512[_0x6eec('0x17')]][_0x6eec('0x43')],_0x6eec('0x44'));this[_0x6eec('0xa')][_0x241512[_0x6eec('0x17')]]['lastevent']=_0x6eec('0x45');this['outbound'][_0x6eec('0x46')]+=0x1;if(this[_0x6eec('0xa')][_0x241512[_0x6eec('0x17')]]['answertime']){this[_0x6eec('0xc')][_0x6eec('0x47')]+=0x1;this[_0x6eec('0xa')][_0x241512[_0x6eec('0x17')]][_0x6eec('0x48')]=moment(this['channels'][_0x241512[_0x6eec('0x17')]]['answertime'])['diff'](this[_0x6eec('0xa')][_0x241512['uniqueid']][_0x6eec('0x43')],_0x6eec('0x44'));this[_0x6eec('0xa')][_0x241512['uniqueid']]['billableseconds']=moment(this[_0x6eec('0xa')][_0x241512[_0x6eec('0x17')]][_0x6eec('0x41')])[_0x6eec('0x49')](this[_0x6eec('0xa')][_0x241512[_0x6eec('0x17')]][_0x6eec('0x29')],_0x6eec('0x44'));this[_0x6eec('0xc')][_0x6eec('0x4a')]+=this['channels'][_0x241512['uniqueid']][_0x6eec('0x48')]||0x0;this[_0x6eec('0xc')][_0x6eec('0x4b')]+=this['channels'][_0x241512[_0x6eec('0x17')]][_0x6eec('0x4c')];}this[_0x6eec('0xc')][_0x6eec('0x4d')]+=this[_0x6eec('0xa')][_0x241512[_0x6eec('0x17')]][_0x6eec('0x42')];ami[_0x6eec('0x16')]('custom:voiceDialReport',this[_0x6eec('0xa')][_0x241512[_0x6eec('0x17')]]);ami[_0x6eec('0x16')](_0x6eec('0x4e'),this['channels'][_0x241512['uniqueid']]);this['emit'](_0x6eec('0x1f'),_0x6eec('0x4f'),this[_0x6eec('0xc')]);logger[_0x6eec('0x50')]('[DEBUG]\x20Emit\x20voice_outbound_channel:remove\x20event',JSON['stringify'](this[_0x6eec('0xa')][_0x241512[_0x6eec('0x17')]]));this[_0x6eec('0x16')]('voice:outbound',_0x6eec('0x51'),this[_0x6eec('0xa')][_0x241512[_0x6eec('0x17')]]);delete this[_0x6eec('0xa')][_0x241512[_0x6eec('0x17')]];}if(this[_0x6eec('0x40')][_0x241512[_0x6eec('0x17')]]){delete this[_0x6eec('0x40')][_0x241512[_0x6eec('0x17')]];}}}catch(_0x4e921a){logger[_0x6eec('0x22')]('[syncHangup][VoiceDialReport]',util[_0x6eec('0x23')](_0x4e921a,{'showHidden':![],'depth':null}));}};module[_0x6eec('0x52')]=VoiceDialReport;
\ No newline at end of file
+var _0xface=['rtpaudioqosrtt','rtpaudioqosrttbridged','sipcallid','bridgepeer','bridgepvtcallid','membercalls','memberdynamic','memberinterface','memberlastcall','membername','memberpenalty','memberrealtime','isNil','includes','endtime','duration','diff','starttime','seconds','total','answered','holdtime','billableseconds','sumBillable','custom:voiceDialReport','custom:dialend','voice_outbound:save','info','[DEBUG]\x20Emit\x20voice_outbound_channel:remove\x20event','stringify','voice_outbound_channel:remove','[syncHangup][VoiceDialReport]','exports','moment','ioredis','../../../config/environment','../../../config/logger','ami','redis','localhost','socket.io-emitter','outboundChannels','outbound','variables','dialbegin','bind','syncDialEnd','varset','hangup','syncHangup','prototype','isNotNull','isUndefined','emit','syncDialBegin','channels','uniqueid','format','YYYY-MM-DD\x20HH:mm:ss','called','channel','lastIndexOf','event','privilege','voice:outbound','voice_outbound_channel:save','custom:dialbegin','error','[syncDialBegin][VoiceDialReport]','inspect','dialstatus','ANSWER','connectedlinenum','connectedlinename','answertime','lastevent','connect','syncVarSet','addVariable','keys','value','variable','outboundrouteid','[syncVarSet][VoiceDialReport]','rtpaudioqos','rtpaudioqosbridged','rtpaudioqosjitterbridged','rtpaudioqosloss','rtpaudioqoslossbridged'];(function(_0x32e649,_0x228649){var _0x14d386=function(_0x3fb3ed){while(--_0x3fb3ed){_0x32e649['push'](_0x32e649['shift']());}};_0x14d386(++_0x228649);}(_0xface,0x12c));var _0xefac=function(_0x3e4909,_0x2894c2){_0x3e4909=_0x3e4909-0x0;var _0x57518e=_0xface[_0x3e4909];return _0x57518e;};'use strict';var _=require('lodash');var moment=require(_0xefac('0x0'));var util=require('util');var Redis=require(_0xefac('0x1'));var config=require(_0xefac('0x2'));var logger=require(_0xefac('0x3'))(_0xefac('0x4'));var ami=require('../ami');config['redis']=_['defaults'](config[_0xefac('0x5')],{'host':_0xefac('0x6'),'port':0x18eb});var io=require(_0xefac('0x7'))(new Redis(config[_0xefac('0x5')]));function VoiceDialReport(_0x5db987){this['channels']=_0x5db987[_0xefac('0x8')];this[_0xefac('0x9')]=_0x5db987['outbound'];this[_0xefac('0xa')]={};ami['on'](_0xefac('0xb'),this['syncDialBegin'][_0xefac('0xc')](this));ami['on']('dialend',this[_0xefac('0xd')][_0xefac('0xc')](this));ami['on'](_0xefac('0xe'),this['syncVarSet']['bind'](this));ami['on'](_0xefac('0xf'),this[_0xefac('0x10')]['bind'](this));}VoiceDialReport[_0xefac('0x11')][_0xefac('0x12')]=function(_0x4e5060){return _0x4e5060!==null&&!_[_0xefac('0x13')](_0x4e5060);};VoiceDialReport[_0xefac('0x11')]['emit']=function(_0x498839,_0x2833c1,_0x2b67d2){io['to'](_0x498839)[_0xefac('0x14')](_0x2833c1,_0x2b67d2);};VoiceDialReport['prototype'][_0xefac('0x15')]=function(_0x187ec7){try{if(this[_0xefac('0x12')](_0x187ec7)){if(this[_0xefac('0x16')][_0x187ec7[_0xefac('0x17')]]){_['merge'](this[_0xefac('0x16')][_0x187ec7[_0xefac('0x17')]],{'starttime':moment()[_0xefac('0x18')](_0xefac('0x19')),'lastevent':_0xefac('0x1a'),'interface':_0x187ec7[_0xefac('0x1b')]['substring'](0x0,_0x187ec7[_0xefac('0x1b')][_0xefac('0x1c')]('-')),'membername':_0x187ec7[_0xefac('0x1b')]['substring'](_0x187ec7['channel']['lastIndexOf']('/')+0x1,_0x187ec7[_0xefac('0x1b')][_0xefac('0x1c')]('-'))},_['omit'](_0x187ec7,[_0xefac('0x1d'),_0xefac('0x1e')]));this['emit'](_0xefac('0x1f'),_0xefac('0x20'),this[_0xefac('0x16')][_0x187ec7['uniqueid']]);ami[_0xefac('0x14')](_0xefac('0x21'),this[_0xefac('0x16')][_0x187ec7[_0xefac('0x17')]]);}}}catch(_0x38b645){logger[_0xefac('0x22')](_0xefac('0x23'),util[_0xefac('0x24')](_0x38b645,{'showHidden':![],'depth':null}));}};VoiceDialReport['prototype'][_0xefac('0xd')]=function(_0x18b5bc){try{if(this[_0xefac('0x12')](_0x18b5bc)){if(this[_0xefac('0x16')][_0x18b5bc[_0xefac('0x17')]]){this[_0xefac('0x16')][_0x18b5bc[_0xefac('0x17')]][_0xefac('0x25')]=_0x18b5bc[_0xefac('0x25')];if(_0x18b5bc[_0xefac('0x25')]===_0xefac('0x26')){this[_0xefac('0x16')][_0x18b5bc[_0xefac('0x17')]]['connectedlinenum']=_0x18b5bc[_0xefac('0x27')];this[_0xefac('0x16')][_0x18b5bc[_0xefac('0x17')]][_0xefac('0x28')]=_0x18b5bc[_0xefac('0x28')];this[_0xefac('0x16')][_0x18b5bc[_0xefac('0x17')]][_0xefac('0x29')]=moment()[_0xefac('0x18')](_0xefac('0x19'));this[_0xefac('0x16')][_0x18b5bc[_0xefac('0x17')]][_0xefac('0x2a')]=_0xefac('0x2b');ami[_0xefac('0x14')]('custom:dialconnect',this[_0xefac('0x16')][_0x18b5bc['uniqueid']]);}this[_0xefac('0x14')](_0xefac('0x1f'),_0xefac('0x20'),this[_0xefac('0x16')][_0x18b5bc[_0xefac('0x17')]]);}}}catch(_0x332b9f){logger[_0xefac('0x22')]('[syncDialEnd][VoiceDialReport]',util[_0xefac('0x24')](_0x332b9f,{'showHidden':![],'depth':null}));}};VoiceDialReport[_0xefac('0x11')][_0xefac('0x2c')]=function(_0x173e46){try{if(this[_0xefac('0x12')](_0x173e46)){this[_0xefac('0x2d')](_0x173e46[_0xefac('0x17')],_[_0xefac('0x2e')](_0x173e46['variable'])[0x0],_0x173e46[_0xefac('0x2f')]);if(this[_0xefac('0x12')](_0x173e46['variable'])&&this[_0xefac('0x12')](_0x173e46[_0xefac('0x30')][_0xefac('0x31')])){if(_[_0xefac('0x13')](this['channels'][_0x173e46[_0xefac('0x17')]])){this[_0xefac('0x16')][_0x173e46[_0xefac('0x17')]]={'routeId':_0x173e46[_0xefac('0x2f')],'variables':this['variables'][_0x173e46['uniqueid']]};this['emit']('voice:outbound',_0xefac('0x20'),this['channels'][_0x173e46[_0xefac('0x17')]]);}}}}catch(_0x44931d){logger[_0xefac('0x22')](_0xefac('0x32'),util[_0xefac('0x24')](_0x44931d,{'showHidden':![],'depth':null}));}};VoiceDialReport[_0xefac('0x11')][_0xefac('0x2d')]=function(_0xe3870c,_0x2147a4,_0x2ce2b5){var _0x2c9a60=[_0xefac('0x33'),_0xefac('0x34'),'rtpaudioqosjitter',_0xefac('0x35'),_0xefac('0x36'),_0xefac('0x37'),_0xefac('0x38'),_0xefac('0x39'),_0xefac('0x3a'),'sipuri',_0xefac('0x3b'),_0xefac('0x3c'),_0xefac('0x3d'),_0xefac('0x3e'),_0xefac('0x3f'),_0xefac('0x40'),_0xefac('0x41'),_0xefac('0x42'),_0xefac('0x43')];if(!_[_0xefac('0x44')](_0x2147a4)&&!_[_0xefac('0x45')](_0x2c9a60,_0x2147a4)){if(_[_0xefac('0x13')](this['variables'][_0xe3870c])){this[_0xefac('0xa')][_0xe3870c]={};}this[_0xefac('0xa')][_0xe3870c][_0x2147a4]=_0x2ce2b5;}};VoiceDialReport['prototype'][_0xefac('0x10')]=function(_0x40925d){try{if(this[_0xefac('0x12')](_0x40925d)){if(this[_0xefac('0x16')][_0x40925d['uniqueid']]){this[_0xefac('0x16')][_0x40925d[_0xefac('0x17')]][_0xefac('0x46')]=moment()[_0xefac('0x18')](_0xefac('0x19'));this['channels'][_0x40925d[_0xefac('0x17')]][_0xefac('0x47')]=moment(this['channels'][_0x40925d['uniqueid']]['endtime'])[_0xefac('0x48')](this[_0xefac('0x16')][_0x40925d[_0xefac('0x17')]][_0xefac('0x49')],_0xefac('0x4a'));this[_0xefac('0x16')][_0x40925d['uniqueid']][_0xefac('0x2a')]='complete';this[_0xefac('0x9')][_0xefac('0x4b')]+=0x1;if(this[_0xefac('0x16')][_0x40925d[_0xefac('0x17')]]['answertime']){this[_0xefac('0x9')][_0xefac('0x4c')]+=0x1;this['channels'][_0x40925d[_0xefac('0x17')]][_0xefac('0x4d')]=moment(this[_0xefac('0x16')][_0x40925d[_0xefac('0x17')]][_0xefac('0x29')])[_0xefac('0x48')](this[_0xefac('0x16')][_0x40925d[_0xefac('0x17')]][_0xefac('0x49')],'seconds');this['channels'][_0x40925d[_0xefac('0x17')]][_0xefac('0x4e')]=moment(this[_0xefac('0x16')][_0x40925d[_0xefac('0x17')]][_0xefac('0x46')])['diff'](this[_0xefac('0x16')][_0x40925d[_0xefac('0x17')]]['answertime'],_0xefac('0x4a'));this[_0xefac('0x9')]['sumHoldTime']+=this['channels'][_0x40925d[_0xefac('0x17')]]['holdtime']||0x0;this[_0xefac('0x9')][_0xefac('0x4f')]+=this['channels'][_0x40925d[_0xefac('0x17')]][_0xefac('0x4e')];}this[_0xefac('0x9')]['sumDuration']+=this[_0xefac('0x16')][_0x40925d[_0xefac('0x17')]]['duration'];ami['emit'](_0xefac('0x50'),this[_0xefac('0x16')][_0x40925d[_0xefac('0x17')]]);ami['emit'](_0xefac('0x51'),this['channels'][_0x40925d[_0xefac('0x17')]]);this['emit'](_0xefac('0x1f'),_0xefac('0x52'),this[_0xefac('0x9')]);logger[_0xefac('0x53')](_0xefac('0x54'),JSON[_0xefac('0x55')](this[_0xefac('0x16')][_0x40925d[_0xefac('0x17')]]));this[_0xefac('0x14')]('voice:outbound',_0xefac('0x56'),this['channels'][_0x40925d[_0xefac('0x17')]]);delete this[_0xefac('0x16')][_0x40925d['uniqueid']];}if(this[_0xefac('0xa')][_0x40925d[_0xefac('0x17')]]){delete this['variables'][_0x40925d[_0xefac('0x17')]];}}}catch(_0x8041a1){logger['error'](_0xefac('0x57'),util['inspect'](_0x8041a1,{'showHidden':![],'depth':null}));}};module[_0xefac('0x58')]=VoiceDialReport;
\ No newline at end of file