View a markdown version of this page

Kennzeichnen einer Befehlsressource als veraltet - AWS IoT Core

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Kennzeichnen einer Befehlsressource als veraltet

Verwerfen Sie Befehle als veraltet, um anzuzeigen, dass sie veraltet sind und nicht verwendet werden sollten. Veraltete Befehle werden beispielsweise nicht mehr aktiv verwaltet oder wenn neuere Befehle mit derselben ID, aber unterschiedlichen Nutzlasten erstellt werden.

Wesentliche Überlegungen

Wichtige Überlegungen beim Ablehnen von Befehlen:

  • Wenn ein Befehl als veraltet eingestuft wird, wird er nicht gelöscht. Sie können den Befehl mithilfe seiner ID abrufen und zur Wiederverwendung wiederherstellen.

  • Wenn Sie versuchen, veraltete Befehle erneut auszuführen, wird ein Fehler generiert, der die Verwendung veralteter Befehle verhindert.

  • Um einen veralteten Befehl auszuführen, müssen Sie ihn zunächst wiederherstellen. Nach der Wiederherstellung steht der Befehl zur regelmäßigen Verwendung und Ausführung auf Zielgeräten zur Verfügung.

  • Wenn Sie einen Befehl während der Ausführung als veraltet markieren, werden sie bis zum Abschluss weiter ausgeführt. Sie können den Ausführungsstatus weiterhin abrufen.

Verwerfen Sie eine Befehlsressource (Konsole)

Um einen Befehl von der Konsole als veraltet zu erklären, rufen Sie den Command Hub der AWS IoT Konsole auf und führen Sie die folgenden Schritte aus.

  1. Wählen Sie den Befehl aus, den Sie ablehnen möchten, und wählen Sie dann unter Aktionen die Option Verwerfen aus.

  2. Bestätigen Sie, dass Sie den Befehl als veraltet ansehen möchten, und wählen Sie dann Verwerfen aus.

Verwerfen Sie eine Befehlsressource (CLI)

Markieren Sie Befehle mithilfe der CLI als veraltet. update-command Sie müssen einen Befehl vor dem Löschen als veraltet markieren. Um einen veralteten Befehl zu verwenden, stellen Sie ihn zuerst wieder her.

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

Wenn Sie beispielsweise den ACSwitch Befehl, den Sie im obigen Beispiel aktualisiert haben, als veraltet markiert haben, zeigt der folgende Code eine Beispielausgabe der Ausführung des Befehls.

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

Überprüfen Sie die Uhrzeit und den Status der veralteten Version

Verwenden Sie die GetCommand API, um festzustellen, ob ein Befehl veraltet ist und wann er zuletzt veraltet war.

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

Dieser Befehl generiert eine Antwort mit Befehlsinformationen, einschließlich der Zeitstempel für Erstellung und Verfall, aus dem zuletzt aktualisierten Feld. Dies hilft bei der Bestimmung der Lebensdauer des Befehls und ob er gelöscht oder wiederverwendet werden soll. Das Folgende zeigt eine Beispielantwort für den turnOffAc Befehl:

{ "commandId": "turnOffAC", "commandArn": "arn:aws:iot:us-east-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 }

Stellen Sie eine Befehlsressource wieder her

Um den ACSwitch Befehl zu verwenden oder an Ihr Gerät zu senden, stellen Sie ihn zuerst wieder her.

Um einen Befehl von der Konsole aus wiederherzustellen, wechseln Sie zum Command Hub der AWS IoT Konsole, wählen Sie den Befehl aus, den Sie wiederherstellen möchten, und wählen Sie dann unter Aktionen die Option Wiederherstellen aus.

Um einen Befehl mithilfe der AWS IoT Core API oder der wiederherzustellen AWS CLI, verwenden Sie die UpdateCommand API-Operation oder die update-command CLI. Der folgende Code zeigt ein Beispiel für eine Anfrage und Antwort.

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

Der folgende Code zeigt eine Beispielausgabe.

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