Interneto programos su webrtc. WebRTC technologija: garso ir vaizdo pokalbiai naršyklėje. Suprasti tą WebRTC wiki

Sveiki draugai, kaip jau žinote, mes reguliariai atnaujiname jus apie naujas technologijas, šiandien pristatysiu WebRTC – Google sukurtą technologiją, kuri leidžia nepertraukiamai kalbėti naršyklėje, vaizdo ir garso įrašuose, nepamirštant, kad naršyklės papildinys yra Interneto svetainė. Vaizdo įrašas ir garsas yra tiesiogiai atsisiunčiami tarp coristuvachas tiesiai iš naršyklės.
WebRTC technologija palaikoma „Mozilla Firefox“ naršyklėse „Google Chrome“ ir bet kurioje operacinėje sistemoje, „Opera“ taip pat netrukus pasirodys.
Kas yra WebRTC?
WebRTC yra trumpinys iš Web Real Time Communication, ši technologija leidžia leisti garso ir vaizdo pokalbius be tarpininko naršyklėje, nereikalaujant kitų papildinių, programinės įrangos paslaugų internete kitiems. Ryšys jungiamas tiesiai iš naršyklės prie naršyklės.
Kai kurios paslaugos (Skype, Yahoo Messenger, Apple FaceTime, Google Hago ir kt.) palaiko serverio užimtumą, o tai padeda inicijuoti srautą. Pergalės paslaugos, turime užsiregistruoti ir sudaryti klientų bei kontaktų sąrašą.
Su WebRTC mums nereikia serverių, programų ar serverių, kurie būtų prijungti prieš užtarimą.
WebRTC pranašumai:
1. Nebėra programų, taupančių tam tikrus resursus ir akumuliatorių.
2. Pokalbiai turi daugiau privatumo (schodo).
3. Kaip susisiekti, galima atlikti vietiniu lygiu, o ne „Flos USA“ serveriuose vietiniams ryšiams.
4. Paprastumas, pergalės aiškumas.
5. Galimybė toliau tobulėti ir kitomis kryptimis.
6. Ryšys yra stabilus ir nėra tose pačiose žemėse, kaip kartais nestabilus regione.
Balsavau už demonstracinę versiją su asistentu, kurią sukūrė Google žmonės, nesunku užbaigti demonstracinę versiją, daugiau išplėtimo galimybių ir daugiau išmaniųjų gali laimėti vieną iš priedų, pavyzdžiui, palaikyti WebRTC, lengviau su victorian. Nezabara taikiai draugauja ir apie WebRTC programas.
Kaip nulaužti WebRTC demonstracinę versiją?
Arba tiesiog paspauskite žemiau esantį pranešimą, pokalbis bus automatiškai sugeneruotas. paskambink man į kambarį, tu kaltas dėl draugo/draugės, su kuria nori susisiekti.
Draugas / draugė ir jūsų, bet jūs kaltinate tik likusias „Mozilla Firefox“ arba „Google Chrome“ versijas.

WebRTC demonstracinė versija(Įvadinis garso ir vaizdo pokalbis)

Pagarba:
Demonstracija nėra daug stabilesnė, tik demonstravimo tikslais. Vіn gali būti sumuštas ruožas kutais laikotarpis, kurio ruožas gali laimėti mažas atleidimas dieną.
Jei kyla ryšio problemų, pabandykite sukurti kitą pokalbį.

Šiandien WebRTC yra populiariausia garso ir vaizdo transliavimo naršyklėse technologija. Konservatyvios technologijos, tokios kaip HTTP srautas ir „Flash“, labiau tinka platinti įrašytą turinį (vaizdo įrašas pagal pareikalavimą), o „WebRTC“ yra žymiai prastesnis už transliacijas realiuoju laiku ir internetu, t. ten, kur reikia minimalaus vaizdo blokavimo, kuris leistų žiūrovams žiūrėti tuos, kurie yra tiesioginiame eteryje.

Realaus laiko komunikacijos galimybė yra panaši į pačią WebRTC architektūrą, vaizdo srautų transportavimui naudoja UDP protokolą, kuris yra standartinis vaizdo perdavimo su minimaliu triukšmu pagrindas ir plačiai naudojamas realaus laiko ryšio sistemose.

Ryšio blokavimas yra svarbus internetinio transliavimo sistemose, internetiniuose seminaruose ir kituose prieduose, nereikalingas interaktyvus ryšys iš senesnių vaizdo įrašų, nuo galo iki galo koristuvachiv, ir jis bus reikalingas.

Kita priežastis išbandyti WebRTC yra beprotiška tendencija. Šiandien „Android Chrome“ naršyklė palaiko šią technologiją, kuri garantuoja milijonus priedų, kurie yra paruošti transliuoti neįdiegus jokios papildomos programinės įrangos ir konfigūracijos.

Siekdami pakeisti WebRTC technologiją ir pradėti joje paprastą internetinę transliaciją, panaudojome serverio programinę įrangą Flashphoner WebRTC Media & Broadcasting Server. Funkcijos reikalauja galimybės transliuoti WebRTC srautus režimu „vienas su daugeliu“, taip pat IP kamerų ir vaizdo įspėjimo sistemų palaikymas per RTSP protokolą; Mes žiūrime į tų funkcijų žiniatinklio žiniatinklio transliacijas.

Įdiegtas WebRTC medijos ir transliavimo serveris

Serverio versijos, skirtos „Windows“, versija nepasirodė, taip pat nebuvo įmanoma įdiegti virtualios mašinos, tokios kaip „VMWare + Linux“, nebuvo galima užprotestuoti transliavimo internetu namų „Windows“ kompiuteryje. Norėdami sutaupyti valandą, nusprendėme paimti niūrų kshtalt prieglobos pavyzdį, kaip šis:

Ce buv Centos x86_64 versija 6.5 be jokios priekyje įdiegtos programinės įrangos Amsterdamo duomenų centre. Šiame reitinge viskas, ką sutvarkėme, serveris ir ssh prieiga prie naujojo. Tiems, kurie yra susipažinę su Linux konsolės komandomis, WebRTC serverio įdiegimas turėtų būti lengvas ir neskausmingas. Otzhe, scho mi zrobili:

1. Gaukite archyvus:

$wget https://website/download-wcs5-server.tar.gz

2. Išpakavimas:

$tar -xzf download-wcs5-server.tar.gz

3. Diegti:

$cd FlashphonerWebCallServer

Įdiegimo valandą įveskite serverio IP adresą: XXX.XXX.XXX.XXX

4. Suaktyvinti licenciją:

$cd /usr/local/FlashphonerWebCallServer/bin

$./activation.sh

5. Paleisti WCS serverį:

$service žiniatinklio skambučių serverio paleidimas

6. Peržiūrėkite žurnalą:

$uodega – f /usr/local/FlashphonerWebCallServer/logs/flashphoner_manager.log

7. Patikrinkite, ar vietoje yra du procesai:

$ps aux | grep Flashphoner

Diegimo procesas baigtas.

Internetinių transliacijų WebRTC testavimas

Transliacijų testavimas pasirodė gana paprastas. „Krіm“ serveris yra žiniatinklio klientas, kurį sudaro keliolika „Javascript“, HTML ir CSS failų ir failų, kuriuos įdiegimo etape įdedame į /var/www/html aplanką. Vienintelis dalykas, kurį jums reikia padaryti, yra įvesti serverio IP adresą į flashphoner.xml konfigūraciją, kad žiniatinklio klientas galėtų akimirksniu užmegzti ryšį su HTML5 Websockets serveriu. Apibūdinkime testavimo procesą.

1. Rodyti bandomojo kliento index.html pusę „Chrome“ naršyklėje:

2. Norint pradėti transliaciją, reikia paspausti mygtuką „Pradėti“ ekrano viduryje.
Prieš tai, kaip tiesą sakant, reikia persvarstyti, ar internetinė kamera yra prijungta ir paruošta darbui. Negalėjome konkrečiai patekti į internetinę kamerą, pavyzdžiui, nugalėjome standartinę kamerą, įdiegtą nešiojamajame kompiuteryje su atskiru korpusu 1280x800.

„Chrome“ naršyklė nedelsdama paprašys prieigos prie fotoaparato ir mikrofono, kad sužinotų, kaip vaizdo įrašas bus įkeltas į interneto serverį ir leistų jį įkelti.

3. Sąsaja sėkmingam vaizdo srauto transliavimui iš kameros į WebRTC serverį. Viršutiniame dešiniajame kampe yra indikatorius, rodantis, kad jis eina į serverį;

Pagarba lauko stiprumui iš apačios. Vaughn nori atkeršyti unikaliam šios gijos identifikatoriui, kad būtų galima apsilankyti prieš dar kartą. Dosit vodkriti tse pranešimą iš naršyklės. Norėdami nukopijuoti jį į mainų sritį, tiesiog spustelėkite mygtuką „Kopijuoti“.

Realiuose kshtalt webinarų, paskaitų, internetinių vaizdo transliacijų ar interaktyvios televizijos papildymuose prekybininkai turės įgyvendinti šio identifikatoriaus platinimą dainuojančioms žiūrovų grupėms, kad smarvės galėtų prisijungti prie reikiamų srautų, bet ir programos logiką. WebRTC medijos ir transliavimo serveris її nepradeda, o užsiima tik vaizdo įrašų platinimu.

5. Z'ednannya įdiegė tą žvilgčiojantį potik ekrane. Dabar galite nusiųsti pranešimą kam nors kitam, sustabdyti srautą arba įjungti viso ekrano režimą, naudodami valdiklį dešinėje apatinėje menkėje.

WebRTC serverio internetinių transliacijų bandymo rezultatai

Bandymo valandą zatrimka atrodė beviltiška. Ping į duomenų centrą buvo beveik 100 milisekundžių, o užsikimšimas nebuvo matomas. Galima daryti prielaidą, kad tikrasis delsimas yra 100 plius ar minus kelios dešimtys milisekundžių per valandą buferio. Kaip elgtis su „Flash“ vaizdo įrašais: panašiuose testuose „Flash“ elgiasi ne taip maloniai kaip „WebRTC“. Taigi, tarsi ant panašios tvoros ranka, galite ją papurtyti ekrane tik po vienos / dviejų sekundžių.

Svarbu, kad ant kilimėlių galima atskirti kubelius. Tai atitinka VP8 kodeko prigimtį ir pagrindinė jo užduotis yra užtikrinti vaizdo skambučius realiu laiku, maloniai aiškiai ir be ryšio trikdžių.

Serverį lengva nustatyti ir konfigūruoti, jo paleidimui nereikia rimtų Linux žinių lipniojo koristuvach lygyje, todėl galite įvesti komandas iš konsolės per ssh ir naudoti teksto rengyklę. Dėl to mums pavyko pasiekti internetinę transliaciją „vienas su daugeliu“ tarp naršyklių. Papildomų stebėtojų prijungimas prie srauto taip pat problemų nesukėlė.

Transliacijos kokybė pasirodė gana maloni internetiniams seminarams ir judėjimui internete. Vienintelis, kuris pašaukė maisto diakonus, – atsiuntė vaizdo įrašą. Fotoaparatas palaiko 1280x800, tačiau bandomajame paveikslėlyje jis buvo net panašus į 640x480. Galbūt, patikrinkite tiekimo grandinę su mažmenininkais.

Vaizdo įrašas iš bandomosios transliacijos iš internetinės kameros
per WebRTC serverį

OpenTok, PubNub ir WebRTC

Išmaniosios platformos „OpenTok“ ir „PubNub“, skirtos komunikacijos paslaugoms kurti WebRTC pagrindu

2016-04-08

Interneto vaizdo pokalbiai šiais laikais tampa vis populiaresni. „Web Video Chat“ yra žiniatinklio priedas, skirtas palaikyti dialogą, žiniatinklio serverio ir naršyklių raginimus.

Perspektyviausia technologija yra WebRTC API. WebRTC technologija pagrįsti interneto pokalbiai užtikrina saugų teksto, balso, vaizdo ir duomenų (failų) perdavimą neįdiegiant naršyklėje papildinių ar plėtinių. Pagrindiniai vaizdo pokalbių elementai WebRTC yra naršyklė ir kontaktų serveris.

WebRTC palaikanti naršyklė tampa viena sąsaja visiems paslaugų teikėjo plėtiniams (kompiuteriams, išmaniesiems telefonams, iPad, IP telefonams, mobiliesiems telefonams ir kt.), kurie dirba su ryšio paslaugomis. WebRTC iš WebSocket, HTML5, CSS3 ir JavaScript leidžia kurti naujos kartos žiniatinklio komunikacijos paslaugas. WebRTC technologiją įgyvendina trys „JavaScript“ API.

Peer-to-peer robotui reikia turėti dvi naršykles, palaikančias WebRTC, ieškoti signalizacijos serverio IP adreso (pavyzdžiui, WebSocket serverio), kuris veikia node.js. Serveris nedalyvauja perduodant informacijos srautus tarp naršyklių, tačiau tai yra signalas, kad ryšio tarp naršyklių užmezgimo paskyrimai yra koristuvachiv.

Atsižvelgiant į tai, kad WebRTC palaikymą palaiko ne visi pagrindiniai kompiuteriai, norint įdiegti komunikacijos priedus, pagrįstus WebRTC API, ir integruoti su interneto svetaine, galite naudoti specialias platformas, palaikančias WebRTC API.

API užtikrina komunikacijos programų sąveikumą su platforma (Web service), kuri priklauso nuo API, o SDK – komunikacijos programų, galinčių sąveikauti su platforma, kuri priklauso nuo SDK, kūrimą.

Tokias platformas galima pamatyti: OpenTok kaip TokBox, PubNub, VoxImplant, Twilio, SkyWay kaip NTT Communications, Kandy.io, SightCall ir kt. Atminkite, kad norėdami nustatyti kontaktų serverį, galite įdiegti Node.js žiniatinklio komunikacijos programoms išsinuomotame virtualiame serveryje VPS arba laimėti tamsiųjų platformų (PaaS) prieglobą, taip pat palaikyti projektus, pagrįstus Node.js, pvz., OpenShift/ „Red Hat“, „Heroku“ / „Salesforce“, „AWS Elastic Beanstalk“ / „Amazon“.

Be to, norėdami sukurti komunikacijos programą, galite pridėti „Flashphoner Web Call Server“ platformą (serverio programinė įranga, pripažinta organizuojant garso ir vaizdo srautų transliavimą naršyklėje), nes ji yra pagrįsta HTML5 Websockets, WebRTC ir Flash technologijomis ir įterpti į žiniatinklį - Serveris su OC Linux arba virtualaus VPS serverio nuoma. Tuo pačiu metu „Flashphoner“ suaktyvino savo WebRTC serverį („Web Call Server 5“) „Amazon Web Services“ priegloboje.

Žvelgiant į tai, matome populiariausias neaiškias komunikacijos žiniatinklio paslaugas, pagrįstas WebRTC technologija – „OpenTok“, pavyzdžiui, „TokBox“ ir „PubNub“.

OpenTok kaip TokBox

„OpenTok“ yra visa „PaaS“ platforma (platforma kaip paslauga), laidinio „WebRTC“ ryšio platforma, skirta integruoti svetainę, mobiliąją programinę įrangą, vaizdo ryšius ir įgalinti apsikeitimą pranešimais. OpenTok gali dalytis infrastruktūra, kad atkeršytų duomenų apdorojimo centrui visame pasaulyje.

OpenTok platforma, kaip ir TokBox, suteikia mažmenininkams galimybę įdiegti kelių platformų vaizdo pokalbius, pagrįstus WebRTC API žiniatinklio prieduose (svetainėse), Java/Android ir IOS programose.

„OpenTok“ architektūra sudaryta iš „WebRTC OpenTok“ bibliotekos kliento dalies (pavyzdžiui, OpenTok.js), todėl ji teikia vaizdo skambučius į kliento programos dalį (svetainę) ir įrankių rinkinį („OpenTok Client“). SDK) klientų programoms platinti (JavaScript, Web Java/Android OS ir IOS OS).

Крім того, складовою частиною архітектури OpenTok є серверні SDK (OpenTok Server SDKs), які призначені для розробки серверної інфраструктури (для управління та аутентифікації користувачів) програми, що забезпечує динамічну генерацію унікальних ідентифікаторів сеансів ID OpenTok (sessionId) та маркерів (token) для кожного koristuvach, taip pat robotas su OpenTok archyvais. Žiniatinklio serveris perduoda unikalų seanso identifikatorių ir prieigos raktą, kurį klientas gali laimėti, kad prisijungtų prie seanso.

„OpenTok“ serverio SDK yra prieinami pagrindinėms serverio programavimo kalboms: Java, .NET, Node.js, PHP, Python, Ruby. Jei nurodote, kad programos serverio daliai reikia kitokio programavimo, kad prieš perkėlimą nebūtų įvesta, tada TokBox suteikia OpenTok REST API, skirtą OpenTok seansams kurti ir darbui su OpenTok archyvais.

Tokiu būdu, norint sukurti ryšio programas interneto ryšiams, reikėjo laimėti OpenTok serverio SDK iš prijungtos WebRTC OpenTok kliento bibliotekos ir OpenTok Client SDK.


Norint laimėti „OpenTok“ platformą WebRTC vaizdo pokalbių kūrimui, kuri buvo pristatyta Interneto universitete, pirmiausia reikia sukurti įstrižą įrašą TokBox.com. Nemokamas standus OpenTok įrašymas trisdešimties dienų laikotarpiu. Registruojantis korespondentas gali paimti API raktą (ApiKey), būtiną OpenTok komunikacijos priedo platinimą. API raktas identifikuoja viešą OpenTok mažmenininko įrašą.

Naudodami „OpenTok“ mažmenininko pagalbą (https://tokbox.com/developer/guides/) „TokBox“ mažmenininko paskyroje galite sukurti komunikacijos programą (vaizdo pokalbių svetainę) „OpenTok“ klientų SDK pagalbai. Norėdami patvirtinti OpenTok platformą programinei įrangai, žiniatinklio pusėje turite įtraukti OpenTok.js biblioteką.

https://static.opentok.com/webrtc/ .../opentok.js

Programai veikti būtini seanso identifikatorius (SESSIONID) ir prieigos raktas (žetonas) sukuriami programiškai žiniatinklio serveryje su vienu iš serverio SDK (OpenTok Server SDK).

Tačiau norėdami sukurti bandomąją programos versiją be OpenTok serverio SDK, pagrįstą API raktu (ApiKey), galite rankiniu būdu paimti seanso ID ir seanso ID žymeklį naudodami mažmenininko pagalbos įrankių juostą. Klientui reikalingas prieigos raktas, suteikiantis prieigą prie seanso.

Tokių pakeitimų pavadinimai kaip raktas „apiKey“, seanso identifikatorius „sessionId“ ir žymeklis „token“ gali atrodyti taip:

var apiKey = "17493650";
var sessionId= "2_MX40NT...tWXR-UH4";
var tokenas= "T1==cGFyd...2RhdGE9";

Kai seanso objektas sukuriamas su seanso identifikatoriumi (SESSIONID) ir prieigos raktu, programa inicijuoja seanso objektą.

var session = OT.initSession(apiKey, sessionId);

Prijunkite klientą prie sesijos ir paskelbkime garso ir vaizdo srautus:

session.connect(žetonas, funkcija(klaida) (
leidėjas = OT.initPublisher("leidėjas");
sesija.publikuoti(leidėjas);
});

Kai klientas prisijungs prie seanso, programa inicijuos Publisher OpenTok objektą ir paskelbs šios sesijos garso ir vaizdo srautą, kad kiti klientai galėtų tuo pasinaudoti.

session.on((
streamCreated: funkcija(įvykis) (
sesija.prenumeruoti(įvykis.srautas, "prenumeratorius");
}});

Tokiu būdu galima sukurti WebRTC vaizdo pokalbio pagrindą, pagrįstą OpenTok platforma, kurį galima perkelti į jūsų svetainę. Šiek tiek 2 vaizdo pokalbio ekrano kopijos, sukurtos TokBox mažmenininko viešajame įraše, sąsajos peržiūros WebRTC.

Tada jums reikia sukurti vaizdo pokalbio serverio dalį, naudojant OpenTok Server SDK vienam filmui programuoti. „OpenTok Server“ SDK leidžia programiškai kurti „OpenTok“ seansus, generuoti prieigos raktus ir tvarkyti „OpenTok“ archyvavimą.

Tada pasirinkite du medijos srautų (medijos srautų) perdavimo režimus TokBox:

  • perduotas (retransliavimas), šiuo režimu medijos srautai perduodami be tarpininkavimo tarp bendravimo (pavyzdžiui, tarp naršyklių su vaizdo pokalbiais vienas su vienu);
  • nukreiptas (maršruto parinkimas), kuriuo režimu „OpenTok Media Router“ naudojamas garso ir vaizdo srautams tarp klientų nukreipti (pavyzdžiui, gausiai apsaugotam koristuvachi arba grupiniam vaizdo pokalbiui internetinėms transliacijoms).

PubNub

PubNub yra pasaulinė srautinio perdavimo medija, skirta: IoT (daiktų internetui), mobiliajam telefonui ir žiniatinkliui. PubNub yra žiniatinklio paslauga, skirta keistis informacija realiuoju laiku, skirta organizuoti žiniatinklio ryšius tarp skirtingų platformų: mobiliųjų telefonų, planšetinių kompiuterių, interneto naršyklių, interneto svetainių ir kt. „PubNub“ teikia daugiau nei 70 SDK pagrindinėms programavimo kalboms, skirtų kelių platformų komunikacijos priedams kurti ir juos sujungti į žiniatinklio priedus (svetaines) ir programas mobiliesiems (Java / Android ir IOS).

Movų, kuriuos palaiko PubNub pateikimo SDK, sąrašas šone: https://github.com/pubnub/pubnub-api. Reikėtų pažymėti, kad API sąsajas su konkrečiomis PubNub programinės įrangos platformomis taip pat palaiko REST API. Pavyzdžiui, PubNub WebRTC SDK yra skirtas organizuoti žiniatinklio ryšius (peer-to-peer tinklus) realiuoju laiku tarp naršyklių, naudojant lygiarangę architektūrą. Komponentų mainų architektūra komunikacijos programoje, pagrįstoje PubNub platforma ir WebRTC technologija, parodyta fig. 3.

Kaip matyti iš WebRTC vaizdo pokalbių komponentų sąveikos schemos (3 pav.), PubNub platforma naudojama kaip mastelio signalizacijos serveris (paslaugos serveris) WebRTC priedams. Be to, PubNub platforma užtikrina tokių papildomų funkcijų, kaip buvimas (informacija apie turimą korespondento regione arba esamas korespondentų sąrašas), išsaugojimas / pakartotinis atidarymas (leidžia korespondentui išsaugoti praeities istoriją). sezoną) ilgą laiką.

Ryšio WebRTC priedai, pagrįsti PubNub platforma, turi du būdus keistis pranešimais (WebSockets ir AJAX) tarp naršyklės ir paslaugų serverio. PubNub siūlo naują API, skirtą WebRTC prijungti prie PubNub platformos. PubNub WebRTC API nulaužia signalus tarp lygiaverčių naršyklių, kad jos galėtų bendrauti peer-to-peer architektūroje naudojant PeerConnection WebRTC API. Pasikeitus signalų pranešimams tarp naršyklių, tarp jų sukuriamas dvipusis ryšys, kad būtų galima keistis vaizdo srautais ir pakankamai duomenų. Naršyklės skambučius koordinuoja PubNub.

„PubNub“ paslauga, kaip visų komponentų sąveika, užtikrina būtiną sąsajos tarp naršyklių diegimą lygiaverčiu principu, keičiantis pranešimais valandą, taip pat pasaulinį srautinio perdavimo tinklą.

Norėdami laimėti „PubNub“ platformą vaizdo pokalbių kūrimui, pirmiausia turite užsiregistruoti „PubNub“ nekopijuojamo įstrižo įrašo kūrimo būdu. Norint gauti API raktus, galima užsiregistruoti subscribe_keyі publikavimo_raktas, būtina PubNub komunikacijos priedo informacija. Tada į savo įstrižą įrašą galite pridėti tokias funkcijas kaip saugumas, to saugumo buvimas.

Pašalinę API raktus, galite pradėti kurti komunikacijos programą, pagrįstą PubNub platforma, kurti SDK vieną iš pagrindinių programavimo kalbų arba kurti demonstracines programas (šablonus). Pradinis komunikacijos programos kūrimo vadovas pateikiamas šone: https://www.pubnub.com/docs/tutorials/pubnub-publish-subscribe. Patarimai, kaip sukurti vaizdo pokalbį pagal PubNub WebRTC SDK, peržiūrėti adresu https://www.pubnub.com/docs/webrtc-javascript/pubnub-javascript-sdk.

Norėdami sukurti WebRTC vaizdo pokalbį nuo nulio, prie pagalbininko turite pridėti keletą paprastų „JavaScript“ API:

  • Prijunkite PubNub HTML biblioteką prie šono. įgalinti JavaScript PubNub SDK prieš HTML šoninį kodą prieš inicijuojant klientą;
  • init() - inicijuoja PubNub API klientą;
  • subscribe() – permokėti už pirmąjį kanalą (spustelėkite ir užsiprenumeruokite() PubNub API metodas);
  • publish() – siųsti pranešimus į konkretų kanalą (spustelėkite PubNub API metodą publish());
  • atšaukti prenumeratą () – veiksmas, kad permokėtumėte dainos kanalą.

„PubNub“ kliento API inicijavimas gali atrodyti taip:
var PUBNUB = PUBNUB.init((
publish_key: „Jūsų paskelbimo raktas“,
subscribe_key: „Jūsų prenumeratos raktas“
});

Norėdami sukurti WebRTC vaizdo pokalbį, pagrįstą PubNub WebRTC, galite atsisiųsti šabloną su galiojančiu išvesties kodu: https://www.pubnub.com/developers/demos/webrtc/. Norint patikrinti robotizuotą vaizdo pokalbį, reikia nueiti nurodytu adresu iš dviejų kompiuterių, vaizdo pokalbių sąsajoje, kuri rodoma naršyklėse, koristuvachoms priskiriami telefono numeriai. Norėdami paprašyti kredito kortelės, įveskite telefono numerį teksto laukelyje „Įveskite gavėją“ ir spustelėkite mygtuką ragelio paveikslėlyje.

Dėl to vaizdo kamerų vaizdai patenka į naršyklę ir rodomi monitorių ekranuose. Be to, šis vaizdo pokalbis skirtas veikti kaip teksto perdavimo pokalbis. Norėdami įtraukti koristuvachі povinnі, įveskite tekstą šalia lauko "pokalbiai čia" ir paspauskite klavišą "Enter". Šiek tiek 4 peržiūroms, koristuvacho, kurio telefono numeris 164, vaizdo pokalbio ekrano kopija.



Ryžiai. 4.PubNub su WebRTC

Koristuvacho vaizdo pokalbio su telefono numeriu 128 ekrano kopija, skirta šiek tiek 5 peržiūroms.



Ryžiai. 5.PubNub su WebRTC

Susitikimai dėl koristuvach sąsajos žiniatinklio komunikacijos programos išskaidymo HTML5 ir CSS3 hiperteksto žymėjimo pagalba. Komunikacijos programos kliento dalies kodas yra padalintas į JS. Prieš pradedant žiniatinklio komunikacijos programą, buvo įtrauktos bibliotekos: JQuery, PubNub JavaScript SDK ir PubNub WebRTC SDK.

WebRTC leidžia atlikti garso / vaizdo skambučius realiuoju laiku per naršyklę

Šioje temoje aš jums pasakysiu, kaip įdiegti paprasčiausią WebRTC priedą.

1. getUserMedia – prieiga prie medijos įrenginių (mikrofonas / internetinė kamera)

Nieko sulankstomo, 10 eilučių javascript kodo pagalba galite pajusti savo naršyklėje (demo).

Sukurkite index.html :

Prieš vaizdo elementą galite pridėti css3 filtrus.

Mane čia glumina tie, kurie šiame WebRTC kūrimo etape negaliu pasakyti naršyklei „kuria svetaine pasitikiu, suteikti jai leidimą pasiekti kamerą ir mikrofoną“ ir turiu paspausti „Allow“ po odos tono / šono atnaujinimo. .

Na, nespėkime, ar suteikėte prieigą prie fotoaparato vienoje naršyklėje, kitu atveju, kai bandysite, pasinaudokite PERMISSION_DENIED.

2. Signalizacijos serveris (signalų serveris)

Čia aš sulaužau daugiau "webrtc pradedantiesiems" instrukcijų seką, smirdau kitu būdu, kad parodyčiau webRTC galimybę viename kliente, o tai šiek tiek papildė paaiškinimą.

Signalizacijos serveris yra WebRTC koordinavimo centras, užtikrinantis ryšį tarp klientų, inicijuojantis ir uždarantis skambučius, skambučius dėl malonės.

Signalizacijos serveris mūsų prievade yra Node.js + socket.io + node-static, klausantis per 1234 prievadą.
Be to, node-static gali naudoti index.html, todėl galime kiek įmanoma supaprastinti savo priedą.

„Daddy“ programoms būtina įdiegti:

NPM diegimas socket.io NPM diegimo mazgas-statinis

Єvropeisyki Koristuvachi Merezhili Rodili apie tolimąsias dalis: Zgіtyu į Vene analiz Gromadsko Dūmos instancijas Allenbache (Nimechin), Skype, Viskoje nykštukų Mitti-Vydomniye sistemų pokalbis už 16,5 mln., už 16,5 mln., už 16,5 mln. tsі paslaugos vіd vіpadku, o prieš jas 28 mln.

Situacija gali pasikeisti, šukės dabar integruotos su Firefox komunikacijos technologija realiu laiku (WebRTC), ir paskambinti pačiam klientui. Pradėkite garso ir vaizdo pokalbį dabar, nieko sudėtingesnio, nuleiskite svetainę. Tokios paslaugos, kaip „Facebook“ ir „Skype“, tuo pačiu metu padidina kliento laimėjimo raišką ir viešo įrašo sukūrimą.

WebRTC rezonuoja ne tik su zastosuvannya paprastumu. Šis metodas leidžia įdiegti tiesioginis ryšys tarp dviejų naršyklių. Tokiu būdu garso ir vaizdo duomenys nepraeina per serverį, kur gali būti perpildyti, antraip kažkokiam administratoriui nerūpi ypatingas privačios sferos perpasakojimas, duomenų apsauga. Norint tiesiogiai prisijungti prie WebRTC, nereikia nei registracijos, nei fizinio įrašo apie paslaugą.

Dėl burbuolės burbuolės reikia pereiti tik pagalbos. Spillkuvannya tampa privačia Duomenų srauto fragmentai yra užšifruoti. „Google“ pradėjo aktyviai bendrauti realiuoju laiku per naršyklę 2011 m., kai paskelbė savo WebRTC diegimo kodą.

Neseniai paskutinius „Chrome“ ir „Firefox“ atėmė galingi WebRTC varikliai. Šią valandą mobiliosiose parinktyse įdiegta ir ta pati technologija, ir WebView 3.6 variklis, kuriame yra priedai, kurie įdiegiami iš karto su Android 5.0.

Norint bendrauti realiuoju laiku, interneto naršyklėje turi būti įdiegta JavaScript sąsaja. „GetUserMedia“ pagalba programinė įranga suaktyvina garso ir vaizdo įrenginių saugojimą, tai yra iš internetinės kameros ir mikrofono. RTCPeerConnection yra atsakinga už ryšio užmezgimą, taip pat už patį ryšį.

Lygiagrečiai su naršyklės integravimu, World Wide Web Consortium (W3C) darbo grupė privertė WebRTC standartizacijos procesą. Gegužė baigsis jau 2015 m.

WebRTC patenkintas Malimu

Norint naudotis WebRTC paslauga, nereikia daug išteklių; „Z'ednanny“ montavimas taip pat netampa ypač sulankstomas. Tuo pačiu metu naršyklė siunčia signalą į WebRTC serverį, kad planuoja siųsti skambutį. Nurodo, kad serverio vyno tipas yra įjungtas HTTPS – skambinama šifruotu formatu. Tsey link koristuvach nugali savo šnipinėjimą. Po to naršyklė paprašė koristuvacho prisijungti prie interneto kameros ir mikrofono.

Norėdami įdiegti tiesioginį srautinį ryšį su naršyklės naršykle, naršyklė atpažins WebRTC paslaugos tipą ir IP adresą bei nurodytą konfigūraciją. Svіvrozmovnik žiniatinklio naršyklė turėtų pasirodyti taip pat.

Kad srautinio perdavimo ryšys veiktų be gedimų ir aukšto lygio, naršyklėje veikia trys varikliai. Du iš jų optimizuoja ir išspaudžia garso vaizdo įrašus, trečiasis skirtas jų transportavimui. Vіn atsiuntė duomenis pagalbos SRTP protokolas(Saugus realaus laiko transportavimo protokolas), leidžiantis šifruotą srautinį perdavimą realiuoju laiku.

Jei nežinote, kaip jį įdiegti tiesiogiai, WebRTC atrodo kitaip. Pavyzdžiui, tai turėtų būti tuo atveju, jei „merževy“ yra nustatytas pakeisti būdą, kad STUN serveris galėtų pasakyti IP adresą. WebRTC standartas persiunčia tai, kas bus įmanoma, bet kokiu būdu, net jei įjungtas TURN (Traversal Using Relays around NAT) serveris. Taigi, svetainėje netscan.co galite patikrinti, ar WebRTC įdiegtas jūsų kompiuteryje ir su jūsų prieiga prie Merezhya.

Kaip diena

Būtina užregistruoti rozmovu (1). WebRTC paslauga pateikia užklausą, nes reikia išsiųsti skambinantįjį. STUNserverio pagalba esanti naršyklė nuskaito savo IP adresą (2), redaguoja paslaugą ir paima partnerio IP, kad užmegztų tiesioginį ryšį (3). Jei STUN nebando laimėti, rozmarinas nukreipiamas į TURN serverio pagalbą (4).

Naršyklėje paleidžiama WebRTC technologijos užklausa dėl papildomo „JavaScript“. Trys varikliai yra atsakingi už ryšį: balso variklis ir vaizdo variklis renka daugialypės terpės duomenis iš internetinės kameros ir mikrofono, o transportavimo variklis sujungia šią informaciją su užšifruotu vaizdo įrašu, naudodamas SRTP (Secure Real-time Protocol) protokolą.

Kaip naršyklės veikia su WebRTC

„Chrome“ ir „Firefox“ yra aprūpinti „WebRTC“ varikliu, tokia paslauga kaip talky.io. Tokia naršyklė kaip „Mozilla“ gali būti naudojama tiesiogiai su jūsų klientu.

„Google“ ir „Mozilla“ toliau plėtoja bendravimo realiuoju laiku idėją: „Chrome“ gali surengti WebRTC konferenciją, kurioje dalyvauja kuo daugiau dalyvių, o naują „Firefox“ klientą „Hello“ kuria telekomunikacijų milžinės „Telefonica“ dukterinė įmonė. „Apple“ vis dar yra nuošalyje, „Safari WebRTC“ patikrinimai vis dar nėra varto. Tačiau nėra beveidžių alternatyvių „iOS“ programų ir „Safari“ papildinių.

„Microsoft Corporation“ eina kitu keliu. Būdama konkurencingos „Skype“ paslaugos meistrė, ši įmonė nepasirenka taip lengvai kapituliuoti prieš WebRTC. „Microsoft“ kuria technologiją, vadinamą ORTC (Object Real-Time Communications), skirtą „Internet Explorer“.

Tokios WebRTC funkcijos, taip pat kiti kodekai ir protokolai, skirti užmegzti ryšį su serveriu, yra nereikšmingi ir labiau tinka viskam, transformuojasi į WebRTC standarto priedą, kuriame yra daug skirtumų. Šiame reitinge, už borto, yra mažiau nei „Apple“ - kaip taisyklė.

Nuotrauka: virusų kompanijos; goodluz/Photolia.com

Programos