API level 1 dari Spesifikasi OSC API berfokus pada tipe gambar, dan dukungan video ditambahkan pada API level 2. Produsen Kamera didorong untuk mendefinisikan perintah khusus dan/atau memperluas set parameter perintah standar jika diperlukan. Ini dikenal sebagai Perintah Vendor dan Parameter Vendor.
Nama perintah dan parameter Vendor-spesifik harus berupa alfanumerik dan diawali dengan garis bawah ( _ ).
Fungsionalitas Vendor-spesifik bisa ditemukan di empat tempat sebagai berikut:
- Output dari /osc/info API
- Output dari /osc/state API
- Spesifikasi OSC API, perintah untuk /osc/commands/execute
- Spesifikasi OSC API, parameter perintah; misalnya, parameter untuk perintah
setOptions
dangetOptions
.
Contoh | |
---|---|
Permintaan (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" } } |
Respons | 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" } |
Permintaan | 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", ... } } |
Respons | 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" } |