Project: webrtc Issues People Development process History Sign in
New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.
Starred by 59 users
Status: Fixed
Last visit > 30 days ago
Closed: Aug 2013
OS: ----
Pri: 1
Type: Bug

Blocked on:
issue 1493

Sign in to add a comment
Add support for Reliable data channels in chrome.
Project Member Reported by, Feb 27 2013 Back to list
Currently we support unreliable data channels in chrome. 

Project Member Comment 1 by, Feb 27 2013
Comment 2 by, Mar 2 2013
What Milestone is this feature targeted for?
Project Member Comment 3 by, Mar 10 2013
Blockedon: webrtc:1493
Labels: Mstone-27
Comment 4 by, Apr 1 2013
Labels: Area-PeerConnection
Comment 5 by, Apr 3 2013
Labels: -Pri-2 -Mstone-27 Pri-1 Mstone-28
Project Member Comment 6 by, May 11 2013
Labels: -Mstone-28 Mstone-29
Any estimate on a possible time frame for reliable data channels? Thanks!
Comment 8 by, Jul 15 2013
Yeah, I second Sophia's comment. An estimate of when this change will land would help us out a ton!
SCTP datachannels are now set as a flag in the canary builds, so a couple of release cycles as an educated guess
Labels: -Mstone-29 Mstone-30
Project Member Comment 11 by, Aug 13 2013
Status: Fixed
SCTP landed behind a flag in M30.
How do you create a reliable channel with the current API?

Setting reliable to true in the example does not seem to do the trick.
I did that like so
sendChannel = pc1.createDataChannel("sendDataChannel", {reliable: true});

I am on "31.0.1613.1 (Virallinen koontiversio 219906)" and I have the #enable-sctp-data-channels flag turned on.

Comment 13 by, Aug 29 2013
+1, I've tested the same and didn't work.
"Version 31.0.1613.1 canary Aura"

I have no issues (with or without #enable-sctp-data-channels enabled, not sure what the expected behavior is without that flag on) on ( ).

I also tested it without the try/catch around it and it still works.
Sam Erb
31.3 KB View Download
Comment 15 by, Sep 3 2013
Here's an example of how to transfer binary data (transfers a PNG file) over an SCTP datachannel (attached). 

Note: there is a problem with large files at the moment. They result in an error "Uncaught SyntaxError: An invalid or illegal string was specified.".
5.9 KB View Download
Yeah, I was able to get it to work also with large files: slicing the files into small packets, pushing them to a queue, and then sending the packets one by one at a given frequency with timeout. The transfer is slow, but seems to work without errors.
Comment 17 by, Sep 4 2013
#15: Note: there is a problem with large files at the moment. They result in an error "Uncaught SyntaxError: An invalid or illegal string was specified.".

I get the same error with small chunks, on unreliable channel with sctp disabled on  version 31.0.1620.1  (In stable it doesn't happen)
Try to make a queue of chunks, and send a chunk (1000 bytes max) every 500ms.
There might actually be a bug here that is causing some confusion(certainly isn't what I expected) - with RtpDataChannels:true enabled in Canary(31.0.1638.2) a datachannel that is created with reliable:true will not fail, but will return an non-reliable datachannel (with reliable:false). 
Should I file a new bug for that?
Comment 20 by, Sep 22 2013
Maybe it would worth to open a new issue, but getting RtpDataChannels as
deprecated and removed in the mid-term, I don't think anybody will try to
fix it...
El 22/09/2013 18:29, <> escribi
I would like to take back my previous comment (#14). Due to the problem I described in #19, I incorrectly thought that because a channel did not fail to startup, it was reliable when it was not.

Once I fixed the problem I had in #19 (removed "RtpDataChannels:true") I have been unable to create a sctp reliable datachannel in Canary(31.0.1638.2). 

2 issues I'm seeing here:
1) If I create a datachannel before onicecandidate, the channel close is triggered (without error!) by setRemoteDescription during the receiveAnswer phase. This works in Firefox Nightly 27.0a1 (checked that channel.reliable == true).
2) The demo code above (posted in #15) creates the datachannel during onicecandidate. Not really sure why though. It connects, but leaves the datachannel in a "connecting" readyState. I tested this locally.

Comment 22 by, Sep 24 2013
Thanks for the info. Turns out there was a bug that was only letting sctp
data channels get setup successfully if the create call happened
during the onicecandidate
call. This should be fixed in the next few days.
Sign in to add a comment