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

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

Konkretnie: trzy dobre wieści i kilka drobnych zmian w interfejsie API.

RTCDataChannel dla Chrome

Parametr RTCDataChannel został zaimplementowany w Chrome. Na stronie simpl.info/dc znajdziesz świetną prezentację na ten temat.

Ta wersja demonstracyjna pokazuje komunikację peer-to-peer dowolnych danych w mniej niż 100 wierszach kodu. Aby to zrobić, musisz mieć Chrome w wersji 25 lub nowszej, co oznacza obecnie wersję beta lub Canary.

RTCDataChannel w pełni wykorzystuje wszystkie funkcje wbudowane w RTCPeerConnection, a także użycie platformy ICE do przełączenia się przez zapory sieciowe i serwery NAT. Ma też wiele potencjalnych aplikacji, w których kluczowe znaczenie ma niski czas oczekiwania: do gier, aplikacji pulpitu zdalnego, czatów tekstowych w czasie rzeczywistym i przesyłania 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 stały się metodami getter:

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

Aby zobaczyć, jak działa MediaStream, obejrzyj demonstrację simpl.info/gum getUserMedia. Zmienna stream ma zakres globalny, więc możesz ją sprawdzić w konsoli. Podobnie w przypadku protokołu RTCPeerConnection (simpl.info/pc): obiekty RTCPeerConnection pc1 i pc2 są w zakresie globalnym.

Chrome <=> Firefox,

A jeśli to Ciebie ominęło , Chrome może teraz „mówić” do Firefoksa.

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

Zadowolenie z pracowników Mozilli i Google, którym udało się to osiągnąć.

Powodzenia w kodowaniu! O wszelkich błędach możesz nas informować, komentując tego posta lub odwiedzając stronę bugs.chromium.org. Pamiętaj, że aktualne informacje o implementacji znajdziesz na stronie chromestatus.com.