Trang này giải thích cách sử dụng API Mạng phân phối nội dung (CDN) tại chỗ của Google Meet Enterprise cho tính năng Phát trực tiếp trên Google Meet.
Giải pháp API được mô tả ở đây cho phép khách hàng sử dụng toàn bộ tập tính chất của eCDN của Meet mà không tiết lộ thông tin IP riêng tư cho Google. Bạn có thể xác định một dịch vụ web mới tại chỗ trong mạng của riêng mình để truyền một mã nhận dạng thay vì thông tin địa chỉ IP riêng tư.
Tổng quan về eCDN của Meet
eCDN được tích hợp vào Meet và tự động bắt đầu trong các sự kiện phát trực tiếp sau khi quản trị viên Google Workspace thiết lập eCDN. Khi eCDN của Meet được bật, người xem sự kiện phát trực tiếp trong một mạng cục bộ có thể chia sẻ nội dung đa phương tiện phát trực tiếp với những người ngang hàng khác trong mạng thông qua tính năng chia sẻ ngang hàng (P2P). Hầu hết các thiết bị đều nhận nội dung đa phương tiện phát trực tiếp từ những người ngang hàng ở gần và không cần tìm nạp nội dung đó từ máy chủ của Google. Điều này giúp giảm tổng băng thông mà người xem sử dụng. Để biết thêm thông tin về cách thiết lập và sử dụng eCDN của Meet, hãy xem bài viết Tổ chức sự kiện phát trực tiếp quy mô lớn.
eCDN yêu cầu người xem sự kiện Phát trực tiếp trên Meet phải được sắp xếp thành các nhóm ngang hàng. Nhóm ngang hàng là một tập hợp các nút được phép chia sẻ nội dung đa phương tiện với nhau. Các thiết bị trong một nhóm ngang hàng được phép kết nối ngang hàng hoặc bị chặn kết nối ngang hàng. Các thiết bị được phép chỉ có thể kết nối với các thiết bị khác trong cùng một nhóm ngang hàng. Để biết thêm thông tin về các nhóm ngang hàng, hãy xem bài viết Trước khi bắt đầu tổ chức sự kiện phát trực tiếp quy mô lớn.
Thời điểm sử dụng API
eCDN có thể tạo các nhóm ngang hàng bằng một số chính sách kết nối ngang hàng khác nhau: random, subnet hoặc custom rules. Chính sách sau chia sẻ một bảng gồm các dải mạng riêng tư với máy chủ theo dõi eCDN của Google để ánh xạ địa chỉ IP riêng tư của từng nút ngang hàng với một nhóm ngang hàng. Chính sách custom rules là giải pháp ưu tiên và phù hợp với hầu hết các môi trường sản xuất.
Tuy nhiên, chính sách custom rules yêu cầu bạn chia sẻ các phần lớn trong cấu trúc mạng riêng tư của mình với Google. Ngoài ra, người dùng cá nhân sẽ tiết lộ địa chỉ IP riêng tư được phát hiện cục bộ của họ cho Google khi sử dụng eCDN. Đối với một số tổ chức, nguyên tắc bảo mật của họ có thể không cho phép chia sẻ thông tin IP riêng tư.
Phát triển bằng API eCDN của Meet tại chỗ
API eCDN của Meet tại chỗ cung cấp một thông số kỹ thuật về máy chủ web mà bạn có thể triển khai và lưu trữ cục bộ trong mạng của tổ chức. Bạn có thể tạo một dịch vụ web tuỳ chỉnh tương thích với API để thực hiện tất cả các tác vụ phụ thuộc vào thông tin IP riêng tư, nhờ đó, thông tin này không được chia sẻ với Google.
API này bao gồm 2 bước quan trọng để so khớp các địa chỉ IP riêng tư thường do máy chủ theo dõi eCDN xử lý: ánh xạ địa chỉ IP riêng tư với một nhóm ngang hàng và trao đổi dữ liệu đề xuất-trả lời Giao thức mô tả phiên (SDP) trong quá trình báo hiệu WebRTC.
Sau khi hoàn tất dịch vụ web, bạn phải định cấu hình
Bảng điều khiển dành cho quản trị viên để sử dụng chính sách kết nối ngang hàng On-premises
service và đưa URL của dịch vụ web tuỳ chỉnh vào.
Yêu cầu
Nếu bạn cần bật bất kỳ yêu cầu nào trong số này cho tổ chức của mình, hãy yêu cầu quản trị viên Google Workspace:
Mọi máy chủ web sử dụng HTTPS đều có thể triển khai API này.
Sử dụng HTTPS để ngăn chặn lỗi nội dung hỗn hợp.
Chấp nhận và trả về dữ liệu JSON. Sử dụng mọi phương thức mã hoá nội dung được trình duyệt của bạn hỗ trợ.
Phân phát các điểm cuối theo tuyến
/vn, trong đónlà phiên bản API đã chọn. Ví dụ:/v1/get-peering-group.Người xem sự kiện Phát trực tiếp trên Meet có thể tìm hiểu về URL của dịch vụ web thông qua Bảng điều khiển dành cho quản trị viên của Google. Bạn có thể đặt URL trên toàn cầu, cho mỗi đơn vị tổ chức hoặc cho mỗi nhóm. Đảm bảo rằng người xem có thể kết nối với phiên bản dịch vụ được chỉ định của họ. Để biết thêm thông tin, hãy xem bài viết Định cấu hình Bảng điều khiển dành cho quản trị viên.
Dịch vụ của bạn phải trả về phản hồi trong vòng 2 giây. Nếu không, ứng dụng eCDN sẽ tắt và người xem sẽ tiếp tục xem sự kiện phát trực tiếp như một người dùng thông thường, không phải eCDN, từ chối mọi mức tiết kiệm băng thông.
Dịch vụ của bạn phải đặt các tiêu đề Chia sẻ tài nguyên trên nhiều nguồn gốc (CORS) sau đây:
Access-Control-Allow-Origin: meet.google.comAccess-Control-Allow-Headers: GET, POST, OPTIONSAccess-Control-Allow-Credentials: true
Ánh xạ địa chỉ IP riêng tư với một nhóm ngang hàng
Ứng dụng eCDN thực hiện một lệnh gọi mỗi khi cố gắng kết nối lại với máy chủ theo dõi eCDN. Sau khi thiết bị phát hiện địa chỉ IP riêng tư, địa chỉ đó phải được ánh xạ với nhóm ngang hàng thích hợp. Bạn phải gửi địa chỉ IP riêng tư đến một máy chủ trên mạng của mình và giải quyết theo cách thủ công đến một nhóm ngang hàng bằng phương thức get-peering-group(). Mã nhóm ngang hàng được trả về trong phản hồi.
Khi giao tiếp với Google, mã nhóm ngang hàng kết quả sẽ được truyền thay vì địa chỉ IP riêng tư.
Mã mẫu sau đây cho biết cách gọi phương thức get-peering-group() cùng với phản hồi lỗi tiềm ẩn và nội dung phản hồi dự kiến:
POST /v1/get-peering-group
Content-Type: application/json
Request body:
{
"availableIPs": []{
"format": "ipv4"|"ipv6",
"address": "DETECTED_ADDRESS"
}
}
Error response:
{
"result": null,
"error": "ERROR_MESSAGE"
}
Response body:
{
"allowed": boolean,
"result": string,
"error": null
}
Bảng sau đây cho biết các định dạng phản hồi dự kiến:
| Trạng thái HTTP | Lỗi | Được phép | Kết quả | Phản ứng của ứng dụng |
|---|---|---|---|---|
| 200 | null | true | Chuỗi không rỗng | Ứng dụng được sắp xếp vào nhóm ngang hàng đã chỉ định và tiếp tục kết nối với máy chủ theo dõi eCDN. |
| 200 | null | false | Chuỗi không rỗng | Ứng dụng được đánh dấu là bị nhóm ngang hàng đã chỉ định chặn, sẽ hiển thị trong Công cụ đánh giá chất lượng của Meet (MQT) và kết thúc phiên eCDN. |
| 200 | null | Chuỗi không có nội dung | Ứng dụng kết thúc phiên eCDN. | |
| 200 | Chuỗi không rỗng | Ứng dụng kết thúc phiên eCDN. | ||
| 302 (Đã tìm thấy) | Ứng dụng tuân theo lệnh chuyển hướng đến URL mới được chỉ định trong tiêu đề Location của nội dung phản hồi. |
|||
| Mọi mã trạng thái khác | Ứng dụng kết thúc phiên eCDN. |
Định dạng phản hồi cũ
Trường allowed không thuộc định dạng phản hồi của các phiên bản trước. Thay vào đó, các giá trị dành riêng đặc biệt cho result sẽ xác định xem địa chỉ IP của người xem có bị chặn kết nối ngang hàng hay không:
Legacy response body:
{
"result": string,
"error": null,
}
Bảng sau đây cho biết các định dạng phản hồi dự kiến nếu trường allowed không được đặt trong thông báo phản hồi:
| Trạng thái HTTP | Lỗi | Kết quả | Phản ứng của ứng dụng |
|---|---|---|---|
| 200 | null | Chuỗi không rỗng | Ứng dụng phải được sắp xếp vào một nhóm ngang hàng và tiếp tục kết nối với máy chủ theo dõi eCDN. |
| 200 | null | NOT_FOUND |
Ứng dụng kết thúc phiên eCDN. |
| 200 | null | BLOCKED |
Ứng dụng kết thúc phiên eCDN. |
| 200 | Chuỗi không rỗng | Ứng dụng kết thúc phiên eCDN. | |
| 302 (Đã tìm thấy) | Ứng dụng tuân theo lệnh chuyển hướng đến URL mới được chỉ định trong tiêu đề Location của nội dung phản hồi. |
||
| Mọi mã trạng thái khác | Ứng dụng kết thúc phiên eCDN. |
Trao đổi dữ liệu đề xuất-trả lời SDP
Để bắt đầu kết nối WebRTC, các thiết bị phải trao đổi đề xuất và câu trả lời SDP, bao gồm cả các ứng viên Thiết lập kết nối tương tác (ICE) chứa thông tin IP riêng tư. Các thiết bị này thực hiện việc đó trong quá trình báo hiệu WebRTC.
Ứng dụng phải mã hoá các ứng viên ICE trong mạng của mình thông qua API eCDN của Meet tại chỗ, bằng phương thức encrypt-sdp(). Phương thức này sử dụng một khoá không bao giờ được tiết lộ cho Google. Sau đó, đề xuất SDP được mã hoá sẽ được gửi đến người ngang hàng bằng máy chủ theo dõi eCDN. Sau đó, người ngang hàng ứng dụng sẽ giải mã thông tin nhận được trong mạng của họ bằng phương thức decrypt-sdp(). Sau đó, Google sẽ chuyển tiếp các đề xuất và câu trả lời giữa những người ngang hàng được kết nối.
Sau khi kết nối được thiết lập bằng API eCDN của Meet tại chỗ, eCDN sẽ hoạt động bình thường. Các ứng dụng ngang hàng định tuyến nội dung đa phương tiện thông qua mạng kết nối ngang hàng thông thường và lưu lượng truy cập nội dung đa phương tiện không truyền qua hoặc sử dụng API.
Mã mẫu sau đây cho biết cách gọi phương thức encrypt-sdp() cùng với phản hồi lỗi tiềm ẩn và nội dung phản hồi dự kiến:
POST /v1/encrypt-sdp
Content-Type: application/json
Request body:
{
"data": "SDP_DATA"
},
Error response:
{
"result": null,
"error": "ERROR_MESSAGE"
}
Response body:
{
"result": "ENCRYPTED_DATA_STRING",
"error": null
}
Mã mẫu sau đây cho biết cách gọi phương thức decrypt-sdp() cùng với phản hồi lỗi tiềm ẩn và nội dung phản hồi dự kiến:
POST /v1/decrypt-sdp
Content-Type: application/json
Request body:
{
"data": "ENCRYPTED_DATA_STRING"
},
Error response:
{
"result": null,
"error": "ERROR_MESSAGE"
}
Response body:
{
"result": "SDP_DATA",
"error": null
}
Bảng sau đây cho biết các định dạng phản hồi dự kiến:
| Trạng thái HTTP | Lỗi | Mã nhóm ngang hàng | Phản ứng của ứng dụng |
|---|---|---|---|
| 200 | null | Chuỗi không rỗng | Ứng dụng mong đợi dữ liệu SDP được mã hoá hoặc giải mã đúng cách để sử dụng. |
| 200 | Mọi chuỗi không rỗng | null | Ứng dụng kết thúc phiên eCDN. |
| 302 (Đã tìm thấy) | Ứng dụng tuân theo lệnh chuyển hướng đến URL mới được chỉ định trong tiêu đề Location của nội dung phản hồi. |
||
| Mọi mã trạng thái khác | Giá trị bất kỳ | Giá trị bất kỳ | Ứng dụng kết thúc phiên eCDN. |
Định cấu hình Bảng điều khiển dành cho quản trị viên
Để sử dụng API eCDN của Meet tại chỗ, bạn phải định cấu hình eCDN trong Bảng điều khiển dành cho quản trị viên để đưa URL của dịch vụ web tuỳ chỉnh vào.
Để đặt eCDN, hãy tạo chính sách kết nối ngang hàng bằng On-premises service để so khớp thông tin IP với các nhóm ngang hàng theo cách thủ công. Bạn cũng có thể đưa số cổng vào nếu không sử dụng cổng 443 mặc định. URL phải khớp với định dạng sau:
WEB_SERVICE.example.com:8080, trong đó WEB_SERVICE là tên dịch vụ web của bạn.
Để biết thêm thông tin về cách đặt chính sách kết nối ngang hàng, hãy xem bài viết Định cấu hình nhóm mạng.
Chủ đề có liên quan
Để tìm hiểu cách sử dụng eCDN của Meet, hãy làm theo các bước trong bài viết Tổ chức sự kiện phát trực tiếp quy mô lớn.
Để tìm hiểu cách thiết lập eCDN, hãy xem bài viết Trước khi bắt đầu tổ chức sự kiện phát trực tiếp quy mô lớn.
Để tìm hiểu cách thiết lập mạng, hãy xem Chuẩn bị mạng cho các cuộc họp và sự kiện phát trực tiếp trên Meet.
Để đăng nhập vào Bảng điều khiển dành cho quản trị viên của Google với tư cách quản trị viên, hãy xem bài viết Đăng nhập vào Bảng điều khiển dành cho quản trị viên.