A shim to insulate apps from WebRTC spec changes and browser prefix differences
Overall
score
98%
negotiationneeded event timing fix (Chrome)
Imports webrtc-adapter
100%
100%
Uses adapter shimming
100%
100%
Event handler registration
100%
100%
Signaling state check
100%
100%
Event suppression logic
100%
100%
Callback invocation
100%
100%
getUserMedia API normalization
Adapter Import
100%
100%
Navigator getUserMedia Usage
100%
100%
Audio Processing Constraints
100%
100%
FacingMode Constraint
100%
100%
Error Handling
100%
100%
Stream Validation
70%
60%
Browser detection and version extraction
Uses adapter.browserDetails
0%
100%
Returns browser property
0%
100%
Returns version property
0%
100%
Uses adapter.extractVersion
40%
100%
Correct parameter passing
100%
100%
Proper return handling
80%
100%
Legacy Stream API support
getLocalStreams() usage
100%
100%
getRemoteStreams() usage
100%
100%
onaddstream event
100%
100%
Stream counting
100%
100%
RTP sender and receiver stats
Sender getStats usage
100%
100%
Receiver getStats usage
100%
100%
Empty state handling
100%
100%
Browser-specific data channel message size calculation
Uses sctp.maxMessageSize
100%
100%
Handles null/undefined
100%
100%
Handles size comparison
100%
100%
Calculates message bytes
100%
100%
Implements chunking logic
100%
100%
RTCSessionDescription and SDP handling
createOffer usage
100%
100%
setLocalDescription call
100%
100%
Plain object handling
100%
100%
setRemoteDescription call
100%
100%
Returns SDP string
100%
100%
DTMF support
Import webrtc-adapter
100%
100%
RTCPeerConnection creation
0%
50%
Audio track addition
100%
100%
Access RTCRtpSender.dtmf
100%
75%
Check DTMF availability
100%
80%
Use insertDTMF method
100%
100%
Configure timing parameters
100%
100%
Automatic shim application
Import adapter
100%
100%
Use browserDetails
100%
100%
Check RTCPeerConnection
100%
100%
Check getUserMedia
100%
100%
Check RTCSessionDescription
100%
100%
Check RTCIceCandidate
100%
100%
Return correct structure
100%
100%
Connection state management
Adapter Import
100%
100%
ConnectionState Access
100%
100%
IceConnectionState Mapping
100%
100%
Event Listener Setup
100%
100%
State Change Detection
100%
100%
Install with Tessl CLI
npx tessl i tessl/npm-webrtc-adapterTable of Contents