Poziom 1 w specyfikacji interfejsu OSC API koncentruje się na typie obrazu, a obsługę wideo dodaliśmy do poziomu 2. Zachęcamy producentów aparatów do definiowania poleceń niestandardowych lub w razie potrzeby rozszerzania zestawu parametrów standardowych poleceń. Są to tzw. polecenia dotyczące dostawcy i parametry dostawcy.
Nazwa poleceń i parametrów konkretnego dostawcy musi być alfanumeryczna i poprzedzona znakiem podkreślenia ( _).
Funkcje poszczególnych dostawców mogą być dostępne w 4 miejscach:
- Dane wyjściowe interfejsu /osc/info API
- Dane wyjściowe interfejsu API /osc/state
- Specyfikacja interfejsu OSC API, polecenia dla /osc/commands/execute
- Specyfikacja interfejsu OSC API, parametry poleceń, na przykład parametry poleceń
setOptions
igetOptions
.
Przykład | |
---|---|
Żądanie (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" } } |
Odpowiedź | 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" } |
Wyślij prośbę | 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", ... } } |
Odpowiedź | 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" } |