Как добавить видеозвонок в приложение nativescript

#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 говорится, что у них есть бесплатный уровень с ограничением.

https://market.nativescript.org/plugins/connectycube/

Комментарии:

1. Больше информации здесь developers.connectycube.com/nativescript