Chuyển máy chủ

Để hầu hết các ứng dụng WebRTC hoạt động được, bạn cần phải có máy chủ để chuyển tiếp dữ liệu lưu lượng truy cập giữa các ứng dụng ngang hàng, do thường không thể kết nối trực tiếp giữa khách hàng (trừ khi họ thuộc cùng một mạng cục bộ). Cách giải quyết phổ biến thực hiện bằng cách sử dụng máy chủ TURN. Thuật ngữ này là viết tắt của Traversal (Truyền tải bằng cách sử dụng trình chuyển tiếp) xung quanh NAT và đây là một giao thức để chuyển tiếp lưu lượng truy cập mạng.

Hiện tại, có một số lựa chọn cho máy chủ TURN đang hoạt động trên mạng, cả các ứng dụng tự lưu trữ (như dự án COTURN nguồn mở) và dưới dạng đám mây các dịch vụ được cung cấp.

Sau khi có máy chủ TURN trên mạng, bạn chỉ cần RTCConfiguration để ứng dụng của bạn sử dụng. Mã sau đây đoạn mã minh hoạ cấu hình mẫu cho RTCPeerConnection trong đó Máy chủ TURN có tên máy chủ my-turn-server.mycompany.com và đang chạy trên cổng 19403. Đối tượng cấu hình cũng hỗ trợ usernamecredential để bảo vệ quyền truy cập vào máy chủ. Đây là bắt buộc khi kết nối với máy chủ TURN.

const iceConfiguration = {
    iceServers: [
        {
            urls: 'turn:my-turn-server.mycompany.com:19403',
            username: 'optional-username',
            credential: 'auth-token'
        }
    ]
}

const peerConnection = new RTCPeerConnection(iceConfiguration);