API /osc/state trả về các thuộc tính state của camera. Điểm khác biệt
giữa API này và API info là state chứa các giá trị có thể thay đổi
biểu thị trạng thái của camera (ví dụ: batteryLevel), trong khi info
chỉ chứa các thuộc tính tĩnh của máy ảnh (ví dụ: manufacturer hoặc
các thuộc tính không thường xuyên thay đổi như firmwareVersion).
Đầu vào
Lệnh này không nhận dữ liệu đầu vào.
Đầu ra
Tên
Loại
Nội dung mô tả
fingerprint
Chuỗi
Vân tay (giá trị nhận dạng duy nhất) của trạng thái hiện tại của camera.
state
Đối tượng
Một đối tượng JSON chứa trạng thái của nhiều trạng thái máy ảnh. Xem bảng tiếp theo.
state đối tượng
Đối tượng JSON này cung cấp trạng thái của nhiều trạng thái camera. Nhà sản xuất có thể
cung cấp trạng thái mới, tuỳ chỉnh có tiền tố phải là dấu gạch dưới ( _ )
để ngăn chặn xung đột không gian tên.
Tên
Loại
Nội dung mô tả
sessionId
Chuỗi
Mã của phiên hiện tại. Trường này không còn được dùng trong API cấp 2.
batteryLevel
Số
Được biểu thị dưới dạng giá trị dấu phẩy động của lượng pin còn lại, ví dụ: 0,5
storageChanged
Boolean
Đúng nếu bạn lắp/tháo loại bộ nhớ mới (ví dụ: thẻ SD hoặc ổ đĩa USB).
Trường này không còn được dùng trong API cấp 2.
storageUri
Chuỗi
Giá trị nhận dạng duy nhất để phân biệt các bộ nhớ. Thông báo được dùng để cho biết bộ nhớ có thay đổi hay không.
Trường này được thêm vào từ API cấp 2.
_vendorSpecific
[loại](không bắt buộc)
Trạng thái bổ sung dành riêng cho nhà cung cấp về máy ảnh. Thêm tiền tố bằng dấu gạch dưới ( _ ) để ngăn chặn xung đột không gian tên.
Lỗi
Lệnh này không trả về lỗi nào.
Ví dụ:
Yêu cầu
POST /osc/state HTTP/1.1 Host:[camera ip address]:[httpPort] Accept: application/json X-XSRF-Protected:1
Đáp
HTTP/1.1200 OK Content-Type: application/json;charset=utf-8 Content-Length:{CONTENT_LENGTH} X-Content-Type-Options: nosniff
[null,null,["Cập nhật lần gần đây nhất: 2024-08-21 UTC."],[[["The `/osc/state` API provides mutable camera status values like battery level, unlike the `/osc/info` API which returns static camera attributes."],["Camera state is represented by a `fingerprint` that uniquely identifies it and changes whenever a tracked state is modified."],["The `state` object contains various camera status details, including `batteryLevel`, storage information, and vendor-specific data."],["Manufacturers can introduce custom states within the `state` object using an underscore (_) prefix to avoid conflicts."]]],["The `/osc/state` API retrieves mutable camera status attributes. It outputs a `fingerprint`, a unique identifier for the current camera state, and a `state` object. The `state` object includes `batteryLevel`, `storageUri` and optional vendor-specific states prefixed with an underscore. It also contained `sessionId` and `storageChanged` which have been deprecated. The API uses POST and the response has a `200 OK` HTTP status with a content-type of `application/json`. The fingerprint changes with any tracked state change.\n"]]