WebRTC iceTransportPolicy 'all' не создает соединения, когда кандидаты host и srflx не работают и работает только ретрансляция - PullRequest
0 голосов
/ 04 ноября 2019

При подключении браузеров друг к другу с помощью WebRTC, у меня есть параметр iceTransportPolicy: 'all', предоставляющий мне все типы кандидатов с сервера STUN / TURN.

Однако в состоянии что-то не работаетгде эти кандидаты тестируются на соединение, так как соединение формируется правильно, если оба кандидата находятся в одной локальной сети, но мне нужно либо использовать iceTransportPolicy:'relay' ИЛИ НЕ ОТПРАВЛЯТЬ кандидатов типа host/srflx другой стороне, чтобы получить TURN соединение работает. В настоящее время в этом случае в моем коде я жду, пока не завершится ошибка ice, а затем при следующей попытке подключения я сначала отбрасываю typ host кандидатов для отправки другой стороне, и после этого я прекращаю отправлять typ srflx кандидатов другой стороне. Когда я отправляю только 10000 * кандидатов другой стороне, соединение установится успешно.

Я бы хотел, чтобы лед работал должным образом, имея возможность формировать соединения (через TURN) даже в ситуациях, когдакандидаты host и srflx бесполезны.

1 Ответ

0 голосов
/ 04 ноября 2019

ОП здесь, я обнаружил свою ошибку, я хотел отправлять кандидатов только тогда, когда соединение находится в состоянии, подходящем для нового соединения, и забыл иметь состояние «проверка» в этом списке (новое, сбор, проверка).

...