Il livello API 1 della specifica API OSC è incentrato sul tipo di immagine e nel livello API 2 viene aggiunto il supporto video. Consigliamo ai produttori di fotocamere di definire comandi personalizzati e/o estendere il set di parametri dei comandi standard, se necessario. Questi sono noti come Comandi del fornitore e Parametri del fornitore.
Il nome dei comandi e dei parametri specifici del fornitore deve essere composto da caratteri alfanumerici e deve essere preceduto da un trattino basso ( _).
Le funzionalità specifiche del fornitore possono verificarsi in quattro punti, come indicato di seguito:
- Output dell'API /osc/info
- Output dell'API /osc/state
- Specifiche API OSC, comandi per /osc/commands/execute
- Specifica API OSC, parametri comando; ad esempio i parametri per i comandi
setOptions
egetOptions
.
Esempio | |
---|---|
Richiesta (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" } } |
Risposta | 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" } |
Richiedi | 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", ... } } |
Risposta | 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" } |