{"id":30842,"date":"2019-10-31T21:37:44","date_gmt":"2019-10-31T18:37:44","guid":{"rendered":"https:\/\/prohoster.info\/blog\/ot-skype-do-webrtc-kak-my-organizovali-videosvyaz-cherez-veb\/"},"modified":"2021-02-01T11:37:06","modified_gmt":"2021-02-01T09:37:06","slug":"ot-skype-do-webrtc-kak-my-organizovali-videosvyaz-cherez-veb","status":"publish","type":"post","link":"https:\/\/prohoster.info\/et\/blog\/administrirovanie\/ot-skype-do-webrtc-kak-my-organizovali-videosvyaz-cherez-veb","title":{"rendered":"Skype'ist kuni WebRTC-ni: kuidas me korraldasime video side veebis","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><img decoding=\"async\" alt=\"Skype&#039;ist kuni WebRTC-ni: kuidas me korraldasime video side veebis\" src=\"\/wp-content\/uploads\/2019\/04\/92ea7848049d68c0b41b821bc8b83d54.jpg\" style=\"display:block;margin: 0 auto;\"><\/p>\n<p>Videokonverents on peamine suhtlemisviis \u00f5petaja ja \u00f5pilase vahel Vimboxi platvormil. Oleme ammu loobunud Skype'ist, proovinud mitmeid kolmanda osapoole lahendusi ning l\u00f5puks otsustanud kasutada WebRTC \u2013 Janus-gateway kombinatsiooni. M\u00f5nda aega sobis see meile h\u00e4sti, kuid siiski kerkis esile m\u00f5ned probleemid. L\u00f5puks loodi videoteemade jaoks eraldi suund.<\/p>\n<p>Palusin Kirill Rogovile, uue suuna juhile, r\u00e4\u00e4kida videokonverentsi arengust Skyengis, avastatud probleemidest, lahendustest ja nendest nippidest, mida l\u00f5puks kasutasime. Loodame, et artikkel on kasulik ka teistele ettev\u00f5tetele, kes t\u00f5stavad video l\u00e4bi veebirakenduse.<\/p>\n<p><noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<h2 id=\"nemnogo-istorii\">Veidi ajalugu<\/h2>\n<p>Suvel 2017 astus Skyengi arenduse juht Sergei Safonov Backend Confis \u00fcles ettekandega, milles r\u00e4\u00e4kis sellest, kuidas me \u00abloobusime Skype'ist ja rakendasime WebRTC\u00bb. Soovijad saavad tema ettekande salvestust vaadata <noindex><a rel=\"nofollow\" href=\"https:\/\/youtu.be\/0BiE1Rt-bak\">lingi kaudu<\/a><\/noindex> (~45 min), aga siin ma l\u00fchidalt esitan selle sisu.<\/p>\n<p>Skyengi koolis on videok\u00f5ne alati olnud \u00f5petaja ja \u00f5pilase vaheline suhtlemise prioriteet. Alguses kasutasime \"Skype'i\", kuid see ei sobinud mitmel p\u00f5hjusel, eelk\u00f5ige logide puudumise ja otsese integreerimise v\u00f5imaluse t\u00f5ttu veebirakendusse. Seet\u00f5ttu tegime erinevaid katsetusi.<\/p>\n<p>Meie videok\u00f5ne n\u00f5udmised olid umbes j\u00e4rgmised:<br \/>\n\u2014 stabiilsus;<br \/>\n\u2014 madal hind tunni eest;<br \/>\n\u2014 tundide salvestamine;<br \/>\n\u2014 j\u00e4lgimine, kui palju iga\u00fcks r\u00e4\u00e4gib (meie jaoks on oluline, et \u00f5pilased r\u00e4\u00e4giksid tundides rohkem kui \u00f5petaja);<br \/>\n\u2014 lineaarselt skaaleeritav;<br \/>\n\u2014 v\u00f5imalus kasutada nii UDP-d kui TCP-d.<\/p>\n<p>Esimese asjana proovisime 2013. aastal rakendada Tokboxi. K\u00f5ik oli h\u00e4sti, kuid see osutus v\u00e4ga kalliks \u2013 113 rubla tunni kohta \u2013 ja v\u00f5ttis kasumist \u00e4ra.<\/p>\n<p>Siis 2015. aastal integreerisime Voximplanti. Siin oli vajalik j\u00e4lgimisfunktsioon, et teada, kui palju iga\u00fcks r\u00e4\u00e4gib, ja lahendus oli oluliselt odavam: ainult helisalvestuse korral maksis see 20 rubla tunni eest. Siiski t\u00f6\u00f6tas see ainult UDP kaudu, TCP-le switchimist ei osanud. Sellegipoolest kasutas seda l\u00f5puks umbes 40% \u00f5pilastest.<\/p>\n<p>Aasta p\u00e4rast hakkasid meie juurde tulema ettev\u00f5tteklientidega, kellel olid oma spetsiifilised n\u00f5udmised. N\u00e4iteks peab k\u00f5ik toimima l\u00e4bi brauseri, ettev\u00f5ttes on avatud vaid http ja https; st. ei mingit 'Skype'i' ja UDP-d. Ettev\u00f5tteklient = raha, seet\u00f5ttu p\u00f6\u00f6rdusime tagasi Tokboxi juurde, kuid hinna probleem p\u00fcsis.<\/p>\n<h2 id=\"reshenie----webrtc-i-janus\">Lahendus \u2014 WebRTC ja Janus<\/h2>\n<p>Otsustasime kasutada <noindex><a rel=\"nofollow\" href=\"https:\/\/webrtc.org\/\">brauserip\u00f5hist WebRTC peer-to-peer videok\u00f5nesid<\/a><\/noindex>. See vastutab \u00fchenduse loomise, voogude kodeerimise ja dekodeerimise, rajate s\u00fcnkroniseerimise ning kvaliteedi kontrollimise ja v\u00f5rgu t\u00f5rgete k\u00e4sitlemise eest. Omalt poolt peame tagama voogude lugemise kaamerast ja mikrofonist, video joonistamise, \u00fchenduse haldamise, WebRTC \u00fchenduse loomise ja voogude edastamise, samuti signaalis\u00f5numite vahetamise klientide vahel \u00fchenduse loomiseks (WebRTC m\u00e4\u00e4ratleb vaid andmeformaadi, kuid mitte edastamismehhanismi). Kui kliendid asuvad NAT-i taga, \u00fchendab WebRTC STUN-serverid; kui see ei aita, siis TURN-serverid.<\/p>\n<p>Tavaliselt piisab meile p2p-\u00fchendusest, kuid soovime salvestada \u00f5ppetunde edasiseks anal\u00fc\u00fcsiks kaebuste korral. Seet\u00f5ttu edastame WebRTC vooge edasiandja kaudu. <noindex><a rel=\"nofollow\" href=\"https:\/\/janus.conf.meetecho.com\/\">Meetecho Janus Gateway<\/a><\/noindex>. Tulemusena ei tea kliendid \u00fcksteise aadresse, n\u00e4hes ainult Januse serveri aadressi; see t\u00e4idab ka signaaliserveri funktsioone. Janusel on palju vajalikke funktsioone: see l\u00e4heb automaatselt TCP-le, kui UDP on kliendi jaoks blokeeritud; oskab salvestada nii UDP kui ka TCP vooge; on skaleeritav; ja seal on isegi sisseehitatud plugin kaja testimiseks. Vajadusel \u00fchendatakse automaatselt Twilio STUN ja TURN serverid.<\/p>\n<p>2017. aasta suvel t\u00f6\u00f6tas meil kaks Januse serverit ning lisas server, et t\u00f6\u00f6tleda salvestatud toormaterjali helis ja videos, et mitte h\u00f5ivata peamiste protsessorite ressursse. \u00dchendamisel valiti Januse serverid paaris-\u00fche kaupa (\u00fchenduse number). Tol ajal piisab sellest meie arust, andes umbes neli korda suurema varu, rakendamise protsent oli umbes 80%. Samuti langes hind ~2 rubla \u00f5ppetunni kohta, pluss arendamine ja tugi.<\/p>\n<p><img decoding=\"async\" alt=\"Skype&#039;ist kuni WebRTC-ni: kuidas me korraldasime video side veebis\" src=\"\/wp-content\/uploads\/2019\/04\/fd1cd47a6625f1ddaa20ed2a6067be60.jpg\" style=\"display:block;margin: 0 auto;\"><\/p>\n<h2 id=\"vozvraschenie-k-teme-videosvyazi\">Tagasi videok\u00f5nede teema juurde<\/h2>\n<p>Me pide, et muretsime pidevalt \u00f5pilaste ja \u00f5petajate tagasiside \u00fcle, et \u00f5igeaegselt tuvastada ja lahendada probleeme. Suveks 2018 oli hirenud probleemide seas esikohal kvaliteet. \u00dchelt poolt t\u00e4hendas see, et olime teiste puudustega edukalt toime tulnud. Teiselt poolt tuli kiiresti midagi ette v\u00f5tta: kui tund katkeb, riskime selle maksumuse kaotamisega, m\u00f5nikord koos j\u00e4rgmise paketi ostmise maksumusega, ja kui katkeb sissejuhatav tund \u2013 siis kaotame potentsiaalse kliendi.<\/p>\n<p>Tol hetkel oli meie videok\u00f5ne j\u00e4tkuvalt MVP-re\u017eiimis. Lihtsalt \u00f6eldes, k\u00e4ivitasime, see t\u00f6\u00f6tas, skaleerisime korra, m\u00f5istsime, kuidas seda teha \u2013 no ja h\u00e4sti. If it works, don\u2019t fix it. Keegi ei tegelenud sihip\u00e4raselt kvaliteedi k\u00fcsimusega. Augustiks sai selgeks, et nii edasi minna ei saa, ja alustasime eraldi suunaga, et aru saada, mis meie WebRTC ja Janusega ikkagi valesti on.<\/p>\n<p>Selle suuna alguses oli: MVP lahendus, m\u00f5\u00f5dikud puuduvad, eesm\u00e4rgid puuduvad, parendusprotsessid puuduvad, samas 7% \u00f5petajatest kurdavad kvaliteedi \u00fcle (andmed \u00f5pilaste kohta puudusid samuti).<\/p>\n<p><img decoding=\"async\" alt=\"Skype&#039;ist kuni WebRTC-ni: kuidas me korraldasime video side veebis\" src=\"\/wp-content\/uploads\/2019\/04\/f8134229567f1187b00ec5c21a79800c.jpg\" style=\"display:block;margin: 0 auto;\"><\/p>\n<h2 id=\"novoe-napravlenie-beretsya-za-rabotu\">Uus suund on t\u00f6\u00f6s<\/h2>\n<p>K\u00e4sk n\u00e4eb v\u00e4lja umbes nii:<\/p>\n<ul>\n<li>Suuna juhiks on peamine arendaja.<\/li>\n<li>QA aitab testida muudatusi, otsides uusi viise ebastabiilsete \u00fchendustingimuste loomiseks ning teavitades eesliinil esinevatest probleemidest.<\/li>\n<li>Anal\u00fc\u00fctik otsib pidevalt erinevaid korrelatsioone tehnilistes andmetes, parandab kasutajate tagasiside anal\u00fc\u00fcsi ning kontrollib katsete tulemusi.<\/li>\n<li>Tootejuht aitab \u00fcldise suuna m\u00e4\u00e4ramisel ning ressursside eraldamisel katsetamiseks.<\/li>\n<li>Koodi kirjutamise ja seotud \u00fclesannetega aitab sageli teine arendaja.<\/li>\n<\/ul>\n<p>Alguses seati \u00fcles usaldusv\u00e4\u00e4rne m\u00f5\u00f5dik, mis j\u00e4lgis side kvaliteedi hindamisi (keskmised p\u00e4evade, n\u00e4dalate ja kuude kaupa). Sellel hetkel olid hindajad \u00f5petajad, hiljem lisandusid ka hinnangud tudengitelt. Edasi hakati formuleerima h\u00fcpoteese selle kohta, mis ei toimi, parandama ja j\u00e4lgima d\u00fcnaamikas toimuvaid muudatusi. Alustati madala rippuvate viljade korjamisega: n\u00e4iteks vahetati kodek vp8 kodeki vp9 vastu, tulemused paranesid. Katsetati Januse seadistustega, tehti teisi katseid \u2013 enamasti tulemusi andmata.<\/p>\n<p>Teises etapis tekkis h\u00fcpotees: WebRTC on peer-to-peer lahendus, kuid kasutame serverit keskel. Kas probleem peitub siin? Alustasime uurimist ja leidsime siit praegu k\u00f5ige olulisema t\u00e4iustuse.<\/p>\n<p>Sel hetkel valiti server krundi seest \u00fcsna primitiivse algoritmi kaudu: igal \u00fchel oli oma 'kaal', mis s\u00f5ltus kanalist ja j\u00f5udlustest, ning me p\u00fc\u00fcdsime suunata kasutajad sinna, kus 'kaal' oli suurem, p\u00f6\u00f6ramata t\u00e4helepanu sellele, kus geograafiliselt kasutaja asub. Selle tulemusena v\u00f5is \u00f5petaja Peterburist suhelda \u00f5pilasega Siberist l\u00e4bi Moskva, mitte meie Janus-serveri kaudu Peterburis.<\/p>\n<p>Algritm on \u00fcmber tehtud: n\u00fc\u00fcd, kui kasutaja avab meie platvormi, kogume Ajax'i abil tema pingeid k\u00f5ikide serveritega. Suhtlemise loomisel valime paari pinget (\u00f5petaja-server ja \u00f5pilane-server), mille summa on v\u00e4ikseim. V\u00e4hem pinget \u2013 v\u00e4iksem v\u00f5rgu kaugus serverisse; l\u00fchem kaugus \u2013 madalam paketikaotuse t\u00f5en\u00e4osus; paketikaotused \u2013 suurim negatiivne tegur videosides. Negatiivsete osakaal kolme kuu jooksul v\u00e4henes kaks korda (aususe nimel toimusid sel ajal ka teised eksperimendid, kuid see m\u00f5jutas ilmselt k\u00f5ige rohkem).<\/p>\n<p><img decoding=\"async\" alt=\"Skype&#039;ist kuni WebRTC-ni: kuidas me korraldasime video side veebis\" src=\"\/wp-content\/uploads\/2019\/04\/a106f7701b34c03080251710adf2a7a0.jpg\" style=\"display:block;margin: 0 auto;\"><\/p>\n<p><img decoding=\"async\" alt=\"Skype&#039;ist kuni WebRTC-ni: kuidas me korraldasime video side veebis\" src=\"\/wp-content\/uploads\/2019\/04\/2cd6782e5f4182004a0c0d9dd05dba5b.jpg\" style=\"display:block;margin: 0 auto;\"><\/p>\n<p>Hiljuti avastasime veel \u00fche, esmapilgul mitteilmse, kuid n\u00e4iliselt olulise asja: \u00fche suure Janus-serveri asemel on parem kasutada kahte v\u00e4iksemat, millel on madalam l\u00e4bilaskev\u00f5ime. See selgus p\u00e4rast seda, kui ostsime just v\u00f5imsad masinad, lootuses mahutada sinna v\u00f5imalikult palju ruume (\u00fchend seansse) korraga. Serveritel on l\u00e4bilaskev\u00f5ime piirang, mille saame t\u00e4pselt t\u00f5lkida ruumide arvuks \u2014 me teame, mitu saame avada n\u00e4iteks 300 Mbit\/s. Kui serveris on avatud liiga palju ruume, l\u00f5petame selle uute tegevuste valimise, kuni koormus v\u00e4heneb. Idee oli see, et ostes v\u00f5imsa masina, saame kanali maksimaalselt koormata, et l\u00f5puks j\u00f5uda protsessori ja m\u00e4lu piirini, mitte l\u00e4bilaskev\u00f5ime piirini. Kuid selgus, et p\u00e4rast teatud arvu avatud ruumide (420) ilmuvad tehnilisse tugi negatiivsed tagasisided, kuigi protsessori, m\u00e4lu ja ketta koormus on veel kaugel piiridest. N\u00e4ib, et Janus sees on midagi halvem, v\u00f5ib-olla on seal ka mingid piirangud. Alustasime katsetamist, v\u00e4hendasime l\u00e4bilaskev\u00f5ime piiri 300-lt 200 Mbit\/s-le, probleemid kadusid. N\u00fc\u00fcd ostsime kohe kolm uut serverit, millel on madalad piirangud ja omadused, lootes, et see toob kaasa kvaliteedi stabiilse paranemise. Loomulikult ei hakanud me aru saama, mis seal toimus, tugimehanismid \u2014 on meie k\u00f5ik. Meie \u00f5igustuseks v\u00f5ib \u00f6elda, et tookord tuli kiiresti lahendada v\u00e4gisi probleem, mitte teha seda ilusasti; pealegi on Janus meie jaoks must kast, kirjutatud C-s, tema kallale minek on v\u00e4ga kallis.<\/p>\n<p><img decoding=\"async\" alt=\"Skype&#039;ist kuni WebRTC-ni: kuidas me korraldasime video side veebis\" src=\"\/wp-content\/uploads\/2019\/04\/21ad5290ed3e40bdf0b26dfb5c20cdf8.jpg\" style=\"display:block;margin: 0 auto;\"><\/p>\n<p>Protsessi k\u00e4igus oleme:<\/p>\n<ul>\n<li>uuendanud k\u00f5iki s\u00f5ltuvusi, mida oli v\u00f5imalik uuendada nii serveris kui ka kliendis (need olid ka eksperimendid, j\u00e4lgisime tulemusi);<\/li>\n<li>parandanud k\u00f5ik tuvastatud vead, mis puudutasid konkreetseid juhtumeid, n\u00e4iteks kui \u00fchendus katkeb ja ei taastu automaatselt;<\/li>\n<li>teinud rohkelt kohtumisi ettev\u00f5tetega, kes t\u00f6\u00f6tavad videok\u00f5nede valdkonnas ja tunnevad meie probleeme: m\u00e4ngude voogedastamisega, veebiseminaride korraldamisega; proovisime k\u00f5ike, mis tundus kasulik;<\/li>\n<li>viinud l\u00e4bi tehnilise \u00fclevaate seadmete ja \u00fchenduse kvaliteedi kohta \u00f5petajate hulgas, kellelt tuli k\u00f5ige rohkem kaebusi.<\/li>\n<\/ul>\n<p>Tehtud eksperimendid ja neile j\u00e4rgnenud muudatused v\u00e4hendasid \u00f5petajate rahulolematust \u00fchenduse \u00fcle jaanuaris 2018 7,1%lt jaanuaris 2019 2,5%le.<\/p>\n<h2 id=\"chto-dalshe\">Mis edasi<\/h2>\n<p>Vimboxi platvormi stabiliseerimine on 2019. aasta peamine projekt. Me loodame, et suudame s\u00e4ilitada d\u00fcnaamika ja et videok\u00f5ned ei paista enam kaebuste tipus. M\u00f5istame, et m\u00e4rkimisv\u00e4\u00e4rne osa neist kaebustest on seotud kasutajate arvutite ja interneti viivitustega, kuid peame kindlaks m\u00e4\u00e4rama selle osa ja lahendama k\u00f5ik \u00fclej\u00e4\u00e4nud. K\u00f5ik muu on tehniline probleem, millega peaksime olema v\u00f5imelised toime tulema.<\/p>\n<p>Peamine raskus seisneb selles, et me ei tea, kui palju kvaliteeti \u00fcldse parandada on v\u00f5imalik. Selle \u00fclemise piiri v\u00e4ljaselgitamine on meie peamine \u00fclesanne. Seep\u00e4rast on planeeritud kaks eksperimenti:<\/p>\n<ol>\n<li>kui v\u00f5rrelda videot Januse kaudu tavalise p2p-ga lahingutingimustes. See eksperiment on juba l\u00e4bi viidud ja meie lahenduse ning p2p vahel ei leitud statistiliselt olulisi erinevusi;<\/li>\n<li>oleme (kallid) teenused, mis on v\u00e4lja t\u00f6\u00f6tatud ettev\u00f5tete poolt, kes teenivad eranditult tulu videok\u00f5nede lahendustest, ja v\u00f5rrelda nende negatiivsust meie olemasolevaga.<\/li>\n<\/ol>\n<p>Need kaks eksperimenti v\u00f5imaldavad meil kindlaks teha saavutatava eesm\u00e4rgi ja keskenduda sellele.<\/p>\n<p>Lisaks on rida \u00fclesandeid, mis lahendatakse t\u00f6\u00f6korras:<\/p>\n<ul>\n<li>loome tehnilise kvaliteedi m\u00f5\u00f5diku asemel subjektiivsete arvamustega;<\/li>\n<li>teeme p\u00f5hjalikumaid sessiooniloge, et t\u00e4psemalt anal\u00fc\u00fcsida juhuslikke t\u00f5rkeid, m\u00f5ista, millal ja kus need t\u00e4pselt tekkisid, ning millised esmapilgul omavahel mitte seotud s\u00fcndmused toimusid sel ajal;<\/li>\n<li>valmistame ette automaatse \u00fchenduse kvaliteedi testi enne tundi ja anname kliendile v\u00f5imaluse manuaalselt \u00fchendust testida, et v\u00e4hendada negatiivsete tagasiside hulka, mis v\u00f5ib tuleneda tema riistvarast ja kanallist;<\/li>\n<li>arendame ja viime l\u00e4bi rohkem video\u00fchenduse koormusteste halbadest tingimustest, muutuva pakettide kaotusega jne;<\/li>\n<li>muudame serverite k\u00e4itumist probleemide korral usaldusv\u00e4\u00e4rsuse t\u00f5stmiseks;<\/li>\n<li>hoiame kasutajat kursis, kui tema \u00fchendusega on midagi valesti, nagu seda teeb ka Skype, et ta m\u00f5istaks, et probleem on tema poolel.<\/li>\n<\/ul>\n<p>Alates aprillist muutub videok\u00f5ne suund t\u00e4ielikuks eraldi projektiks Skyengis, mis tegeleb oma tootega, mitte lihtsalt osa Vimboxist. See t\u00e4hendab, et hakkame otsima inimesi <noindex><a rel=\"nofollow\" href=\"https:\/\/spb.hh.ru\/vacancy\/30766332\">t\u00e4iskohaga videoga t\u00f6\u00f6tamiseks<\/a><\/noindex>. Noh ja nagu alati <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/skyeng\/blog\/446444\/\">otsime palju h\u00e4id inimesi<\/a><\/noindex>.<\/p>\n<p>Ja, me j\u00e4tkame aktiivset suhtlemist inimestega ja ettev\u00f5tetega, kes tegutsevad videok\u00f5nede valdkonnas. Kui soovite meiega kogemusi jagada, siis oleme r\u00f5\u00f5msad! Kommenteerige, v\u00f5tke \u00fchendust \u2014 vastame k\u00f5igile.<\/p>\n<p>Allikas: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/skyeng\/blog\/446444\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0412\u0438\u0434\u0435\u043e\u0441\u0432\u044f\u0437\u044c \u2014 \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0439 \u0441\u043f\u043e\u0441\u043e\u0431 \u043e\u0431\u0449\u0435\u043d\u0438\u044f \u043f\u0440\u0435\u043f\u043e\u0434\u0430\u0432\u0430\u0442\u0435\u043b\u044f \u0438 \u0441\u0442\u0443\u0434\u0435\u043d\u0442\u0430 \u043d\u0430 \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u0435 Vimbox. \u041c\u044b \u0434\u0430\u0432\u043d\u043e \u043e\u0442\u043a\u0430\u0437\u0430\u043b\u0438\u0441\u044c \u043e\u0442 Skype, \u043f\u0435\u0440\u0435\u043f\u0440\u043e\u0431\u043e\u0432\u0430\u043b\u0438 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0441\u0442\u043e\u0440\u043e\u043d\u043d\u0438\u0445 \u0440\u0435\u0448\u0435\u043d\u0438\u0439 \u0438 \u0432 \u0438\u0442\u043e\u0433\u0435 \u043e\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u043b\u0438\u0441\u044c \u043d\u0430 \u0441\u0432\u044f\u0437\u043a\u0435 WebRTC \u2014 Janus-gateway. \u041d\u0435\u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u0432\u0440\u0435\u043c\u044f \u043d\u0430\u0441 \u0432\u0441\u0435 \u0443\u0441\u0442\u0440\u0430\u0438\u0432\u0430\u043b\u043e, \u043d\u043e \u0432\u0441\u0435 \u0436\u0435 \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043d\u0435\u0433\u0430\u0442\u0438\u0432\u043d\u044b\u0435 \u043c\u043e\u043c\u0435\u043d\u0442\u044b \u043f\u0440\u043e\u0434\u043e\u043b\u0436\u0430\u043b\u0438 \u0432\u044b\u043b\u0435\u0437\u0430\u0442\u044c. \u0412 \u0438\u0442\u043e\u0433\u0435 \u0431\u044b\u043b\u043e \u0441\u043e\u0437\u0434\u0430\u043d\u043e \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u043e\u0435 \u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043f\u043e \u0432\u0438\u0434\u0435\u043e. \u042f \u043f\u043e\u043f\u0440\u043e\u0441\u0438\u043b \u041a\u0438\u0440\u0438\u043b\u043b\u0430 \u0420\u043e\u0433\u043e\u0432\u043e\u0433\u043e, \u0440\u0443\u043a\u043e\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044f [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":22826,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-30842","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 4.9.10 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0412\u0438\u0434\u0435\u043e\u0441\u0432\u044f\u0437\u044c \u2014 \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0439 \u0441\u043f\u043e\u0441\u043e\u0431 \u043e\u0431\u0449\u0435\u043d\u0438\u044f \u043f\u0440\u0435\u043f\u043e\u0434\u0430\u0432\u0430\u0442\u0435\u043b\u044f \u0438 \u0441\u0442\u0443\u0434\u0435\u043d\u0442\u0430 \u043d\u0430 \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u0435 Vimbox. \u041c\u044b \u0434\u0430\u0432\u043d\u043e \u043e\u0442\u043a\u0430\u0437\u0430\u043b\u0438\u0441\u044c \u043e\u0442 Skype, \u043f\u0435\u0440\u0435\u043f\u0440\u043e\u0431\u043e\u0432\u0430\u043b\u0438 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0441\u0442\u043e\u0440\u043e\u043d\u043d\u0438\u0445 \u0440\u0435\u0448\u0435\u043d\u0438\u0439 \u0438 \u0432 \u0438\u0442\u043e\u0433\u0435 \u043e\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u043b\u0438\u0441\u044c \u043d\u0430 \u0441\u0432\u044f\u0437\u043a\u0435 WebRTC \u2014 Janus-gateway. \u041d\u0435\u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u0432\u0440\u0435\u043c\u044f \u043d\u0430\u0441 \u0432\u0441\u0435 \u0443\u0441\u0442\u0440\u0430\u0438\u0432\u0430\u043b\u043e, \u043d\u043e \u0432\u0441\u0435 \u0436\u0435 \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043d\u0435\u0433\u0430\u0442\u0438\u0432\u043d\u044b\u0435 \u043c\u043e\u043c\u0435\u043d\u0442\u044b \u043f\u0440\u043e\u0434\u043e\u043b\u0436\u0430\u043b\u0438 \u0432\u044b\u043b\u0435\u0437\u0430\u0442\u044c. \u0412 \u0438\u0442\u043e\u0433\u0435 \u0431\u044b\u043b\u043e \u0441\u043e\u0437\u0434\u0430\u043d\u043e \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u043e\u0435 \u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043f\u043e \u0432\u0438\u0434\u0435\u043e. \u042f \u043f\u043e\u043f\u0440\u043e\u0441\u0438\u043b \u041a\u0438\u0440\u0438\u043b\u043b\u0430 \u0420\u043e\u0433\u043e\u0432\u043e\u0433\u043e, \u0440\u0443\u043a\u043e\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044f\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/et\/blog\/administrirovanie\/ot-skype-do-webrtc-kak-my-organizovali-videosvyaz-cherez-veb\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 4.9.10\" \/>\n\t\t<meta property=\"og:locale\" content=\"et_EE\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u041e\u0442 Skype \u0434\u043e WebRTC: \u043a\u0430\u043a \u043c\u044b \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u043e\u0432\u0430\u043b\u0438 \u0432\u0438\u0434\u0435\u043e\u0441\u0432\u044f\u0437\u044c \u0447\u0435\u0440\u0435\u0437 \u0432\u0435\u0431 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0412\u0438\u0434\u0435\u043e\u0441\u0432\u044f\u0437\u044c \u2014 \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0439 \u0441\u043f\u043e\u0441\u043e\u0431 \u043e\u0431\u0449\u0435\u043d\u0438\u044f \u043f\u0440\u0435\u043f\u043e\u0434\u0430\u0432\u0430\u0442\u0435\u043b\u044f \u0438 \u0441\u0442\u0443\u0434\u0435\u043d\u0442\u0430 \u043d\u0430 \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u0435 Vimbox. \u041c\u044b \u0434\u0430\u0432\u043d\u043e \u043e\u0442\u043a\u0430\u0437\u0430\u043b\u0438\u0441\u044c \u043e\u0442 Skype, \u043f\u0435\u0440\u0435\u043f\u0440\u043e\u0431\u043e\u0432\u0430\u043b\u0438 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0441\u0442\u043e\u0440\u043e\u043d\u043d\u0438\u0445 \u0440\u0435\u0448\u0435\u043d\u0438\u0439 \u0438 \u0432 \u0438\u0442\u043e\u0433\u0435 \u043e\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u043b\u0438\u0441\u044c \u043d\u0430 \u0441\u0432\u044f\u0437\u043a\u0435 WebRTC \u2014 Janus-gateway. \u041d\u0435\u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u0432\u0440\u0435\u043c\u044f \u043d\u0430\u0441 \u0432\u0441\u0435 \u0443\u0441\u0442\u0440\u0430\u0438\u0432\u0430\u043b\u043e, \u043d\u043e \u0432\u0441\u0435 \u0436\u0435 \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043d\u0435\u0433\u0430\u0442\u0438\u0432\u043d\u044b\u0435 \u043c\u043e\u043c\u0435\u043d\u0442\u044b \u043f\u0440\u043e\u0434\u043e\u043b\u0436\u0430\u043b\u0438 \u0432\u044b\u043b\u0435\u0437\u0430\u0442\u044c. \u0412 \u0438\u0442\u043e\u0433\u0435 \u0431\u044b\u043b\u043e \u0441\u043e\u0437\u0434\u0430\u043d\u043e \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u043e\u0435 \u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043f\u043e \u0432\u0438\u0434\u0435\u043e. \u042f \u043f\u043e\u043f\u0440\u043e\u0441\u0438\u043b \u041a\u0438\u0440\u0438\u043b\u043b\u0430 \u0420\u043e\u0433\u043e\u0432\u043e\u0433\u043e, \u0440\u0443\u043a\u043e\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044f\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/et\/blog\/administrirovanie\/ot-skype-do-webrtc-kak-my-organizovali-videosvyaz-cherez-veb\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2019-10-31T18:37:44+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2021-02-01T09:37:06+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Kuidas me korraldasime videok\u00f5ne veebis: Skype\u2019ist WebRTC-ni | ProHoster","description":"Videok\u00f5ne on peamine suhtlemisviis \u00f5petaja ja \u00f5pilase vahel Vimboxi platvormil. Oleme ammu loobunud Skype'ist, proovinud mitmeid kolmanda osapoole lahendusi, kuid l\u00f5petasime WebRTC - Janus-gateway kombinatsiooni kasutamise. M\u00f5nda aega olime rahul, aga siiski hakkasid m\u00f5ned negatiivsed aspektid esile kerkima. L\u00f5puks loodi eraldi videosuund. Palusin Kirill Rogovilt, juhilt","canonical_url":"https:\/\/prohoster.info\/et\/blog\/administrirovanie\/ot-skype-do-webrtc-kak-my-organizovali-videosvyaz-cherez-veb","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"et_EE","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u041e\u0442 Skype \u0434\u043e WebRTC: \u043a\u0430\u043a \u043c\u044b \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u043e\u0432\u0430\u043b\u0438 \u0432\u0438\u0434\u0435\u043e\u0441\u0432\u044f\u0437\u044c \u0447\u0435\u0440\u0435\u0437 \u0432\u0435\u0431 | ProHoster","og:description":"\u0412\u0438\u0434\u0435\u043e\u0441\u0432\u044f\u0437\u044c \u2014 \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0439 \u0441\u043f\u043e\u0441\u043e\u0431 \u043e\u0431\u0449\u0435\u043d\u0438\u044f \u043f\u0440\u0435\u043f\u043e\u0434\u0430\u0432\u0430\u0442\u0435\u043b\u044f \u0438 \u0441\u0442\u0443\u0434\u0435\u043d\u0442\u0430 \u043d\u0430 \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u0435 Vimbox. \u041c\u044b \u0434\u0430\u0432\u043d\u043e \u043e\u0442\u043a\u0430\u0437\u0430\u043b\u0438\u0441\u044c \u043e\u0442 Skype, \u043f\u0435\u0440\u0435\u043f\u0440\u043e\u0431\u043e\u0432\u0430\u043b\u0438 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0441\u0442\u043e\u0440\u043e\u043d\u043d\u0438\u0445 \u0440\u0435\u0448\u0435\u043d\u0438\u0439 \u0438 \u0432 \u0438\u0442\u043e\u0433\u0435 \u043e\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u043b\u0438\u0441\u044c \u043d\u0430 \u0441\u0432\u044f\u0437\u043a\u0435 WebRTC \u2014 Janus-gateway. \u041d\u0435\u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u0432\u0440\u0435\u043c\u044f \u043d\u0430\u0441 \u0432\u0441\u0435 \u0443\u0441\u0442\u0440\u0430\u0438\u0432\u0430\u043b\u043e, \u043d\u043e \u0432\u0441\u0435 \u0436\u0435 \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043d\u0435\u0433\u0430\u0442\u0438\u0432\u043d\u044b\u0435 \u043c\u043e\u043c\u0435\u043d\u0442\u044b \u043f\u0440\u043e\u0434\u043e\u043b\u0436\u0430\u043b\u0438 \u0432\u044b\u043b\u0435\u0437\u0430\u0442\u044c. \u0412 \u0438\u0442\u043e\u0433\u0435 \u0431\u044b\u043b\u043e \u0441\u043e\u0437\u0434\u0430\u043d\u043e \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u043e\u0435 \u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043f\u043e \u0432\u0438\u0434\u0435\u043e. \u042f \u043f\u043e\u043f\u0440\u043e\u0441\u0438\u043b \u041a\u0438\u0440\u0438\u043b\u043b\u0430 \u0420\u043e\u0433\u043e\u0432\u043e\u0433\u043e, \u0440\u0443\u043a\u043e\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044f","og:url":"https:\/\/prohoster.info\/et\/blog\/administrirovanie\/ot-skype-do-webrtc-kak-my-organizovali-videosvyaz-cherez-veb","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2019-10-31T18:37:44+00:00","article:modified_time":"2021-02-01T09:37:06+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"30842","title":null,"description":"","keywords":"","keyphrases":null,"primary_term":null,"canonical_url":"","og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":"2026-01-21 03:14:20","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-03-01 03:28:46","updated":"2026-01-21 03:14:20"},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/posts\/30842","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/comments?post=30842"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/posts\/30842\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/media\/22826"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/media?parent=30842"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/categories?post=30842"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/tags?post=30842"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}