API ระดับที่ 1 ของข้อกำหนดของ OSC API จะเน้นไปที่ประเภทรูปภาพ และจะเพิ่มการรองรับวิดีโอใน API ระดับ 2 ขอแนะนำให้ผู้ผลิตกล้องกำหนดคำสั่งที่กำหนดเองและ/หรือขยายชุดพารามิเตอร์ของคำสั่งมาตรฐาน หากจำเป็น พารามิเตอร์เหล่านี้เรียกว่าคำสั่งผู้ให้บริการและพารามิเตอร์ผู้ให้บริการ
ชื่อของคำสั่งและพารามิเตอร์เฉพาะผู้ให้บริการต้องเป็นตัวอักษรและตัวเลขนำหน้าด้วยเครื่องหมายขีดล่าง ( _ )
ฟังก์ชันการทำงานเฉพาะผู้ให้บริการมีอยู่ 4 อย่างดังนี้
- เอาต์พุตของ /osc/info API
- เอาต์พุตของ /osc/state API
- ข้อกำหนดของ OSC API คำสั่งสำหรับ /osc/commands/exeโดยสมบูรณ์
- ข้อกำหนดของ OSC API, พารามิเตอร์คำสั่ง ตัวอย่างเช่น พารามิเตอร์สำหรับคำสั่ง
setOptions
และgetOptions
ตัวอย่าง | |
---|---|
คำขอ (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" } } |
การตอบกลับ | 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" } |
คำขอ | 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", ... } } |
การตอบกลับ | 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" } |