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

Có thêm tin vui từ người bạn cũ của chúng ta là WebRTC.

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

RTCDataChannel cho Chrome

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

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

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

Để biết thêm thông tin về RTCDataChannel, hãy xem Bắt đầu với 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.

Để tìm hiểu nhanh về cách hoạt động của MediaStream trong thực tế, hãy xem bản minh hoạ simpl.info/gum getUserMedia. Biến stream nằm trong phạm vi toàn cầu: hãy kiểm tra biến này từ bảng điều khiển. Tương tự đố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, Chrome giờ đây có thể "trò chuyện" với Firefox.

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

Mẹo hay dành cho những nhân viên tại Mozilla và Google, những người đã làm nên tất cả.

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