Class WebRTCDataChannel
Definition
- Namespace:
- Tizen.Multimedia.Remoting
- Assembly:
- Tizen.Multimedia.Remoting.dll
Provides the ability to control WebRTC data channel.
public class WebRTCDataChannel : IDisposable
- Inheritance
-
objectWebRTCDataChannel
- Implements
-
System.IDisposable
Constructors
View SourceWebRTCDataChannel(WebRTC, string, Bundle)
Initializes a new instance of the WebRTCDataChannel class.
Declaration
public WebRTCDataChannel(WebRTC webRtc, string label, Bundle bundle)
Parameters
| Type | Name | Description |
|---|---|---|
| WebRTC | webRtc | The owner of this WebRTCDataChannel. |
| string | label | The name of this data channel. |
| Bundle | bundle | The data channel option. |
Remarks
The bundle is similar format as the RTCDataChannelInit members outlined https://www.w3.org/TR/webrtc/#dom-rtcdatachannelinit.
The following attributes can be set to options by using Bundle API:
'ordered' of type bool : Whether the channel will send data with guaranteed ordering. The default value is true.
'max-packet-lifetime' of type int : The time in milliseconds to attempt transmitting unacknowledged data. -1 for unset. The default value is -1.
'max-retransmits' of type int : The number of times data will be attempted to be transmitted without acknowledgement before dropping. The default value is -1.
'protocol' of type string : The subprotocol used by this channel. The default value is NULL.
'id' of type int : Override the default identifier selection of this channel. The default value is -1.
'priority' of type int : The priority to use for this channel(1:very low, 2:low, 3:medium, 4:high). The default value is 2.
Exceptions
| Type | Condition |
|---|---|
| System.ArgumentNullException | The webRtc or label is null. |
WebRTCDataChannel(WebRTC, string)
Initializes a new instance of the WebRTCDataChannel class.
Declaration
public WebRTCDataChannel(WebRTC webRtc, string label)
Parameters
| Type | Name | Description |
|---|---|---|
| WebRTC | webRtc | The owner of this WebRTCDataChannel. |
| string | label | The name of this data channel. |
Exceptions
| Type | Condition |
|---|---|
| System.ArgumentNullException | The webRtc or label is null. |
Properties
View SourceBufferedAmount
Gets the amount of buffered data.
Declaration
public uint BufferedAmount { get; }
Property Value
| Type | Description |
|---|---|
| uint | The buffered amount in bytes. |
Exceptions
| Type | Condition |
|---|---|
| System.ObjectDisposedException | The WebRTCDataChannel has already been disposed. |
BufferedAmountLowThreshold
Gets or sets the threshold of data channel buffered amount.
If the amount of buffered data is lower than threshold value, BufferedAmountLow will be occurred.
The default value is 0, which means BufferedAmountLow is disabled and will not be raised.
Declaration
public uint BufferedAmountLowThreshold { get; set; }
Property Value
| Type | Description |
|---|---|
| uint |
Exceptions
| Type | Condition |
|---|---|
| System.ObjectDisposedException | The WebRTCDataChannel has already been disposed. |
Label
Gets the label of this data channel.
Declaration
public string Label { get; }
Property Value
| Type | Description |
|---|---|
| string | The label. |
Methods
View SourceDispose()
Releases all resources used by the current instance.
Declaration
public void Dispose()
Send(byte[])
Sends byte data across the data channel to the remote peer.
Declaration
public void Send(byte[] data)
Parameters
| Type | Name | Description |
|---|---|---|
| byte[] | data | The byte data to send |
Exceptions
| Type | Condition |
|---|---|
| System.ObjectDisposedException | The WebRTCDataChannel has already been disposed. |
Send(string)
Sends a string data across the data channel to the remote peer.
Declaration
public void Send(string data)
Parameters
| Type | Name | Description |
|---|---|---|
| string | data | The string data to send |
Exceptions
| Type | Condition |
|---|---|
| System.ObjectDisposedException | The WebRTCDataChannel has already been disposed. |
Events
View SourceBufferedAmountLow
Occurs when the buffered data amount is lower than BufferedAmountLowThreshold.
If BufferedAmountLowThreshold is not set, this event will not be raised.
Declaration
public event EventHandler<EventArgs> BufferedAmountLow
Event Type
| Type | Description |
|---|---|
| System.EventHandler<TEventArgs><System.EventArgs> |
Closed
Occurs when the data channel has closed down.
Declaration
public event EventHandler<EventArgs> Closed
Event Type
| Type | Description |
|---|---|
| System.EventHandler<TEventArgs><System.EventArgs> |
ErrorOccurred
Occurs when an error occurs on the data channel.
Declaration
public event EventHandler<WebRTCDataChannelErrorOccurredEventArgs> ErrorOccurred
Event Type
| Type | Description |
|---|---|
| System.EventHandler<TEventArgs><WebRTCDataChannelErrorOccurredEventArgs> |
MessageReceived
Occurs when a message is received from the remote peer.
Declaration
public event EventHandler<WebRTCDataChannelMessageReceivedEventArgs> MessageReceived
Event Type
| Type | Description |
|---|---|
| System.EventHandler<TEventArgs><WebRTCDataChannelMessageReceivedEventArgs> |
Opened
Occurs when the data channel's underlying data transport is established.
Declaration
public event EventHandler<EventArgs> Opened
Event Type
| Type | Description |
|---|---|
| System.EventHandler<TEventArgs><System.EventArgs> |