L'API /osc/commands/execute
esegue comandi specificati sulla fotocamera. L'output è un oggetto comando.
Nome |
Tipo |
Descrizione |
name |
Stringa |
Il comando da eseguire. |
parameters |
Oggetto |
Parametri di input del comando in base alla specifica delle definizioni dei comandi. Per alcuni esempi, consulta la specifica API OSC. |
Output
Nome |
Tipo |
Descrizione |
name |
Stringa |
Il comando da eseguire. |
state |
Stringa |
Stato del comando. Deve essere uno dei seguenti:
done - Completato, in questa risposta sono stati restituiti i risultati.
inProgress : l'esecuzione è ancora in corso.
error - Operazione non riuscita. Visualizza l'errore nella risposta.
|
id |
Stringa (facoltativa) |
ID comando. Questo valore è obbligatorio per i comandi che restituiscono lo stato
inProgress . Ad esempio, il comando camera.takePicture richiede alcuni secondi perché è necessario eseguire lo stitching. Per ulteriori dettagli, consulta la sezione "Stato". |
results |
Oggetto (facoltativo) |
Risultati del comando. Questo valore è obbligatorio per i comandi che restituiscono lo stato
done se si prevede che il comando restituisca risultati. ad esempio
“results” : {
"AAA": "BBB",
...
}
Per alcuni esempi, consulta la specifica API OSC. |
error |
Oggetto (facoltativo) |
Descrizione dell'errore del comando. Questo valore è obbligatorio per i comandi che restituiscono lo stato error; , ad esempio
“error”: {
“code”: “missingParameter”
} |
progress |
Oggetto (facoltativo) |
Descrizione avanzamento del comando. Questo valore è obbligatorio per i comandi che restituiscono lo stato inProgress . ad esempio
“progress”: {
“completion”: 0.8
} |
Errore
Codice di errore |
Descrizione |
unknownCommand |
Il comando richiesto è sconosciuto, ad esempio Se un client v2 (clientVersion è impostato su 2, vedi Opzioni) richiede un comando deprecato dal livello API 1, la richiesta dovrebbe avere esito negativo e restituire questo codice di errore. |
disabledCommand |
Il comando eseguito è attualmente disabilitato, ad esempio Il comando "takePicture" è disabilitato quando
fotocamera è in modalità video, il comando processPicture viene disabilitato quando la fotocamera non supporta il ritardo di elaborazione. Questo codice di errore è stato aggiunto nel livello API 2. |
cameraInExclusiveUse |
La videocamera è già in uso esclusivo, non è possibile avviare una nuova sessione. Questo codice di errore è stato ritirato nel livello API 2. |
missingParameter |
Uno o più parametri obbligatori non sono stati specificati. |
invalidParameterName |
Uno o più parametri di input o nomi di opzioni non sono riconosciuti o non sono supportati. |
invalidParameterValue |
I nomi di parametri o opzioni sono stati riconosciuti, ma uno o più valori non sono validi. Ad esempio, il valore non rientra nell'intervallo. |
Esempio |
Richiesta (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
}
}
} |
Richiesta (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
}
}
} |
Risposta |
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"
} |
Richiesta (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"
}
} |
Richiesta (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"
} |
Risposta |
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
}
} |