Execute

The /osc/commands/execute API executes specified commands on the camera. The output is a command object.

Input

Name Type Description
name
String The command to be executed.
parameters
Object Command input parameters according to the command definitions specification. Please refer to OSC API Specification for examples.

Output

Name
Type
Description
name
String
The command to be executed.
state
String
State of the command. Should be one of the following:
  • done - Complete, results have been returned in this response.
  • inProgress - Execution is still in progress.
  • error - Failed, see error in the response.
id
String (optional)
Command ID. This value is required for commands returning the status inProgress . For example, the camera.takePicture command takes a few seconds due to the need for stitching. See the “Status” section for more details.
results
Object (optional)
Command results. This value is required for commands returning state done if the command is expected to return results; for example, “results” : { “AAA”: “BBB”, ... } Please refer to OSC API Specification for examples.
error
Object (optional)
Command error description. This value is required for commands returning state error; for example,
“error”: {
  “code”: “missingParameter”
}
progress
Object (optional)
Command progress description. This value is required for commands returning state inProgress ; for example,
“progress”: {
  “completion”: 0.8
}

Error

Error code Description
unknownCommand Requested command is unknown, e.g. if a v2 client (clientVersion is set to 2, see Options ) requests a deprecated command from API level 1, the request should fail with this error code.
disabledCommand Command executed is currently disabled, e.g. `takePicture` command is disabled when camera is video mode, processPicture command is disabled when the camera doesn’t support delayProcessing. This error code was added in API level 2.
cameraInExclusiveUse Camera is already in exclusive use, new session can’t be started. This error code was deprecated in API level 2.
missingParameter One or more required parameters were not specified.
invalidParameterName One or more input parameter or option name was unrecognized or unsupported.
invalidParameterValue The parameter or option names were recognized, but one or more values is invalid; for example, the value is out of range.

Example

Request (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" 
 , 
  
 "options" 
 : 
  
 { 
  
 "iso" 
 : 
  
 200 
 , 
  
 "exposureCompensation" 
 : 
  
 -2 
  
 } 
  
 } 
 } 
Request (API 2)
 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" 
 : 
  
 { 
  
 "options" 
 : 
  
 { 
  
 "iso" 
 : 
  
 200 
 , 
  
 "exposureCompensation" 
 : 
  
 -2 
  
 } 
  
 } 
 } 
Response
 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" 
 } 
Request (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.takePicture" 
 , 
  
 "parameters" 
 : 
  
 { 
  
 "sessionId" 
 : 
  
 "12ABC3" 
  
 } 
 } 
Request (API 2)
 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.takePicture" 
 } 
Response
 HTTP 
 / 
 1.1 
 200 
 OK 
 Content-Type 
 : 
 application/json;charset=utf-8 
 Content-Length 
 : 
 {CONTENT_LENGTH} 
 X-Content-Type-Options 
 : 
 nosniff 
 { 
  
 "name" 
 : 
  
 "camera.takePicture" 
 , 
  
 "state" 
 : 
  
 "inProgress" 
 , 
  
 "id" 
 : 
  
 "90ABCD" 
 , 
  
 "progress" 
 : 
  
 { 
  
 "completion" 
 : 
  
 0 
  
 } 
 } 
Design a Mobile Site
View Site in Mobile | Classic
Share by: