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:
- MediaStream ma teraz metodę
getAudioTracks()
zamiast właściwości audioTracks igetVideoTracks()
zamiastvideoTracks
. - RTCPeerConnection ma teraz
getLocalStreams()
zamiastlocalStreams
igetRemoteStreams()
zamiastremoteStreams
.
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.