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

Issue metadata

Status: Fixed
Last visit > 30 days ago
Closed: Aug 2013
NextAction: ----
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

Issue description

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 (was: NULL)
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