Específico de fornecedor

A API de nível 1 da especificação OSC API se concentra no tipo de imagem. A API de nível 2 adiciona compatibilidade com vídeo. Recomendamos que os fabricantes de câmeras definam comandos personalizados e/ou ampliem o conjunto de parâmetros dos comandos padrão, se necessário. Esses elementos são conhecidos como comandos do fornecedor e parâmetros do fornecedor.

Os nomes dos comandos e parâmetros específicos do fornecedor devem ser alfanuméricos e precedidos por um sublinhado ( _ ).

Recursos específicos do fornecedor podem ocorrer em quatro locais da seguinte maneira:

Exemplo

Solicitação (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"
    }
}
Resposta
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"
}
Solicitação
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",
        ...
    }
}
Resposta
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"
}