يركّز المستوى الأول من مواصفات واجهة برمجة التطبيقات OSC على نوع الصورة، وتتم إضافة إمكانية استخدام الفيديوهات في المستوى الثاني من واجهة برمجة التطبيقات. ننصح الشركات المصنّعة للكاميرا بتحديد أوامر مخصّصة و/أو توسيع مجموعة مَعلمات الأوامر العادية إذا لزم الأمر. تُعرف هذه الإعدادات باسم أوامر المورّدين ومَعلمات المورّدين.
يجب أن يكون اسم الأوامر والمعلَمات الخاصة بالمورّدين أبجدية رقمية وأن يبدأ بشرطة سفلية ( _ ).
يمكن أن تحدث الوظائف الخاصة بالمورّدين في أربعة أماكن على النحو التالي:
- مخرج واجهة برمجة التطبيقات /osc/info API
- مخرج واجهة برمجة التطبيقات /osc/state API
- مواصفات واجهة برمجة التطبيقات OSC، الأوامر لـ /osc/commands/execute
- مواصفات واجهة برمجة التطبيقات OSC ومعلَمات الأوامر على سبيل المثال، معلمات الأمر
setOptions
وgetOptions
.
مثال | |
---|---|
الطلب (واجهة برمجة التطبيقات 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" } |