API HTTP del dispositivo di processi - AWS IoT Core

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à.

API HTTP del dispositivo di processi

I dispositivi possono comunicare con AWS IoT Jobs utilizzando HTTP Signature Version 4 sulla porta 443. Questo è il metodo usato dagli SDK AWS e da CLI. Per ulteriori informazioni sui questi strumenti, consulta AWS CLI Command Reference:iot-jobs-data o Strumenti e SDK AWS.

I seguenti comandi sono disponibili per i dispositivi che eseguono i processi. Per informazioni sull'utilizzo delle operazioni API con il protocollo MQTT, consulta Operazioni API MQTT del dispositivo dei processi.

Ottiene l'elenco di tutti i processi che non si trovano in uno stato terminale, per un oggetto specifico.

HTTPS request
GET /things/thingName/jobs

Risposta:

{ "inProgressJobs" : [ JobExecutionSummary ... ], "queuedJobs" : [ JobExecutionSummary ... ] }

Per ulteriori informazioni, consulta GetPendingJobExecutions.

CLI syntax
aws iot-jobs-data get-pending-job-executions \ --thing-name <value> \ [--cli-input-json <value>] \ [--generate-cli-skeleton]

Formato di cli-input-json:

{ "thingName": "string" }

Per ulteriori informazioni, consulta get-pending-job-executions.

Recupera e avvia la successiva esecuzione del processo in sospeso per un oggetto (con uno stato IN_PROGRESS o QUEUED).

  • Le esecuzioni di un processo con stato IN_PROGRESS vengono restituite per prime.

  • Le esecuzioni di un processo vengono restituite in base all'ordine di creazione.

  • Se lo stato della successiva esecuzione del processo in sospeso è QUEUED, il relativo stato viene modificato in IN_PROGRESS e i dettagli dello stato dell'esecuzione del processo vengono impostati come specificato.

  • Se la successiva esecuzione del processo in sospeso ha già lo stato IN_PROGRESS, i dettagli dello stato non vengono modificati.

  • Se non sono presenti esecuzioni in sospeso, la risposta non include il campo execution.

  • Facoltativamente, puoi creare un timer della fase impostando un valore per la proprietà stepTimeoutInMinutes. Se non aggiorni il valore di questa proprietà eseguendo UpdateJobExecution, il timeout dell'esecuzione del processo si verifica alla scadenza del timer della fase.

HTTPS request

L'esempio seguente mostra la sintassi della richiesta:

PUT /things/thingName/jobs/$next { "statusDetails": { "string": "string" ... }, "stepTimeoutInMinutes": long }

Per ulteriori informazioni, consulta StartNextPendingJobExecution.

CLI syntax

Riepilogo:

aws iot-jobs-data start-next-pending-job-execution \ --thing-name <value> \ {--step-timeout-in-minutes <value>] \ [--status-details <value>] \ [--cli-input-json <value>] \ [--generate-cli-skeleton]

Formato di cli-input-json:

{ "thingName": "string", "statusDetails": { "string": "string" }, "stepTimeoutInMinutes": long }

Per ulteriori informazioni, consulta start-next-pending-job-execution.

Ottiene informazioni dettagliate sull'esecuzione di un processo.

Puoi impostare jobId su $next per restituire la successiva esecuzione del processo in sospeso per un oggetto. Lo stato dell'esecuzione del processo deve essere QUEUED o IN_PROGRESS.

HTTPS request

Richiesta:

GET /things/thingName/jobs/jobId?executionNumber=executionNumber&includeJobDocument=includeJobDocument

Risposta:

{ "execution" : JobExecution, }

Per ulteriori informazioni, consulta DescribeJobExecution.

CLI syntax

Riepilogo:

aws iot-jobs-data describe-job-execution \ --job-id <value> \ --thing-name <value> \ [--include-job-document | --no-include-job-document] \ [--execution-number <value>] \ [--cli-input-json <value>] \ [--generate-cli-skeleton]

Formato di cli-input-json:

{ "jobId": "string", "thingName": "string", "includeJobDocument": boolean, "executionNumber": long }

Per ulteriori informazioni, consulta describe-job-execution.

Aggiorna lo stato dell'esecuzione di un processo. Facoltativamente, puoi creare un timer della fase impostando un valore per la proprietà stepTimeoutInMinutes. Se non aggiorni il valore di questa proprietà eseguendo nuovamente UpdateJobExecution, il timeout dell'esecuzione del processo si verifica alla scadenza del timer della fase.

HTTPS request

Richiesta:

POST /things/thingName/jobs/jobId { "status": "job-execution-state", "statusDetails": { "string": "string" ... }, "expectedVersion": "number", "includeJobExecutionState": boolean, "includeJobDocument": boolean, "stepTimeoutInMinutes": long, "executionNumber": long }

Per ulteriori informazioni, consulta UpdateJobExecution.

CLI syntax

Riepilogo:

aws iot-jobs-data update-job-execution \ --job-id <value> \ --thing-name <value> \ --status <value> \ [--status-details <value>] \ [--expected-version <value>] \ [--include-job-execution-state | --no-include-job-execution-state] \ [--include-job-document | --no-include-job-document] \ [--execution-number <value>] \ [--cli-input-json <value>] \ [--step-timeout-in-minutes <value>] \ [--generate-cli-skeleton]

Formato di cli-input-json:

{ "jobId": "string", "thingName": "string", "status": "string", "statusDetails": { "string": "string" }, "stepTimeoutInMinutes": number, "expectedVersion": long, "includeJobExecutionState": boolean, "includeJobDocument": boolean, "executionNumber": long }

Per ulteriori informazioni, consulta update-job-execution.