

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

# Obsolescencia de un recurso de comandos
<a name="iot-remote-command-deprecate"></a>

Desactive los comandos para indicar que están desactualizados y no deben usarse. Por ejemplo, desactive los comandos que ya no se mantienen de forma activa o al crear comandos más nuevos con el mismo identificador pero con diferentes cargas útiles.

## Consideraciones clave
<a name="iot-remote-command-deprecate-considerations"></a>

Consideraciones importantes a la hora de dejar de usar comandos:
+ La desaprobación de un comando no lo elimina. Puede recuperar el comando con su ID y restaurarlo para volver a utilizarlo.
+ Al intentar iniciar nuevas ejecuciones de comandos obsoletos, se genera un error que impide el uso de comandos obsoletos.
+ Para ejecutar un comando obsoleto, restáurelo primero. Tras la restauración, el comando estará disponible para su uso y ejecución habituales en los dispositivos de destino.
+ Si desaprueba un comando mientras las ejecuciones están en curso, seguirán ejecutándose hasta que se complete. Aún puede recuperar el estado de ejecución.

## Obsolescencia de un recurso de comandos (consola)
<a name="iot-remote-command-deprecate-console"></a>

Para anular un comando de la consola, vaya al [centro de comandos](https://console.aws.amazon.com/iot/home#/commandHub) de la AWS IoT consola y lleve a cabo los siguientes pasos.

1. **Elija el comando que desee desaprobar y, a continuación, en **Acciones**, elija Depredar.**

1. Confirme que desea dar de baja el comando y, a continuación, seleccione **Dejar de utilizar**.

## Obsolescencia de un recurso de comandos (CLI)
<a name="iot-remote-command-deprecate-cli"></a>

Marque los comandos como obsoletos mediante la `update-command` CLI. Debe desaprobar un comando antes de eliminarlo. Para usar un comando obsoleto, restaúrelo primero.

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

Por ejemplo, si ha dado de baja el comando `ACSwitch` que actualizó en el ejemplo anterior, en el código siguiente se muestra un ejemplo del resultado de la ejecución del comando.

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

## Comprobación del tiempo y el estado de obsolescencia
<a name="iot-remote-command-deprecate-check"></a>

Usa la `GetCommand` API para determinar si un comando está obsoleto y cuándo fue obsoleto por última vez.

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

Este comando genera una respuesta que contiene información sobre el comando, incluidas las marcas de tiempo de creación y obsolescencia del último campo actualizado. Esto ayuda a determinar la duración del comando y si se debe eliminar o reutilizar. A continuación, se muestra un ejemplo de respuesta para el `turnOffAc` comando:

```
{
    "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
}
```

## Restauración de un recurso de comando
<a name="iot-remote-command-undeprecate"></a>

Para usar o enviar el `ACSwitch` comando a su dispositivo, restaúrelo primero.

Para restaurar un comando desde la consola, ve al [centro de comandos](https://console.aws.amazon.com/iot/home#/commandHub) de la AWS IoT consola, elige el comando que deseas restaurar y, a continuación, en **Acciones**, selecciona **Restaurar**.

Para restaurar un comando mediante la AWS IoT Core API o la AWS CLI, utilice la operación `UpdateCommand` API o la `update-command` CLI. En el siguiente código se muestra una solicitud y una respuesta de ejemplo.

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

En el siguiente código se muestra un resultado de ejemplo.

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