API cấp 1 của Thông số kỹ thuật API OSC tập trung vào loại hình ảnh và tính năng hỗ trợ video được thêm vào API cấp 2. Các nhà sản xuất máy ảnh nên xác định các lệnh tuỳ chỉnh và/hoặc mở rộng tập hợp thông số của các lệnh tiêu chuẩn nếu cần. Các lệnh này được gọi là Mã nhà cung cấp và Tham số nhà cung cấp.
Tên của các thông số và lệnh dành riêng cho nhà cung cấp phải có dạng chữ và số và có tiền tố là dấu gạch dưới ( _ ).
Chức năng dành riêng cho nhà cung cấp có thể hoạt động ở bốn vị trí như sau:
- Kết quả của API /osc/info
- Kết quả của API /osc/state
- Thông số kỹ thuật API OSC, các lệnh cho /osc/commands/Execution
- Thông số kỹ thuật API OSC, tham số lệnh; ví dụ: tham số cho lệnh
setOptions
vàgetOptions
.
Ví dụ: | |
---|---|
Yêu cầu (API 1) | POST /osc/commands/execute HTTP/1.1 Host: [camera ip address]:[httpPort] Content-Type: application/json;charset=utf-8 Accept: application/json Content-Length: {CONTENT_LENGTH} X-XSRF-Protected: 1 { "name": "camera.setOptions", "parameters": { "sessionId": "12ABC3", "iso": 200, "exposureCompensation": -2, "captureMode": "_video" } } |
Đáp | HTTP/1.1 200 OK Content-Type: application/json;charset=utf-8 Content-Length: {CONTENT_LENGTH} X-Content-Type-Options: nosniff { "name": "camera.setOptions", "state": "done" } |
Yêu cầu | POST /osc/commands/execute HTTP/1.1 Host: [camera ip address]:[httpPort] Content-Type: application/json;charset=utf-8 Accept: application/json Content-Length: {CONTENT_LENGTH} X-XSRF-Protected: 1 { "name": "camera._startRecording", "parameters": { "sessionId": "12ABC3", ... } } |
Đáp | HTTP/1.1 200 OK Content-Type: application/json;charset=utf-8 Content-Length: {CONTENT_LENGTH} X-Content-Type-Options: nosniff { "name": "camera._startRecording", "state": "done" } |