RTCDataChannel.onbufferedamountlow

This is an experimental technology
Check the Browser compatibility table carefully before using this in production.

The RTCDataChannel.onbufferedamountlow property is an EventHandler which specifies a function the browser calls when the bufferedamountlow event is sent to the RTCDataChannel. This event, which is represented by a simple Event object, is sent when the amount of data buffered to be sent falls to or below the threshold specified by the channel's bufferedAmountLowThreshold.

See Buffering in Using WebRTC data channels to learn more about how to work with the data channel buffer.

Syntax

RTCDataChannel.onbufferedamountlow = function;

Value

A function which the browser will call to handle the bufferedamountlow event. This function receives as its only input parameter a simple Event object representing the event which has occurred.

Example

This example responds to the bufferedamountlow event by fetching up to 64kB of a file represented by an object source and calling RTCDataChannel.send() to queue up the retrieved data for sending on the data channel.

pc = new RTCPeerConnection();
dc = pc.createDataChannel("SendFile");

/* ... */

pc.onbufferedamountlow = function() {
  if (source.position <= source.length) {
    dc.send(source.readFile(65536));
  }
}

Specifications

Specification Status Comment
WebRTC 1.0: Real-time Communication Between Browsers
The definition of 'RTCDataChannel.onbufferedamountlow' in that specification.
Candidate Recommendation Initial specification.

Browser compatibility

Update compatibility data on GitHub
DesktopMobile
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewChrome for AndroidEdge MobileFirefox for AndroidOpera for AndroidSafari on iOSSamsung Internet
Basic support
Experimental
Chrome Full support 57
Notes
Full support 57
Notes
Notes The default for rtcpMuxPolicy is require.
Edge ? Firefox ? IE ? Opera Full support 44
Notes
Full support 44
Notes
Notes The default for rtcpMuxPolicy is require.
Safari ? WebView Android Full support 57
Notes
Full support 57
Notes
Notes The default for rtcpMuxPolicy is require.
Chrome Android Full support 57
Notes
Full support 57
Notes
Notes The default for rtcpMuxPolicy is require.
Edge Mobile ? Firefox Android ? Opera Android Full support 44
Notes
Full support 44
Notes
Notes The default for rtcpMuxPolicy is require.
Safari iOS ? Samsung Internet Android Full support 7.0

Legend

Full support  
Full support
Compatibility unknown  
Compatibility unknown
Experimental. Expect behavior to change in the future.
Experimental. Expect behavior to change in the future.
See implementation notes.
See implementation notes.

Document Tags and Contributors

Contributors to this page: fscholz, jpmedley, Sheppy, rolfedh
Last updated by: fscholz,