Firefox Tomorrow

web api instance method

WebTransport: createSendGroup() method

View on MDN ↗

Secure context Available in workersLimited availability

The createSendGroup() method of the WebTransport interface creates and returns a WebTransportSendGroup.

Syntax

createSendGroup()

Parameters

None.

Return value

A WebTransportSendGroup object.

Exceptions

  • InvalidStateError DOMException
    • : Thrown if the transport’s state is "closed" or "failed".

Description

The createSendGroup() method creates a new WebTransportSendGroup associated with the WebTransport object on which it is called.

The WebTransportSendGroup object is used to group streams and/or datagrams created on the same WebTransport, to control their relative priority for sending queued bytes. Within the same group, bytes on higher-priority streams and datagrams are sent before bytes from lower-priority ones.

The returned WebTransportSendGroup is not initially associated with any streams or datagrams. You can associate it with a WebTransportDatagramsWritable or WebTransportSendStream object in a couple of different ways:

Different groups are expected to be treated as equals for the purposes of bandwidth allocation — though the precise way bandwidth is divided between groups is implementation-defined.

Examples

Basic usage

This example creates a send group, then associates a unidirectional stream and the connection’s outgoing datagram stream with it, giving each a sendOrder that defines their relative priority.

const sendGroup = transport.createSendGroup();

const stream = await transport.createUnidirectionalStream({
  sendGroup,
  sendOrder: 1,
});

// Higher sendOrder: queued bytes on this stream are sent first
const datagrams = transport.datagrams.createWritable({
  sendGroup,
  sendOrder: 2,
});

Specifications

SpecificationsStandards references are available on the canonical MDN page.

Browser compatibility

Browser compatibilityCompatibility data is available on the canonical MDN page.

See also