Deprecate una risorsa di comando - 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à.

Deprecate una risorsa di comando

È possibile rendere obsoleto un comando per indicare che non è aggiornato e non deve essere utilizzato. Ad esempio, è possibile rendere obsoleto un comando che non viene più gestito attivamente oppure creare un comando più recente con lo stesso ID di comando ma che utilizza informazioni di payload diverse.

Considerazioni chiave

Di seguito sono riportate alcune considerazioni importanti sulla deprecazione di un comando:

  • Quando si depreca un comando, questo non viene eliminato. È comunque possibile recuperare il comando utilizzando l'ID del comando e ripristinarlo se si desidera riutilizzare il comando.

  • Se tenti di avviare una nuova esecuzione di comando sul dispositivo di destinazione per un comando che è stato obsoleto, viene generato un errore che impedisce l'utilizzo dei comandi. out-of-date

  • Per eseguire un comando obsoleto sul dispositivo di destinazione, devi prima ripristinarlo. Una volta ripristinato, il comando diventa disponibile e può essere utilizzato come comando normale ed è possibile eseguire esecuzioni di comandi sul dispositivo di destinazione.

  • Se si depreca un comando mentre le esecuzioni dei comandi sono in corso, le esecuzioni continueranno a essere eseguite sul dispositivo di destinazione fino al loro completamento. È inoltre possibile recuperare lo stato delle esecuzioni dei comandi.

Deprecate una risorsa di comando (console)

Per rendere obsoleto un comando dalla console, accedi al Command Hub della AWS IoT console ed esegui i seguenti passaggi.

  1. Scegli il comando che desideri rendere obsoleto, quindi in Azioni scegli Deprecate.

  2. Conferma che desideri rendere obsoleto il comando, quindi scegli Deprecate.

Deprecate una risorsa di comando () CLI

È possibile contrassegnare un comando come obsoleto utilizzando. update-command CLI È necessario innanzitutto rendere obsoleto un comando prima che possa essere eliminato. Una volta che un comando è diventato obsoleto, se si desidera utilizzarlo, ad esempio per inviare l'esecuzione di un comando al dispositivo di destinazione, è necessario renderlo obsoleto.

aws iot update-command \ --command-id <command-id> \ --deprecated

Ad esempio, se avete reso obsoleto il ACSwitch comando aggiornato nell'esempio precedente, il codice seguente mostra un esempio di output dell'esecuzione del comando.

{ "commandId": "turnOffAc", "deprecated": true, "lastUpdatedAt": "2024-05-09T23:16:51.370000-07:00" }

Controlla l'ora e lo stato di deprecazione

È possibile utilizzare l'GetCommandAPIoperazione per determinare se un comando è stato dichiarato obsoleto e quando è stato deprecato l'ultima volta.

aws iot get-command --command-id <turnOffAC>

L'esecuzione di questo comando genera una risposta che contiene informazioni sul comando. È possibile ottenere informazioni su quando è stato creato e quando è stato obsoleto utilizzando le ultime informazioni aggiornate. Queste informazioni possono aiutarti a determinare la durata di un comando e se desideri eliminarlo o riutilizzarlo. Ad esempio, nell'turnOffAcesempio precedente, il codice seguente mostra una risposta di esempio.

{ "commandId": "turnOffAC", "commandArn": "arn:aws:iot:ap-south-1:123456789012:command/turnOffAC", "namespace": "AWS-IoT", "payload": { "content": "testPayload.json", "contentType": "application/json" }, "createdAt": "2024-03-23T00:50:10.095000-07:00", "lastUpdatedAt": "2024-05-09T23:16:51.370000-07:00", "deprecated": false }

Ripristina una risorsa di comando

Per utilizzare il ACSwitch comando o inviarlo al dispositivo, è necessario ripristinarlo.

Per ripristinare un comando dalla console, vai al Command Hub della AWS IoT console, scegli il comando che desideri ripristinare, quindi in Azioni scegli Ripristina.

Per ripristinare un comando utilizzando il AWS IoT Core API o il AWS CLI, usa l'UpdateCommandAPIoperazione o il update-commandCLI. Il codice seguente mostra un esempio di richiesta e risposta.

aws iot update-command \ --command-id <command-id> --no-deprecated

Il codice seguente mostra un output di esempio.

{ "commandId": "ACSwitch", "deprecated": false, "lastUpdatedAt": "2024-05-09T23:17:21.954000-07:00" }