Class ConnectionHealthPolicyConfiguration

Constructors

Properties

concurrentVideoSendersThreshold: number = 15

Number of concurrent video senders to trigger video codec degradation from VP9/AV1 in video encoding health monitoring.

connectionUnhealthyThreshold: number = 25
connectionWaitTimeMs: number = 10000
consecutiveHighEncodeCpuThreshold: number = 10

Consecutive seconds of high encode CPU to trigger video codec degradation in video encoding health monitoring. Increasing the value results in less sensitive video codec degradaion and vice versa.

consecutiveVideoEncodingFailureThreshold: number = 5

Consecutive seconds of zero encoded framerate to trigger video codec degradation in video encoding health monitoring. Increasing the value results in less sensitive video codec degradaion and vice versa.

cooldownTimeMs: number = 60000
fiveBarsTimeMs: number = 60000
fourBarsTimeMs: number = 20000
fractionalLoss: number = 0.5
goodSignalTimeMs: number = 15000
highEncodeCpuMsPerFrameThreshold: number = 15

Encode time per frame threshold to determine high CPU usage of software encoders in video encoding health monitoring. Recuding the value results in video codec degradation due to high CPU usage software encoder to be triggered at a lower CPU usage. Note that encoder counts each SVC spatial layer of a frame as an encoded frame. The magnification in framerate should be considered when configuring this parameter with SVC enabled.

highEncodeCpuMsThreshold: number = 500

Encode time threshold to determine high CPU usage of software encoders in video encoding health monitoring. Recuding the value results in video codec degradation due to high CPU usage software encoder to be triggered at a lower CPU usage.

initialHealth: number = 1
maxHealth: number = 1
maximumAudioDelayDataPoints: number = 10
maximumAudioDelayMs: number = 60000
maximumTimesToWarn: number = 2
minHealth: number = 0
missedPongsLowerThreshold: number = 1
missedPongsUpperThreshold: number = 4
noSignalThresholdTimeMs: number = 10000
oneBarWeakSignalTimeMs: number = 5000
packetsExpected: number = 50
pastSamplesToConsider: number = 15
sendingAudioFailureInitialWaitTimeMs: number = 3000

The purpose of this field is to add a wait time/delay to our evaluation of sending audio health as the microphone may sometimes cause a delay in sending audio packets during the initial stages of a connection.

sendingAudioFailureSamplesToConsider: number = 2

The number of samples required to consider sending-audio to be unhealthy

The default value is derived from the median for time taken for receiving an attendee presence message from the server after joining. Attendee presence is only received when the client sends audio packets to the server, so this metric is used as a proxy.

threeBarsTimeMs: number = 10000
twoBarsTimeMs: number = 5000
videoEncodingHealthPolicies: (
    | typeof VideoEncodingConcurrentSendersHealthPolicy
    | typeof VideoEncodingCpuConnectionHealthPolicy
    | typeof VideoEncodingFramerateConnectionHealthPolicy
)[] = ...

Policies and parameters related to video encoding health montoring

zeroBarsNoSignalTimeMs: number = 5000