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à.
Tipi di dati e API di gestione e controllo dei processi
Per la gestione e il controllo delle applicazioni su CLI e tramite il protocollo HTTPS sono disponibili i comandi seguenti.
Per determinare il endpoint-url parametro per i comandi CLI, esegui questo comando.
aws iot describe-endpoint --endpoint-type=iot:Jobs
Questo comando restituisce il seguente output.
{ "endpointAddress": "account-specific-prefix.jobs.iot.aws-region.amazonaws.com" }
Nota
L'endpoint di Jobs non supporta ALPN x-amzn-http-ca.
Se utilizzi endpoint dual-stack (IPv6 and IPv6), usa l'endpoint. iot:Data-ATS L'endpoint supporta solo. iot:Jobs IPv4
Tipi di dati di gestione e controllo dei processi
I seguenti tipi di dati vengono utilizzati dalle applicazioni di gestione e controllo per comunicare con AWS IoT Jobs.
L'oggetto Job contiene i dettagli di un processo. L'esempio seguente mostra la sintassi:
{ "jobArn": "string", "jobId": "string", "status": "IN_PROGRESS|CANCELED|SUCCEEDED", "forceCanceled": boolean, "targetSelection": "CONTINUOUS|SNAPSHOT", "comment": "string", "targets": ["string"], "description": "string", "createdAt": timestamp, "lastUpdatedAt": timestamp, "completedAt": timestamp, "jobProcessDetails": { "processingTargets": ["string"], "numberOfCanceledThings": long, "numberOfSucceededThings": long, "numberOfFailedThings": long, "numberOfRejectedThings": long, "numberOfQueuedThings": long, "numberOfInProgressThings": long, "numberOfRemovedThings": long, "numberOfTimedOutThings": long }, "presignedUrlConfig": { "expiresInSec": number, "roleArn": "string" }, "jobExecutionsRolloutConfig": { "exponentialRate": { "baseRatePerMinute": integer, "incrementFactor": integer, "rateIncreaseCriteria": { "numberOfNotifiedThings": integer, // Set one or the other "numberOfSucceededThings": integer // of these two values. }, "maximumPerMinute": integer } }, "abortConfig": { "criteriaList": [ { "action": "string", "failureType": "string", "minNumberOfExecutedThings": integer, "thresholdPercentage": integer } ] }, "SchedulingConfig": { "startTime": string "endTime": string "timeZone": string "endTimeBehavior": string }, "timeoutConfig": { "inProgressTimeoutInMinutes": long } }
L'oggetto JobSummary contiene il riepilogo di un processo. L'esempio seguente mostra la sintassi:
{ "jobArn": "string", "jobId": "string", "status": "IN_PROGRESS|CANCELED|SUCCEEDED|SCHEDULED", "targetSelection": "CONTINUOUS|SNAPSHOT", "thingGroupId": "string", "createdAt": timestamp, "lastUpdatedAt": timestamp, "completedAt": timestamp }
Per ulteriori informazioni, consulta JobSummary o job-summary.
L'oggetto JobExecution rappresenta l'esecuzione di un processo in un dispositivo. L'esempio seguente mostra la sintassi:
Nota
Quando si utilizzano le operazioni API del piano di controllo (control-plane), il tipo di dati JobExecution non contiene un campo JobDocument. Per ottenere queste informazioni, puoi utilizzare l'operazione API GetJobDocument o il comando della CLI get-job-document.
{ "approximateSecondsBeforeTimedOut": 50, "executionNumber": 1234567890, "forceCanceled": true|false, "jobId": "string", "lastUpdatedAt": timestamp, "queuedAt": timestamp, "startedAt": timestamp, "status": "QUEUED|IN_PROGRESS|FAILED|SUCCEEDED|CANCELED|TIMED_OUT|REJECTED|REMOVED", "forceCanceled": boolean, "statusDetails": { "detailsMap": { "string": "string" ... }, "status": "string" }, "thingArn": "string", "versionNumber": 123 }
Per ulteriori informazioni, consulta JobExecution o job-execution.
L'oggetto JobExecutionSummary contiene le informazioni di riepilogo sull'esecuzione del processo. L'esempio seguente mostra la sintassi:
{ "executionNumber": 1234567890, "queuedAt": timestamp, "lastUpdatedAt": timestamp, "startedAt": timestamp, "status": "QUEUED|IN_PROGRESS|FAILED|SUCCEEDED|CANCELED|TIMED_OUT|REJECTED|REMOVED" }
Per ulteriori informazioni, consulta JobExecutionSummary o job-execution-summary.
L'oggetto JobExecutionSummaryForJob contiene un riepilogo delle informazioni sulle esecuzioni di un determinato processo. L'esempio seguente mostra la sintassi:
{ "executionSummaries": [ { "thingArn": "arn:aws:iot:us-west-2:123456789012:thing/MyThing", "jobExecutionSummary": { "status": "IN_PROGRESS", "lastUpdatedAt": 1549395301.389, "queuedAt": 1541526002.609, "executionNumber": 1 } }, ... ] }
Per ulteriori informazioni, consulta JobExecutionSummaryForJob o job-execution-summary-for-job.
L'JobExecutionSummaryForThingoggetto contiene un riepilogo delle informazioni sull'esecuzione di un lavoro su un oggetto specifico. FThe l'esempio seguente mostra la sintassi:
{ "executionSummaries": [ { "jobExecutionSummary": { "status": "IN_PROGRESS", "lastUpdatedAt": 1549395301.389, "queuedAt": 1541526002.609, "executionNumber": 1 }, "jobId": "MyThingJob" }, ... ] }
Per ulteriori informazioni, consulta JobExecutionSummaryForThing o job-execution-summary-for-thing.
Operazioni API di gestione e controllo dei processi
Utilizza le seguenti operazioni API o comandi CLI:
Associa un gruppo a un processo continuo. Devono essere soddisfatti i criteri seguenti:
-
Il processo deve essere stato creato con il campo
targetSelectionimpostato suCONTINUOUS. -
Lo stato del processo deve essere
IN_PROGRESS. -
Il numero totale di target associati a un processo non deve essere superiore a 100.
Annulla un processo.
Annulla l'esecuzione di un processo su un dispositivo.
Crea un processo. È possibile fornire il documento del processo come collegamento a un file in un bucket Amazon S3 (parametro documentSource) oppure nel corpo della richiesta (parametro document).
Un processo può essere reso continuo impostando il parametro opzionale targetSelection su CONTINUOUS (quello di default è SNAPSHOT). È possibile utilizzare un processo continuo per eseguire l'onboarding o l'aggiornamento dei dispositivi quando vengono aggiunti a un gruppo, in modo che continui a essere eseguito e venga lanciato sui nuovi dispositivi aggiunti. Ciò può verificarsi anche dopo che gli oggetti presenti nel gruppo al momento della creazione del processo hanno completato il processo.
Un lavoro può avere un valore opzionale TimeoutConfig, che imposta il valore del timer in corso. Il timer in corso non può essere aggiornato e viene applicato a tutte le esecuzioni del processo.
Negli argomenti per l'API CreateJob vengono eseguite le convalide seguenti:
-
L'
targetsargomento deve essere un elenco di oggetti o gruppi ARNs di oggetti validi. Tutte le cose e i gruppi di cose devono essere nel tuo Account AWS. -
L'argomento
documentSourcedeve essere un URL Amazon S3 valido per un documento del processo. Amazon S3 ha URLs la forma:.https://s3.amazonaws.com/bucketName/objectName -
Il documento archiviato nell'URL specificato dall'argomento
documentSourcedeve essere un documento JSON con codifica UTF-8. -
Le dimensioni di un documento del processo non possono essere superiori a 32 KB, a causa dei limiti relativi alle dimensioni di un messaggio MQTT (128 KB) e della crittografia.
-
jobIdDevono essere unici nel tuo Account AWS.
Elimina un processo e le relative esecuzioni.
L'eliminazione di un processo potrebbe richiedere del tempo, a seconda del numero di esecuzioni create per il processo e di altri fattori. Mentre il processo viene eliminato, lo stato del processo viene indicato come "DELETION_IN_PROGRESS". Il tentativo di eliminare o annullare un processo il cui stato è già "DELETION_IN_PROGRESS" restituirà un errore.
Elimina l'esecuzione di un processo.
Ottiene i dettagli di un'esecuzione del processo.
Ottiene i dettagli di un'esecuzione del processo. Lo stato dell'esecuzione del processo deve essere SUCCEEDED o FAILED.
Ottiene il documento per un processo.
Nota
I segnaposto non URLs vengono sostituiti con Amazon S3 URLs prefirmato nel documento restituito. I prefirmati URLs vengono generati solo quando il servizio AWS IoT Jobs riceve una richiesta tramite MQTT.
Ottiene un elenco delle esecuzioni per un processo.
Ottiene un elenco delle esecuzioni di un processo per un oggetto.
Ottiene un elenco di lavori nel tuo. Account AWS
Aggiorna i campi supportati del processo specificato. I valori aggiornati per timeoutConfig diventano effettivi solo per i nuovi avvii in corso. Attualmente, gli avvii in corso continuano a essere lanciati con la configurazione del timeout precedente.