OSC API Spesifikasyonu'nun API düzeyi 1, görüntü türüne odaklanır ve API düzeyi 2'de video desteği eklenmiştir. Kamera üreticilerinin özel komutlar tanımlamaları ve/veya gerekirse standart komutlar içeren parametre grubunu genişletmeleri önerilir. Bunlar Tedarikçi Firma Komutları ve Tedarikçi Firma Parametreleri olarak bilinir.
Tedarikçi firmaya özel komutların ve parametrelerin adı alfa-sayısal olmalı ve alt çizgi ( _ ) ön ekine sahip olmalıdır.
Tedarikçilere özgü işlevler aşağıdaki dört yerde sağlanabilir:
- /osc/info API'nin çıktısı
- /osc/state API'sinin çıkışı
- OSC API Spesifikasyonu, /osc/commands/execute için komutlar
- OSC API Spesifikasyonu, komut parametreleri; örneğin,
setOptions
vegetOptions
komutlarının parametreleri.
Örnek | |
---|---|
İstek (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" } } |
Yanıt | 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" } |
İstek | 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", ... } } |
Yanıt | 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" } |