WebRTC – wersja demonstracyjna RTCDataChannel, zmiany w interfejsie API, a Chrome komunikuje się z Firefoksem

Więcej dobrych wieści od naszego starego znajomego WebRTC.

A dokładniej: trzy dobre wieści i kilka drobnych zmian w interfejsie API.

RTCDataChannel dla Chrome

Kanał RTCDataChannel został zaimplementowany w Chrome. Na stronie simpl.info/dc znajdziesz świetną prezentację.

Ta prezentacja pokazuje komunikację peer-to-peer w przypadku dowolnych danych przy użyciu mniej niż 100 wierszy kodu. Aby to zrobić, musisz mieć Chrome w wersji 25 lub nowszej – w tym momencie oznacza to Beta lub Canary.

RTCDataChannel wykorzystuje wszystkie funkcje wbudowane w RTCPeerConnection, a także wykorzystanie platformy ICE do łączenia się przez zapory sieciowe i sieci NAT. Ma też wiele potencjalnych zastosowań, w których kluczowe znaczenie ma krótki czas oczekiwania: gry, aplikacje pulpitu zdalnego, czat tekstowy w czasie rzeczywistym i przesyłanie plików.

Więcej informacji o RTCDataChannel znajdziesz w artykule Pierwsze kroki z WebRTC.

Zmiany w interfejsie API

Mniej ekscytujące, ale wciąż ważne: w Chrome 26 niektóre właściwości RTCPeerConnection i MediaStream API zostały przekształcone w metody getter:

  1. MediaStream ma teraz metodę getAudioTracks() zamiast właściwości audioTracks i getVideoTracks() zamiast videoTracks.
  2. RTCPeerConnection ma teraz getLocalStreams() zamiast localStreams i getRemoteStreams() zamiast remoteStreams.

Aby zobaczyć, jak działa MediaStream, obejrzyj prezentację simpl.info/gum getUserMedia. Zmienna stream jest w zakresie globalnym – sprawdź ją w konsoli. Podobnie w przypadku RTCPeerConnection na stronie simpl.info/pc: obiekty RTCPeerConnection pc1 i pc2 są w zakresie globalnym.

Chrome <=> Firefox

Z kolei w przypadku pominięcia tego Chrome może teraz komunikować się z Firefoksem.

Możesz go wypróbować już teraz na stronie webrtc.org/start, która zawiera pełne instrukcje, linki do kodu źródłowego oraz informacje o różnicach w interfejsie API.

Wyróżnienie dla użytkownika Mozilli i Google

Miłego programowania! Jeśli pojawią się jakieś błędy, daj nam znać w komentarzu do tego posta lub na stronie bugs.chromium.org. Aktualne informacje o implementacji znajdziesz na stronie chromestatus.com.