description

# RtcPeerConnection class

Inheritance
  - Object
  - EventTarget
  - RtcPeerConnection
Annotations
  - @SupportedBrowser.new(SupportedBrowser.CHROME)
  - @Native.new("RTCPeerConnection,webkitRTCPeerConnection,mozRTCPeerConnection")

## Constructors

RtcPeerConnection(Map rtcIceServers, [Map? mediaConstraints])
  factory

## Properties

connectionState → String?
  no setter
hashCode → int
  The hash code for this object.
  no setter inherited
iceConnectionState → String?
  no setter
iceGatheringState → String?
  no setter
localDescription → RtcSessionDescription?
  no setter
on → Events
  This is an ease-of-use accessor for event streams which should only be used when an explicit accessor is not available.
  no setter inherited
onAddStream → Stream<MediaStreamEvent>
  Stream of `addstream` events handled by this RtcPeerConnection.
  no setter
onConnectionStateChange → Stream<Event>
  Stream of `connectionstatechange` events handled by this RtcPeerConnection.
  no setter
onDataChannel → Stream<RtcDataChannelEvent>
  Stream of `datachannel` events handled by this RtcPeerConnection.
  no setter
onIceCandidate → Stream<RtcPeerConnectionIceEvent>
  Stream of `icecandidate` events handled by this RtcPeerConnection.
  no setter
onIceConnectionStateChange → Stream<Event>
  Stream of `iceconnectionstatechange` events handled by this RtcPeerConnection.
  no setter
onNegotiationNeeded → Stream<Event>
  Stream of `negotiationneeded` events handled by this RtcPeerConnection.
  no setter
onRemoveStream → Stream<MediaStreamEvent>
  Stream of `removestream` events handled by this RtcPeerConnection.
  no setter
onSignalingStateChange → Stream<Event>
  Stream of `signalingstatechange` events handled by this RtcPeerConnection.
  no setter
onTrack → Stream<RtcTrackEvent>
  Stream of `track` events handled by this RtcPeerConnection.
  no setter
remoteDescription → RtcSessionDescription?
  no setter
runtimeType → Type
  A representation of the runtime type of the object.
  no setter inherited
signalingState → String?
  no setter

## Methods

addEventListener(String type, EventListener? listener, [bool? useCapture]) → void
  inherited
addIceCandidate(Object candidate, [VoidCallback? successCallback, RtcPeerConnectionErrorCallback? failureCallback]) → Future
addStream(MediaStream? stream, [Map? mediaConstraints]) → void
addTrack(MediaStreamTrack track, MediaStream streams) → RtcRtpSender
close() → void
createAnswer([Map? options]) → Future<RtcSessionDescription>
createDataChannel(String label, [Map? dataChannelDict]) → RtcDataChannel
createDtmfSender(MediaStreamTrack track) → RtcDtmfSender
createOffer([Map? options]) → Future<RtcSessionDescription>
dispatchEvent(Event event) → bool
  inherited
getLegacyStats([MediaStreamTrack? selector]) → Future<RtcStatsResponse>
  Temporarily exposes _getStats and old getStats as getLegacyStats until Chrome fully supports new getStats API.
getLocalStreams() → List<MediaStream>
getReceivers() → List<RtcRtpReceiver>
getRemoteStreams() → List<MediaStream>
getSenders() → List<RtcRtpSender>
getStats() → Future<RtcStatsReport>
noSuchMethod(Invocation invocation) → dynamic
  Invoked when a nonexistent method or property is accessed.
  inherited
removeEventListener(String type, EventListener? listener, [bool? useCapture]) → void
  inherited
removeStream(MediaStream? stream) → void
removeTrack(RtcRtpSender sender) → void
setConfiguration(Map configuration) → void
setLocalDescription(Map description) → Future
setRemoteDescription(Map description) → Future
toString() → String
  A string representation of this object.
  inherited

## Operators

operator ==(Object other) → bool
  The equality operator.
  inherited

## Static Properties

supported → bool
  Checks if Real Time Communication (RTC) APIs are supported and enabled on the current platform.
  no setter

## Static Methods

generateCertificate(dynamic keygenAlgorithm) → Future

## Constants

addStreamEvent → const EventStreamProvider<MediaStreamEvent>
  Static factory designed to expose `addstream` events to event handlers that are not necessarily instances of RtcPeerConnection.
connectionStateChangeEvent → const EventStreamProvider<Event>
  Static factory designed to expose `connectionstatechange` events to event handlers that are not necessarily instances of RtcPeerConnection.
dataChannelEvent → const EventStreamProvider<RtcDataChannelEvent>
  Static factory designed to expose `datachannel` events to event handlers that are not necessarily instances of RtcPeerConnection.
iceCandidateEvent → const EventStreamProvider<RtcPeerConnectionIceEvent>
  Static factory designed to expose `icecandidate` events to event handlers that are not necessarily instances of RtcPeerConnection.
iceConnectionStateChangeEvent → const EventStreamProvider<Event>
  Static factory designed to expose `iceconnectionstatechange` events to event handlers that are not necessarily instances of RtcPeerConnection.
negotiationNeededEvent → const EventStreamProvider<Event>
  Static factory designed to expose `negotiationneeded` events to event handlers that are not necessarily instances of RtcPeerConnection.
removeStreamEvent → const EventStreamProvider<MediaStreamEvent>
  Static factory designed to expose `removestream` events to event handlers that are not necessarily instances of RtcPeerConnection.
signalingStateChangeEvent → const EventStreamProvider<Event>
  Static factory designed to expose `signalingstatechange` events to event handlers that are not necessarily instances of RtcPeerConnection.
trackEvent → const EventStreamProvider<RtcTrackEvent>
  Static factory designed to expose `track` events to event handlers that are not necessarily instances of RtcPeerConnection.