A shim to insulate apps from WebRTC spec changes and browser prefix differences
Overall
score
98%
{
"context": "This evaluation assesses how well the engineer uses webrtc-adapter's DTMF support capabilities to send touch-tone signals over WebRTC audio connections. The focus is on proper usage of the RTCRtpSender.dtmf property, RTCDTMFSender interface, and understanding audio-only DTMF sender creation.",
"type": "weighted_checklist",
"checklist": [
{
"name": "Import webrtc-adapter",
"description": "Code imports the webrtc-adapter package to enable cross-browser DTMF support",
"max_score": 10
},
{
"name": "RTCPeerConnection creation",
"description": "Creates an RTCPeerConnection instance for establishing the WebRTC connection",
"max_score": 10
},
{
"name": "Audio track addition",
"description": "Adds an audio track to the peer connection using addTrack() method, which is required for DTMF functionality",
"max_score": 15
},
{
"name": "Access RTCRtpSender.dtmf",
"description": "Accesses the dtmf property on the RTCRtpSender to obtain the RTCDTMFSender instance",
"max_score": 20
},
{
"name": "Check DTMF availability",
"description": "Checks if the dtmf property is null or not null to determine DTMF sender availability (null for non-audio tracks, non-null for audio tracks)",
"max_score": 15
},
{
"name": "Use insertDTMF method",
"description": "Calls the insertDTMF() method on the RTCDTMFSender to send DTMF tones",
"max_score": 20
},
{
"name": "Configure timing parameters",
"description": "Passes duration and interToneGap parameters to insertDTMF() to control tone timing (e.g., insertDTMF(tones, duration, interToneGap))",
"max_score": 10
}
]
}Install with Tessl CLI
npx tessl i tessl/npm-webrtc-adapterdocs
evals
scenario-1
scenario-2
scenario-3
scenario-4
scenario-5
scenario-6
scenario-7
scenario-8
scenario-9
scenario-10