#javascript #webrtc #nativescript
#javascript #webrtc #nativescript
Вопрос:
надеюсь, это вам понравится
Я работаю над проектом nativescript, и я хотел бы добавить функциональность видеозвонка в приложение, я искал в Интернете, я нашелhttps://market.nativescript.org/plugins/nativescript-webrtc-plugin , но я действительно не понимаю приведенный там пример.
в документах есть часть
iceServers: [
// Optional defaults to google stun servers
{
url: 'stun:stun.l.google.com:19302'
},
{
url: 'serverRequiresAuth',
username: 'username',
password: 'password'
}
]
Вопрос 1: Где мне получить имя пользователя / пароль или это «имя пользователя» и «пароль»
Вопрос 2: Как мне подключить вызов с одного устройства на другое
если вы работали с этим плагином раньше или знаете другую альтернативу, я был бы очень признателен за объяснение
Ответ №1:
Я не работал над этим конкретным плагином, однако, я думаю, что вам может быть интересно изучить WebRTC для понимания его поведения.
[Q2] В WebRTC и для того, чтобы установить вызов между вашими клиентами, им придется обмениваться определенной информацией (видео- и аудиокодеки, кандидаты ICE, типы носителей и так далее ..), Это известно как SDP (протокол описания сеанса). Вызывающий отправит предложение SDP, и вызываемый получит его и ответ в виде ответа SDP. Обычно для этих обменов требуется определенный сервер сигнализации.
Для сетевых целей ICEServers необходимы, чтобы ваши клиенты могли связаться друг с другом (через свои ICECandidates). Как только * вызывающий абонент соберет все свои ICECandidates (IP-адрес, порты и т.д.), Он попытается связаться с вызываемым абонентом (и наоборот) через ICE-кандидатов вызываемого абонента, извлеченных сигнальными обратными вызовами. Это цель протокола ICE.
Существуют два типа серверов ICEservers:
- Серверы STUN позволяют клиенту получать свой «общедоступный» IP (например, за NAT)
- [Q1] Серверы TURN (для которых требуется этап аутентификации, имя пользователя / учетные данные) позволяют клиенту ретранслировать свои мультимедийные потоки, даже если он находится за ограниченным брандмауэром или определенным NAT. Вы можете развернуть свой собственный сервер TURN (coturn, rfc5766-turn-server и т.д.) Или вы можете положиться на компании (Xirsys, Twilio и т.д.). Дополнительная информация:https://webrtc.org/getting-started/turn-server
* На самом деле это делается асинхронно, это может произойти «почти» в любое время до и во время вызова
Комментарии:
1. Спасибо за ваше объяснение, я действительно ценю!
Ответ №2:
Я нашел плагин в NativeScript Marketplace.
Я не использовал это раньше.
На веб-сайте connectycube говорится, что у них есть бесплатный уровень с ограничением.
Комментарии:
1. Больше информации здесь developers.connectycube.com/nativescript