API سطح 1 مشخصات OSC API بر روی نوع تصویر تمرکز دارد و پشتیبانی ویدیویی در سطح 2 API اضافه میشود. تولیدکنندگان دوربین تشویق میشوند تا دستورات سفارشی را تعریف کنند و/یا در صورت نیاز مجموعه پارامترهای دستورات استاندارد را گسترش دهند. این ها به عنوان فرمان های فروشنده و پارامترهای فروشنده شناخته می شوند.
نام دستورات و پارامترهای خاص فروشنده باید حروف عددی و با پیشوند زیرخط (_) باشد.
عملکرد خاص فروشنده می تواند در چهار مکان به شرح زیر اتفاق بیفتد:
- خروجی از /osc/info API
- خروجی از /osc/state API
- مشخصات OSC API ، دستورات برای /osc/commands/execute
- مشخصات 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" } |