Tenemos más buenas noticias de nuestro viejo amigo, WebRTC.
Para ser precisos, tenemos tres buenas noticias y un par de cambios menores en la API.
RTCDataChannel para Chrome
RTCDataChannel se implementó en Chrome, y hay una pequeña demostración en simpl.info/dc.
Esta demostración muestra la comunicación entre pares de datos arbitrarios en menos de cien líneas de código. Para esto, necesitarás Chrome 25 o una versión superior, que en este momento significa beta o canary.
RTCDataChannel aprovecha al máximo las funciones integradas en RTCPeerConnection, por ejemplo, el uso del framework ICE para pasar por firewalls y NAT, y cuenta con muchas aplicaciones potenciales en las que la baja latencia es primordial: para videojuegos, aplicaciones de escritorio remoto, chat de texto en tiempo real y transferencia de archivos.
Para obtener más información sobre RTCDataChannel, consulta Cómo comenzar a usar WebRTC.
Cambios en la API
Menos emocionante, pero igual de importante: a partir de Chrome 26, algunas propiedades de la API de RTCPeerConnection y MediaStream se convirtieron en métodos get:
- MediaStream ahora tiene el método
getAudioTracks()
en lugar de la propiedad audioTracks ygetVideoTracks()
en lugar devideoTracks
- RTCPeerConnection ahora tiene
getLocalStreams()
en lugar delocalStreams
, ygetRemoteStreams()
en lugar deremoteStreams
Para ver un vistazo a MediaStream en acción, observa la demostración simpl.info/gum de getUserMedia
. La variable stream
está en alcance global: Examínala desde la consola. Del mismo modo para RTCPeerConnection en simpl.info/pc: los objetos pc1
y pc2
de RTCPeerConnection están en alcance global.
Chrome <=> Firefox
Y en caso que no lo hayas visto , Chrome ahora puede "hablar" con Firefox.
Puedes probarlo ahora mismo en webrtc.org/start. Allí encontrarás instrucciones completas, vínculos al código fuente y datos sobre las diferencias de la API.
Sugerencia para quienes de Mozilla y Google lo hicieron realidad.
¡Feliz codificación! Si encuentras algún error, envíanos un comentario en esta publicación o visita bugs.chromium.org para informarnos. Y no olvides que siempre puedes obtener información actualizada sobre la implementación en el excelente chromestatus.com.