Skip to content

2.0.0

Compare
Choose a tag to compare
@balazskreith balazskreith released this 15 Apr 07:05
· 32 commits to master since this release
41c6bcb

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.