2013-11-29 6 views
2

Я хочу, в основном, создать соединение между двумя разными компьютерами в одной локальной сети. Но я хочу сделать это с помощью локальных IP-адресов компьютеров. (например, 192.168.2.23 и т. д.)PeerConnection на основе локальных IP-адресов

Это должно быть полностью локальное соединение. нет серверов TURN или STUN. Я не уверен, что это возможно. Потому что документация/пример/информация о WebRTC отсутствует.

Итак, как я могу создать соединение с моего компьютера на другом, просто передав его локальный IP-параметр?

Обновление: Чтобы быть более ясным; Представьте, что на html-странице есть код, который активирует мою камеру и аудио-услуги. а другая - почти одинаковая страница открыта на другом компьютере. Ожидание запроса на подключение ... И на моей странице есть текстовое поле для ввода IP-адреса другому компьютеру в моей локальной сети. тип 192.168.2.xx и бинго! У меня есть связь между мной и другим компьютером.

Я хочу, чтобы этот процесс был основан на IP, потому что в сети может быть более двух устройств. И все они являются возможными устройствами для создания соединения. Поэтому мне нужно связаться с ними по их IP-адресам.

Любой пример кода или объяснений будет замечательным! даже если это говорит о том, что это невозможно.

Thanks

ответ

3

Обнаружение сверка является важной частью любого приложения WebRTC. Это дорогой термин для высказывания: «Привет, я компьютер 4, и я хочу поговорить с тобой!». Смотрите, как позвонить другу по телефону. Сначала вам нужно набрать его номер. Эта часть не определена в стандартах WebRTC. Вам необходимо реализовать эту логику в своем приложении. Как только вы знаете, кого вы хотите позвонить, вам нужен способ обмена важной информацией. Это называется сигнализацией, как flo850. Сигнализация необходима до того, как можно установить одноранговое соединение.

Чтобы придумать пример использования 7 устройств в локальной сети.

Если у вас есть эти устройства, подключенные к, например, серверу WebSockets и находящиеся в одном канале.

Сервер WebSockets может быть записан для маршрутизации сообщений на конкретные приемники. Устройства, подключенные к каналу, часто идентифицируются с каким-то идентификатором, представьте, что вы используете IP-адрес устройства. Если вы хотите поговорить с компьютером 4 с IP 192.168.0.4 вы отправляете обменные сообщения (сигнализацию) на канал в приемник с идентификатором, IP-адрес устройства, с которым вы хотите установить соединение. Как отправить сигнал (предложение, ответ) описано here с примером кода.

Надеюсь, это поможет

+1

Это объяснение мне нужно. Плохие новости, но я в порядке с этим. По крайней мере, я знаю, что я НЕ МОЖЕТ делать с webRTC. Огромное спасибо. – alix

2

Пользователи обычно сидят за NAT; поэтому концепция ICE реализована в WebRTC.

Если оба пользователя сидят за одним NAT; Вы можете пропустить ICE серверов, передавая «NULL» значение параметра над «RTCPeerConnection» Конструктор:

var peer = new [webkit|moz]RTCPeerConnection (null); 

Теперь браузер будет использовать «host» кандидатов, также известный как «местных» кандидатов ,

+0

Так как же два компьютера узнают друг друга? представьте себе 7 компьютеров в локальной сети. – alix

+0

@alix IP-адреса уникальны, если все 7 компьютеров находятся в одной сети, сервер сигнализации будет координировать создание SDP между компьютерами, после чего они теперь смогут «узнавать друг друга» –

2

Вам все еще нужен сервер сигнализации. Во время поиска кандидата в ICE ваши клиенты будут обменивать свой локальный ip через этот сервер сигнализации

Смежные вопросы