업체 특정

OSC API 사양의 API 수준 1은 이미지 유형에 중점을 두며 동영상 지원은 API 수준 2에 추가되었습니다. 카메라 제조업체는 맞춤 명령어를 정의하거나 필요한 경우 표준 명령어의 매개변수 집합을 확장하는 것이 좋습니다. 이를 공급업체 명령어공급업체 매개변수라고 합니다.

공급업체별 명령 및 매개변수의 이름은 밑줄 ( _)이 접두사로 붙은 영숫자여야 합니다.

업체 특정 기능은 다음과 같은 네 장소에서 발생할 수 있습니다.

  • /osc/info API의 출력
  • /osc/state API의 출력
  • OSC API 사양, /osc/commands/execute 명령어
  • OSC API 사양, 명령어 매개변수 예를 들어 setOptionsgetOptions 명령어의 매개변수입니다.

요청 (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"
}