Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Operazioni API AWS IoT Jobs
L'API AWS IoT Jobs può essere utilizzata per una delle seguenti categorie:
-
Attività amministrative, come la gestione e il controllo dei processi. Questo è il piano di controllo.
-
Dispositivi che eseguono questi processi. Questo è il piano dati che permette di inviare e ricevere dati.
Per la gestione e il controllo dei processi viene usata un'API del protocollo HTTPS. I dispositivi possono usare un'API del protocollo MQTT o HTTPS. L'API del piano di controllo è progettata per un basso volume di chiamate, come avviene in genere quando si creano e si monitorano i processi. In genere apre una connessione per una singola richiesta e quindi chiude la connessione dopo la ricezione della risposta. L'API HTTPS e MQTT del piano dati consente il polling lungo. Queste operazioni API sono progettate per grandi quantità di traffico, che può essere dimensionato fino a milioni di dispositivi.
Ogni API HTTPS dei processi AWS IoT dispone di un comando corrispondente che permette di chiamare l'API dalla AWS Command Line Interface (AWS CLI). I comandi sono in caratteri minuscoli, con trattini tra le parole che compongono il nome dell'API. È ad esempio possibile richiamare l'API CreateJob
nell'interfaccia a riga di comando digitando:
aws iot create-job ...
Se si verifica un errore durante un'operazione, viene fornita una risposta di errore contenente le informazioni sull'errore.
Contiene informazioni su un errore che si è verificato durante un'operazione del servizio AWS IoT Jobs.
L'esempio seguente mostra la sintassi di questa operazione:
{ "code": "ErrorCode", "message": "string", "clientToken": "string", "timestamp": timestamp, "executionState": JobExecutionState }
Di seguito è riportata una descrizione di ErrorResponse
:
code
-
ErrorCode può essere impostato su:
- InvalidTopic
-
La richiesta è stata inviata a un argomento nel namespace di AWS IoT Jobs non mappato ad alcuna operazione API.
- InvalidJson
-
Non è stato possibile interpretare i contenuti della richiesta come contenuto JSON valido con codifica UTF-8.
- InvalidRequest
-
I contenuti della richiesta non sono validi. Ad esempio, questo codice viene restituito quando una richiesta
UpdateJobExecution
contiene dettagli sullo stato non validi. Il messaggio contiene dettagli sull'errore. - InvalidStateTransition
-
Un aggiornamento ha tentato di modificare l'esecuzione del processo in uno stato non valido a causa dello stato attuale dell'esecuzione del processo. Ad esempio, un tentativo di modificare una richiesta dallo stato SUCCEEDED a quello IN_PROGRESS. In questo caso, il corpo del messaggio di errore contiene anche il campo
executionState
. - ResourceNotFound
-
Il valore di
JobExecution
specificato dall'argomento della richiesta non esiste. - VersionMismatch
-
La versione prevista specificata nella richiesta non corrisponde alla versione dell'esecuzione del processo nel servizio AWS IoT Jobs. In questo caso, il corpo del messaggio di errore contiene anche il campo
executionState
. - InternalError
-
Si è verificato un errore interno durante l'elaborazione della richiesta.
- RequestThrottled
-
La richiesta è stata sottoposta a throttling.
- TerminalStateReached
-
Si verifica quando viene eseguito un comando per descrivere un processo in un processo che si trova in uno stato terminale.
message
-
Stringa di messaggio di errore.
clientToken
-
Stringa arbitraria usata per mettere in relazione una richiesta con la relativa risposta.
timestamp
-
Tempo, in secondi, dall'epoca (Unix epoch).
executionState
-
Oggetto
JobExecutionState
. Questo campo è incluso solo quando il campocode
ha il valoreInvalidStateTransition
oVersionMismatch
. In questi casi, non è necessario eseguire una richiestaDescribeJobExecution
separata per ottenere i dati sullo stato dell'esecuzione del processo corrente.