# Phát trực tiếp trên Cloud Phone

Sử dụng API mở hoặc API cục bộ để tải lên một tệp MP4, bắt đầu phát, kiểm tra trạng thái và dừng phát.

## Điều kiện

- Dùng mẫu máy WUIN hoặc Xiaosuan; nhà cung cấp khác hiện trả về `33401`. Bật Cloud Phone và lấy mã OAuth2 có quyền thao tác.
- Tệp phải là MP4 và được tải lên với `uploadType=2`.


## Quy trình API mở

1. Gọi `POST /cloudphone/uploadUrl`, rồi tải MP4 lên `presignedUrl` bằng HTTP `PUT`.
2. Gọi `POST /cloudphone/uploadFile` với `uploadType: 2`.
3. Kiểm tra `POST /cloudphone/uploadFileResult`. Nếu `data` là `null`, hãy tiếp tục thăm dò; dừng khi `data.status` là `1` (thành công) hoặc `2` (thất bại).
4. Gửi chính xác giá trị chuỗi `data.fileId` dưới dạng `int64` tới `POST /cloudphone/live/start`. Với JavaScript, dùng bộ tuần tự hóa hỗ trợ số nguyên chính xác tùy ý và không chuyển qua `Number`.
5. Dùng `/cloudphone/live/status` để kiểm tra và `/cloudphone/live/end` để dừng.


Với API cục bộ, dùng `/api/cloudphone/upload/file/signedUrl`, `/api/cloudphone/upload/file` với `uploadType: 2` và `/api/cloudphone/upload/file/result`, sau đó gọi `/api/cloudphone/live/start`, `/status` hoặc `/end`. Số dư và hạn mức có tại `GET /api/balance`.

Xem [API mở](/vi/api-reference/cloud-phone/open-api) và [API cục bộ Cloud Phone](/vi/api-reference/cloud-phone/local-api) để biết đầy đủ lược đồ. Nếu yêu cầu bắt đầu hết thời gian, hãy kiểm tra trạng thái trước khi thử lại. Lỗi phát trực tiếp gồm `33300`, `33301`, `33401`, `33418` và `99002`; API tải lên trả về `33419` cho tệp không phải MP4.