Miesięcznik informatyków i menedżerów IT sektora publicznego

Artur Pęczak

Bezpłatna komunikacja w czasie rzeczywistym

Technologia WebRTC rozszerza zestaw otwartych standardów sieciowych o obsługę komunikacji w czasie rzeczywistym. Użytkownicy mogą prowadzić rozmowy głosowe i wideo bezpośrednio w oknie przeglądarki, bez potrzeby instalowania dodatkowych wtyczek.

Na przestrzeni lat Sieć uległa istotnym przeobrażeniom. Miejsce własnościowych technologii (np. Adobe Flash, ActiveX) zajęły otwarte standardy sieciowe pokroju HTML5 i JavaScript, umożliwiające pisanie responsywnych, interaktywnych witryn internetowych oraz aplikacji webowych. W układance tej brakowało ustandaryzowanych mechanizmów obsługi komunikacji w czasie rzeczywistym, głównie na potrzeby prowadzenia rozmów głosowych oraz wideo. Lukę tę wypełnia WebRTC.

Nowy standard

WebRTC (Web Real-time Communication) pozwala na komunikację w czasie rzeczywistym w przeglądarce internetowej lub aplikacji mobilnej przez JavaScript API. Użytkownicy mogą prowadzić rozmowy i wideokonferencje bezpośrednio w przeglądarce, bez potrzeby instalowania wtyczek albo dedykowanych aplikacji – komunikatorów. Projekt jest rozwijany na zasadach open source ze wsparciem Google, Mozilli czy Opery i natywnie obsługiwany w popularnych przeglądarkach internetowych jako kolejny standard sieciowy. WebRTC wychodzi znacznie dalej poza przeglądarki internetowe na komputerach. Technologia ta zaprojektowana została, aby zapewnić możliwość komunikacji w oparciu o zestaw ustandaryzowanych protokołów na platformach mobilnych czy w urządzeniach IoT.

Wbrew pozorom to wcale nie jest nowy projekt. Wśród aplikacji, w których na szerszą skalę zaadaptowano WebRTC, są znane od lat Google Hangouts, Google Hangouts Meet oraz Facebook Messenger. Wideorozmowy w przeglądarkowej wersji Messengera działają właśnie dzięki WebRTC. Messenger umożliwia szybkie rozpoczęcie rozmowy głosowej lub czatu wideo z drugą osobą, bez instalowania jakichkolwiek wtyczek w przeglądarce, kodeków audio/wideo ani tym bardziej konieczności uruchamiania dodatkowych aplikacji na komputerze lub smartfonie. Wszystko, co należy zrobić, to jawnie zezwolić Messengerowi na dostęp do mikrofonu i kamery internetowej urządzenia. Z zalet WebRTC garściami czerpią również: Discord, UberConference, Amazon Chime, Whereby, Dialpad i wiele innych.

API i kodeki

WebRTC tworzy zestaw komplementarnych protokołów i narzędzi, które wprowadzają mechanizmy komunikacji w czasie rzeczywistym do przeglądarek internetowych. Mowa tutaj o kilku nowych JavaScript API dla programistów aplikacji webowych, ustandaryzowanych mechanizmach bezpieczeństwa (uwierzytelnianie, szyfrowanie), zestawie kodeków audio i wideo oraz mechanizmach pozwalających omijać zapory sieciowe w internecie (NAT Traversal). WebRTC wprowadza do przeglądarek kilka nowych JavaScript API, które ułatwiają programistom włączanie mechanizmów komunikacji głosowej, wideokonferencji, czatów tekstowych czy przesyłania plików w tworzonych aplikacjach webowych. Trzy najważniejsze to getUserMedia(), RTCPeerConnection oraz RTCDataChannel. Pierwsza z nich zapewnia aplikacjom dostęp do kamery i mikrofonu na urządzeniach użytkownika. RTCPeerConnection odpowiada za obsługę bezpośredniego połączenia między stronami oraz strumieniowanie dźwięku i obrazu. RTCDataChannel wprowadza zaś mechanizmy wymiany danych innych niż multimedia. W końcu WebRTC umożliwia również programowanie czatów tekstowych czy funkcji współdzielenia plików na zasadach peer-to-peer.

[...]

Autor zawodowo zajmuje się informatyką. Publikuje w magazynach komputerowych i serwisach internetowych.

Pełna treść artykułu jest dostępna w papierowym wydaniu pisma. Zapraszamy do składania zamówień na prenumeratę i numery archiwalne.
 
 

Polecamy

Biblioteka Informacja Publiczna

Specjalistyczne publikacje książkowe dla pracowników administracji publicznej

więcej