lib/complexTypes/EndpointStats.js
function EndpointStats(endpointStatsDict){
  if(!(this instanceof EndpointStats))
    return new EndpointStats(endpointStatsDict)

  endpointStatsDict = endpointStatsDict || {}

  // Check endpointStatsDict has the required fields
  // 
  // checkType('double', 'endpointStatsDict.audioE2ELatency', endpointStatsDict.audioE2ELatency, {required: true});
  //  
  // checkType('double', 'endpointStatsDict.videoE2ELatency', endpointStatsDict.videoE2ELatency, {required: true});
  //  
  // checkType('MediaLatencyStat', 'endpointStatsDict.E2ELatency', endpointStatsDict.E2ELatency, {isArray: true, required: true});
  //  

  // Init parent class
  EndpointStats.super_.call(this, endpointStatsDict)

  // Set object properties
  Object.defineProperties(this, {
    audioE2ELatency: {
      writable: true,
      enumerable: true,
      value: endpointStatsDict.audioE2ELatency
    },
    videoE2ELatency: {
      writable: true,
      enumerable: true,
      value: endpointStatsDict.videoE2ELatency
    },
    E2ELatency: {
      writable: true,
      enumerable: true,
      value: endpointStatsDict.E2ELatency
    }
  })
}
function EndpointStats(endpointStatsDict){
  if(!(this instanceof EndpointStats))
    return new EndpointStats(endpointStatsDict)

  endpointStatsDict = endpointStatsDict || {}

  // Check endpointStatsDict has the required fields
  // 
  // checkType('double', 'endpointStatsDict.audioE2ELatency', endpointStatsDict.audioE2ELatency, {required: true});
  //  
  // checkType('double', 'endpointStatsDict.videoE2ELatency', endpointStatsDict.videoE2ELatency, {required: true});
  //  
  // checkType('MediaLatencyStat', 'endpointStatsDict.E2ELatency', endpointStatsDict.E2ELatency, {isArray: true, required: true});
  //  

  // Init parent class
  EndpointStats.super_.call(this, endpointStatsDict)

  // Set object properties
  Object.defineProperties(this, {
    audioE2ELatency: {
      writable: true,
      enumerable: true,
      value: endpointStatsDict.audioE2ELatency
    },
    videoE2ELatency: {
      writable: true,
      enumerable: true,
      value: endpointStatsDict.videoE2ELatency
    },
    E2ELatency: {
      writable: true,
      enumerable: true,
      value: endpointStatsDict.E2ELatency
    }
  })
}
function EndpointStats ( endpointStatsDict ) { if ( ! ( this instanceof EndpointStats ) ) return new EndpointStats ( endpointStatsDict ) endpointStatsDict = endpointStatsDict || { } // Check endpointStatsDict has the required fields //  // checkType('double', 'endpointStatsDict.audioE2ELatency', endpointStatsDict.audioE2ELatency, {required: true}); //   // checkType('double', 'endpointStatsDict.videoE2ELatency', endpointStatsDict.videoE2ELatency, {required: true}); //   // checkType('MediaLatencyStat', 'endpointStatsDict.E2ELatency', endpointStatsDict.E2ELatency, {isArray: true, required: true}); //   // Init parent class EndpointStats . super_ . call ( this , endpointStatsDict ) // Set object properties Object . defineProperties ( this , { audioE2ELatency : { writable : true , enumerable : true , value : endpointStatsDict . audioE2ELatency } , videoE2ELatency : { writable : true , enumerable : true , value : endpointStatsDict . videoE2ELatency } , E2ELatency : { writable : true , enumerable : true , value : endpointStatsDict . E2ELatency } } ) }
A dictionary that represents the stats gathered in the endpoint element.

@constructor module:core/complexTypes.EndpointStats

@property {external:double} audioE2ELatency
@deprecated
End-to-end audio latency measured in nano seconds
@property {external:double} videoE2ELatency
@deprecated
End-to-end video latency measured in nano seconds
@property {module:core/complexTypes.MediaLatencyStat} E2ELatency
The average end to end latency for each media stream measured in nano
seconds

@extends module:core.ElementStats
A dictionary that represents the stats gathered in the endpoint element .