docs: function RTCInboundRTPStreamStats(rTCInboundRTPStreamStatsDict){
    if(!(this instanceof RTCInboundRTPStreamStats))
      return new RTCInboundRTPStreamStats(rTCInboundRTPStreamStatsDict)
  
    // Check rTCInboundRTPStreamStatsDict has the required fields
    checkType('int', 'rTCInboundRTPStreamStatsDict.packetsReceived', rTCInboundRTPStreamStatsDict.packetsReceived, {required: true});
    checkType('int', 'rTCInboundRTPStreamStatsDict.bytesReceived', rTCInboundRTPStreamStatsDict.bytesReceived, {required: true});
    checkType('int', 'rTCInboundRTPStreamStatsDict.packetsLost', rTCInboundRTPStreamStatsDict.packetsLost, {required: true});
    checkType('float', 'rTCInboundRTPStreamStatsDict.jitter', rTCInboundRTPStreamStatsDict.jitter, {required: true});
    checkType('float', 'rTCInboundRTPStreamStatsDict.fractionLost', rTCInboundRTPStreamStatsDict.fractionLost, {required: true});
  
    // Init parent class
    RTCInboundRTPStreamStats.super_.call(this, rTCInboundRTPStreamStatsDict)
  
    // Set object properties
    Object.defineProperties(this, {
      packetsReceived: {
        writable: true,
        enumerable: true,
        value: rTCInboundRTPStreamStatsDict.packetsReceived
      },
      bytesReceived: {
        writable: true,
        enumerable: true,
        value: rTCInboundRTPStreamStatsDict.bytesReceived
      },
      packetsLost: {
        writable: true,
        enumerable: true,
        value: rTCInboundRTPStreamStatsDict.packetsLost
      },
      jitter: {
        writable: true,
        enumerable: true,
        value: rTCInboundRTPStreamStatsDict.jitter
      },
      fractionLost: {
        writable: true,
        enumerable: true,
        value: rTCInboundRTPStreamStatsDict.fractionLost
      }
    })
  }