WebRTC - Bản minh hoạ RTCDataChannel, thay đổi API... và Chrome giao tiếp với Firefox

Một tin vui khác về WebRTC.

Chính xác là: 3 tin vui và một số thay đổi nhỏ về API.

RTCDataChannel cho Chrome

RTCDataChannel đã được triển khai trong Chrome và có một bản minh hoạ nhỏ tuyệt vời tại simpl.info/dc.

Bản minh hoạ này cho thấy hoạt động giao tiếp ngang hàng của dữ liệu tuỳ ý – trong chưa đến 100 dòng mã. Bạn cần có Chrome 25 trở lên để thực hiện việc này, tức là phiên bản Beta hoặc Canary.

RTCDataChannel tận dụng tối đa các tính năng được tích hợp vào RTCPeerConnection – không thể không kể đến việc sử dụng khung ICE để vượt qua tường lửa và NAT – đồng thời có nhiều ứng dụng tiềm năng mà độ trễ thấp là yếu tố quan trọng hàng đầu: cho các trò chơi, ứng dụng máy tính từ xa, trò chuyện bằng văn bản theo thời gian thực và chuyển tệp.

Để biết thêm thông tin về RTCDataChannel, hãy xem bài viết Bắt đầu sử dụng WebRTC.

Nội dung thay đổi đối với API

Ít thú vị hơn nhưng vẫn quan trọng: từ Chrome 26, một số thuộc tính RTCPeerConnection và MediaStream API đã trở thành phương thức getter:

  1. MediaStream hiện có phương thức getAudioTracks() thay vì thuộc tính audioTracks và getVideoTracks() thay vì videoTracks.
  2. RTCPeerConnection hiện có getLocalStreams() thay vì localStreamsgetRemoteStreams() thay vì remoteStreams.

Để biết sơ lược về MediaStream trong thực tế, hãy xem bản minh hoạ getUserMedia simpl.info/gum. Biến stream nằm trong phạm vi toàn cục: kiểm tra biến này từ bảng điều khiển. Tương tự như vậy đối với RTCPeerConnection tại simpl.info/pc: các đối tượng RTCPeerConnection pc1pc2 nằm trong phạm vi toàn cục.

Chrome <=> Firefox

trong trường hợp bạn bỏ lỡ điều này, thì giờ đây, Chrome có thể "trò chuyện" với Firefox.

Bạn có thể thử ngay tại webrtc.org/start. Trang web này có đầy đủ hướng dẫn, đường liên kết đến mã nguồn và thông tin về sự khác biệt giữa các API.

Cảm ơn những người ở Mozilla và Google đã giúp điều này trở thành hiện thực.

Chúc bạn lập trình vui vẻ! Ngoài ra, vui lòng cho chúng tôi biết mọi lỗi bằng cách bình luận trên bài đăng này hoặc tại bugs.chromium.org. Và đừng quên rằng bạn luôn có thể nhận được thông tin triển khai mới nhất từ trang web tuyệt vời chromestatus.com.