1. Giới thiệu khóa học
Chào mừng bạn đến với khóa học Lập trình Rust với VoIP - Phần 1: WebRTC Peer-to-Peer
Đây là series thực chiến giúp bạn xây dựng từ đầu một Signaling Server
→ Xử lý các cuộc gọi audio/video trực tiếp giữa hai trình duyệt
→ Không cần thông qua Media Server
--------------------------------------------------
2. Nội dung chính trong video
(1) Mục tiêu khóa học:
Xây dựng hoàn chỉnh một Signaling Server bằng Rust
→ Thiết lập kết nối P2P giữa hai trình duyệt
(2) Kiến trúc hệ thống:
Browser A gửi SDP Offer qua Rust Server → chuyển tiếp đến Browser B
Trao đổi ICE Candidates để tìm đường kết nối tối ưu
(3) Media Exchange (RTP):
Dữ liệu audio/video truyền trực tiếp giữa 2 browser
Rust Server không can thiệp vào luồng media
--------------------------------------------------
3. Kiến trúc tổng thể
Browser A ↔ Rust Server (WebSocket) ↔ Browser B
Browser A ⇄ P2P Media ⇄ Browser B
Lưu ý:
Media không đi qua server
→ Chỉ signaling đi qua Rust backend
--------------------------------------------------
4. Tech stack sử dụng
Rust
Axum + Tokio (backend)
WebSocket
MongoDB
JWT Authentication
--------------------------------------------------
5. Lộ trình series (7 phần)
Phần 1 (hiện tại): WebRTC Peer-to-Peer
Phần 2 - 6: Làm việc với Media Server
Janus
LiveKit
Kurento
Asterisk
FreePBX
Phần 7: CRM, Queue, nhạc chờ, chuyển tiếp cuộc gọi
--------------------------------------------------
6. Kết quả sau khóa học
Bạn sẽ có:
Một signaling server hoàn chỉnh
Cho phép 2 browser thực hiện audio call P2P thực tế
--------------------------------------------------
7. Yêu cầu tiên quyết
Bạn nên có kiến thức cơ bản về Rust:
Ownership
Lifetimes
Traits
Async/Await
--------------------------------------------------
8. Kêu gọi hành động
Hãy bắt đầu hành trình chinh phục VoIP và WebRTC bằng Rust ngay hôm nay
--------------------------------------------------
9. Xem full series
• Rust WebRTC P2P
10. Website
https://bytebuffer.co/lessons/rust-we...