List of DataChannels

Reading the specification I've seen that the DataChannels needs to be
created with a label that later is used to identify them internally,
giving to me to think that they are stored inside PeerConnection
objects in a dictionary. The fact is that this dictionary is not
accesible from outside PeerConnection objects so you can't be able to
know what DataChannels are open at this moment.

Based on the audio&video streams API that they support to get this
info, I propose to add the next method:

sequence<DataChannels> getDataChannels ();

This will return a sequence of DataChannels so you can know how much
of them are open with the other peer, and iterate over them to get
some info like the unique labels. This can be useful if you have
several of them open, specially if the proposed 'protocol' attribute
is being added.

As a personal use case, I'll need to have open at least three
DataChannels per each PeerConnection object (inter-peers routing, file
transferences and files search). I could be able to manage them on my
application code but it would be sub-obtimal since I would need to
manage by hand the set of DataChannels that are being used, while
using the internal PeerConnection set it would be straigforward.


--
"Si quieres viajar alrededor del mundo y ser invitado a hablar en un
monton de sitios diferentes, simplemente escribe un sistema operativo
Unix."
– Linus Tordvals, creador del sistema operativo Linux

Received on Sunday, 14 April 2013 20:06:57 UTC