Я хочу связать двух одноранговых узлов с RTCPeerConnections, но я не могу добавить IceCandidate из Alice в Bob.Как вызвать addIceCandidate в dart
пример:
var alice = new RtcPeerConnection(
{"iceServers": [{"url": "stun:stun.l.google.com:19302"}]}
);
var bob = new RtcPeerConnection(
{"iceServers": [{"url": "stun:stun.l.google.com:19302"}]}
);
alice.createDataChannel("somelablel", {});
alice.onNegotiationNeeded.listen((var data){
alice.createOffer({}).then((var offer){
//got offer
alice.setLocalDescription(offer);
bob.setRemoteDescription(offer);
});
});
bob.onIceCandidate.listen((evt) {
if (evt.candidate)
print(evt.cancelable);
});
alice.onIceCandidate.listen((evt) {
if(evt.candidate != null)
//TODO: add iceCandidate to Bob
});
Первая версия (кажется, старый, но широко используется в онлайн-примеры):
bob.addIceCandidate(candidatefromAlice);
Выход:
Class 'RtcPeerConnection' has no instance method
'addIceCandidate' with matching arguments.
Вторая попытка (новая версия с 3 параметрами):
bob.addIceCandidate(candidatefromAlice,(){}, (var error){
print(error.toString());
});
Выход:
NotSupportedError: The implementation did not support the
requested type of object or operation. (Dartium)
Как я могу установить кандидат ICE в дротике без проблем?
Информация:
Dart VM version: 0.1.2.0_r30864 (Wed Dec 4 11:03:45 2013) on "linux_x64"
dartium : Chromium 31.0.1650.48
Версия Dartium не очень полезна. Лучше информация о версии в Darteditor> Справка> О меню или выходе из '' 'dart -version''' –
Не могли бы вы предоставить больше кода. Что такое '' 'bobsRtcPeerConnection''' и что такое' '' кандидат отAlice'''? –
Я добавил некоторый контекст. – NaN