Files
webrtc/configuration_js.go
T
sirzooro 332878fa2c AlwaysNegotiateDataChannels configuration flag
This change implements a new Configuration.AlwaysNegotiateDataChannels
flag that forces an "application" (data/SCTP) media section to be
present in SDP offers even before any DataChannel is created.

This is implementation of WebRTC Extensions section 15, "Always
negotiating data channels".
2026-01-22 18:07:20 +01:00

46 lines
1.5 KiB
Go

// SPDX-FileCopyrightText: 2026 The Pion community <https://pion.ly>
// SPDX-License-Identifier: MIT
//go:build js && wasm
// +build js,wasm
package webrtc
// Configuration defines a set of parameters to configure how the
// peer-to-peer communication via PeerConnection is established or
// re-established.
type Configuration struct {
// ICEServers defines a slice describing servers available to be used by
// ICE, such as STUN and TURN servers.
ICEServers []ICEServer
// ICETransportPolicy indicates which candidates the ICEAgent is allowed
// to use.
ICETransportPolicy ICETransportPolicy
// BundlePolicy indicates which media-bundling policy to use when gathering
// ICE candidates.
BundlePolicy BundlePolicy
// RTCPMuxPolicy indicates which rtcp-mux policy to use when gathering ICE
// candidates.
RTCPMuxPolicy RTCPMuxPolicy
// PeerIdentity sets the target peer identity for the PeerConnection.
// The PeerConnection will not establish a connection to a remote peer
// unless it can be successfully authenticated with the provided name.
PeerIdentity string
// Certificates are not supported in the JavaScript/Wasm bindings.
// Certificates []Certificate
// ICECandidatePoolSize describes the size of the prefetched ICE pool.
ICECandidatePoolSize uint8
// AlwaysNegotiateDataChannels specifies whether the application prefers
// to always negotiate data channels in the initial SDP offer.
AlwaysNegotiateDataChannels bool
Certificates []Certificate `json:"certificates,omitempty"`
}