Tags: ObserveRTC/client-monitor-js
Tags
3.11.0 (#34) ## 3.11.0 * Added `durationOfCollectingStatsInMs` to the `stats-collected` event. * Set the default sensitivity for `CongestionDetector` to `medium`. * Changed the default value for `fractionalCorrectionAlertOnThreshold` to 0.3 in `AudioDesyncDetector`. * Changed the default value for `fractionalCorrectionAlertOffThreshold` to 0.15 in `AudioDesyncDetector`. * Added `FpsVolatilityModule` to the CPU Performance Detector. * Added `StatsCollectingSkewModule` to the CPU Performance Detector. * Made Mediasoup stats collector compatible with version 3.7.16. * Renamed `Mediasoup[*]Surrogate` interfaces to `MediasoupStatsCollector[*]Interface`. * Exposed the `MediasoupStatsCollectorDeviceInterface` interface. * Fixed `ewmaRttInS` calculation in `PeerConnectionStatsCollector`. * Added `LayersChangedDetector` for experimental purposes. * Added `pcConnectionState` to the `PEER_CONNECTION_STATE_CHANGED` event. * Added `fpsVolatility` as a property to `inboundRtpEntry`.
3.7.0 (#28) * 3.7.0 * add `setUserId` * typofix for stats * add `VideoFreezesDetector` * add `layers` property to outbound track stats * add `usermediaerror` event * add `usingTURN` property to peer conections * add `using-turn` event to monitor * add `sendingFractionLost` to monitor * add `receivingFractionLost` to monitor
Develop `3.4.0` (#21) * bugfix for `NaN` fractionLoss * surface `monitor.storage[statsType()]` iterators to `monitor` level (e.g.: instead of (`monitor.storage.outboundRtps()` you can use `monitor.outboundRtps`) * remove the async update for storage * remove generator functions to surface iterators from storage
Develop version 3.0.0 (#16) * refactored collectors and sampler * `clientMontior.os` is moved to `clientMonitor.meta.operationSystem` * `clientMontior.engine` is moved to `clientMonitor.meta.engine` * `clientMontior.browser` is moved to `clientMonitor.meta.browser` * `clientMontior.audioInputs` is moved to `clientMonitor.meta.audioInputs` * `clientMontior.audioOutputs` is moved to `clientMonitor.meta.audioOutputs` * `clientMontior.videoInputs` is moved to `clientMonitor.meta.videoInputs` * `clientMonitor.alerts` is removed, `clientMonitor.audioDesyncDetector`, `clientMonitor.cpuPerformanceDetector`, and `clientMonitor.congestionDetector` * all `updates` fields in storage entries are moved to the entries of the `storage` * `metrics` field is removed `elapsedSinceLastCollectInMs` and `elapsedSinceLastSampleInMs` is added to the `stats-collected`, and `sample-created` events * refactored mediasoup-collector * add events are collected automatically * simplified configuration, and detectors configurations are moved to create detectors
Version 2.0.0 (#13) ### Conceptual changes * The ClientMonitor is no longer responsible for WebSocket connections, signaling, and transports. * The ClientMonitor has become responsible for the following event emissions: - PEER_CONNECTION_OPENED, PEER_CONNECTION_CLOSED - MEDIA_TRACK_ADDED, MEDIA_TRACK_REMOVED - ICE_CONNECTION_STATE_CHANGED * Specific collectors can add additional call events. For example, mediasoup adds PRODUCER_PAUSED, PRODUCER_RESUMED, CONSUMER_PAUSED, CONSUMER_RESUMED events. * ClientMonitor calculate derived metrics such as sending, and receiving bitrates, total sent and received packets. ### Major Code changes * Removed Sender component and corresponding configuration from ClientMonitor. * Removed Transport component, as sending and transporting no longer fall under the responsibility of the ClientMonitor. * Storage StatsEntries `id` is renamed to `statsId`. * PeerConnectionEntry `collectorId` is renamed to `id`, and `collectorLabel` to `label`. * Removed `setUserId`, `setCallId`, `setClientId`, `setRoomId`, and `marker` from ClientMonitor, as this information should be used for context creation on the server side, which falls under the responsibility of signaling. * Removed `events` field from ClientMonitor, as events have become part of the ClientMonitor itself, and ClientMonitor now provides `on`, `off`, `once` interfaces for events. ### Functionality changes * Stats are removed based on visited ids in getStats. If a stat is no longer present in the getStats extracted result, it is removed from the Storage. ### Configuration changes * Sampler configuration is reduced. * Sender configuration is removed. * `statsExpirationTimeInMs` is removed. * `createCallEvents` is added.
PreviousNext