Golang `pions` lib пример вопроса - PullRequest
0 голосов
/ 30 ноября 2018

Я только начал экспериментировать с WebRTC с Go и скачал библиотеку pions / webrtc , но я застрял на этом примере data-channels.

Как написано на docs Я открыл пример клиента jsfiddle .

Затем я запускаю команду go run main.go в папке /go/src/github.com/pions/webrtc/examples/data-channels на моем сервере, чтобы запустить канал данных.

После этого я копирую Browser base64 Session Description из примера jsfiddle и вставляю его в свой терминал, где выполняется скрипт data-channels go, и он генерирует Golang base64 Session Description код, который я вставляю в пример jsfiddle, а затем нажимаю кнопку Sart session.

И не удается установить соединение: (

Это мой пример jsfiddle для клиентской стороны:

enter image description here

И этомой серверный скрипт go:

enter image description here

Что я делаю не так?

1 Ответ

0 голосов
/ 09 декабря 2018

Спасибо за использование pion-WebRTC (я один из разработчиков!)


В WebRTC используется технология ICE, позволяющая партнерам общаться друг с другом.Два партнера обмениваются IP-адресами через SDP (текст, который вы вставили), затем они пытаются установить связь, отправляя небольшие UDP-пакеты между собой.Как только два IP-адреса успешно обмениваются данными через ICE, остальные шаги WebRTC могут продолжаться.Для вас этот процесс терпит неудачу.Я не знаю, как / почему, хотя.Брандмауэры, VPN и т.д ... все это может вызвать проблемы.

Вам придется отлаживать и проверять разные сценарии.Я бы попробовал запустить примеры на вашем локальном ПК.Если это работает, то, возможно, попробуйте другой сервер.Хороший инструмент, помогающий здесь, также tcpdump, который может показать, прибывают ли UDP-пакеты.Я обычно использую tcpdump -i any udp and inbound


Мы также недавно добавили поддержку IPv6, так что, возможно, стоит попробовать от master и посмотреть, поможет ли это вообще!Надеюсь, это поможет, но если у вас все еще есть проблемы, не стесняйтесь задавать больше вопросов.Мы также доступны через наш Slack Channel , вы можете зарегистрироваться здесь здесь и были бы более чем рады пообщаться!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...