The RTCDataChannel object
Now that we understand the underlying technologies at play, we can start learning how the actual RTCDataChannel
object API works. The great thing is that this API is much less complex than the underlying workings of the SCTP. The main function to create a channel comes from an already established RTCPeerConnection
object:
var peerConnection = new RTCPeerConnection(); // Establish your peer connection using signaling here var dataChannel = peerConnection.createDataChannel("myLabel", dataChannelOptions);
This is all you need to get started! The WebRTC API will take care of everything else on the browser's internal layer. This will all happen once signaling has been performed and the connection has been established. You can create a data channel at any point in the process until the RTCPeerConnection
object is closed. Though it is closed, it will throw an error when trying to create a new channel.
There are a number of states that a data channel can be in:
connecting...