Web/API/RTCDataChannel/onbufferedamountlow

From Get docs

This is an experimental technologyCheck 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");

/* ... */

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

Specifications

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

Browser compatibility

Update compatibility data on GitHub

Desktop Mobile
Chrome Edge Firefox Internet Explorer Opera Safari Android webview Chrome for Android Firefox for Android Opera for Android Safari on iOS Samsung Internet

onbufferedamountlow

Experimental'

Chrome Full support 57

Notes'

Full support 57

Notes'

Notes' The default for rtcpMuxPolicy is require.

Edge Full support ≤79

Notes'

Full support ≤79

Notes'

Notes' The default for rtcpMuxPolicy is require.

Firefox

Full support Yes

IE

No support No

Opera Full support 44

Notes'

Full support 44

Notes'

Notes' The default for rtcpMuxPolicy is require.

Safari

Full support Yes

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.

Firefox Android

Full support Yes

Opera Android Full support 43

Notes'

Full support 43

Notes'

Notes' The default for rtcpMuxPolicy is require.

Safari iOS

No support No

Samsung Internet Android Full support 7.0

Notes'

Full support 7.0

Notes'

Notes' The default for rtcpMuxPolicy is require.

Legend

Full support  
Full support
No support  
No support
Experimental. Expect behavior to change in the future.'
Experimental. Expect behavior to change in the future.
See implementation notes.'
See implementation notes.