

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.

# Administre FleetWise vehículos de AWS IoT
<a name="vehicles"></a>

Los vehículos son instancias de modelos de vehículo. Los vehículos deben crearse a partir de un modelo de vehículo y asociarse a un manifiesto del decodificador. Los vehículos cargan uno o más flujos de datos a la nube. Por ejemplo, un vehículo puede enviar datos sobre el kilometraje, la temperatura del motor y el estado de la calefacción a la nube. Cada vehículo contiene la siguiente información: 

`vehicleName`  
ID que identifica el vehículo.  
No agregue información de identificación personal (PII) ni ningún otro dato confidencial o sensible en el nombre del vehículo. Otros AWS servicios, incluido Amazon, pueden acceder a los nombres de los vehículos CloudWatch. Los nombres de los vehículos no se han diseñado para utilizarse con información privada o confidencial.

`modelManifestARN`  
El Nombre de recurso de Amazon (ARN) de un modelo de vehículo (manifiesto del modelo). Cada vehículo se crea a partir de un modelo de vehículo. Los vehículos creados a partir del mismo modelo de vehículo constan del mismo grupo de señales heredadas del modelo de vehículo. Estas señales están definidas y estandarizadas en el catálogo de señales.

`decoderManifestArn`  
El ARN del manifiesto del decodificador. Un manifiesto de decodificador proporciona información de decodificación que el AWS IoT FleetWise puede utilizar para transformar datos de señal sin procesar (datos binarios) en valores legibles por humanos. El manifiesto del decodificador debe estar asociado a un modelo de vehículo. AWS El IoT FleetWise utiliza el mismo manifiesto del decodificador para decodificar los datos sin procesar de los vehículos creados en función del mismo modelo de vehículo.

`attributes`  
Los atributos son pares clave-valor que contienen información estática. Los vehículos pueden contener atributos heredados del modelo del vehículo. Puede agregar atributos adicionales para distinguir un vehículo individual de otros vehículos creados a partir del mismo modelo de vehículo. Por ejemplo, si tiene un coche negro, puede especificar el siguiente valor para un atributo: `{"color": "black"}`.  
Los atributos deben definirse en el modelo de vehículo asociado antes de poder agregarlos a vehículos individuales.

Para obtener más información sobre los modelos de vehículo, los manifiestos del decodificador y los atributos, consulte [Modelos de FleetWise vehículos AWS IoT](vehicle-modeling.md).

AWS El IoT FleetWise proporciona las siguientes operaciones de API que puedes usar para crear y administrar vehículos.
+ [CreateVehicle](https://docs.aws.amazon.com/iot-fleetwise/latest/APIReference/API_CreateVehicle.html)— Crea un vehículo nuevo.
+ [BatchCreateVehicle](https://docs.aws.amazon.com/iot-fleetwise/latest/APIReference/API_BatchCreateVehicle.html)— Crea uno o más vehículos nuevos.
+ [UpdateVehicle](https://docs.aws.amazon.com/iot-fleetwise/latest/APIReference/API_UpdateVehicle.html)— Actualiza un vehículo existente.
+ [BatchUpdateVehicle](https://docs.aws.amazon.com/iot-fleetwise/latest/APIReference/API_BatchUpdateVehicle.html)— Actualiza uno o más vehículos existentes.
+ [DeleteVehicle](https://docs.aws.amazon.com/iot-fleetwise/latest/APIReference/API_DeleteVehicle.html)— Elimina un vehículo existente.
+ [ListVehicles](https://docs.aws.amazon.com/iot-fleetwise/latest/APIReference/API_ListVehicles.html)— Recupera una lista paginada de resúmenes de todos los vehículos.
+ [GetVehicle](https://docs.aws.amazon.com/iot-fleetwise/latest/APIReference/API_GetVehicle.html)— Recupera información sobre un vehículo.

**Topics**
+ [Aprovisionamiento AWS de FleetWise vehículos de IoT](provision-vehicles.md)
+ [Temas reservados en AWS IoT FleetWise](reserved-topics.md)
+ [Crea un FleetWise vehículo AWS de IoT](create-vehicle.md)
+ [Cree varios FleetWise vehículos AWS de IoT](create-vehicles-cli.md)
+ [Actualizar un FleetWise vehículo AWS de IoT](update-vehicle-cli.md)
+ [Actualice varios FleetWise vehículos AWS de IoT](update-vehicles-cli.md)
+ [Eliminar un FleetWise vehículo AWS de IoT](delete-vehicle.md)
+ [Obtenga información sobre FleetWise vehículos de AWS IoT](get-vehicle-information-cli.md)

# Aprovisionamiento AWS de FleetWise vehículos de IoT
<a name="provision-vehicles"></a>

El FleetWise software Edge Agent para AWS IoT que se ejecuta en su vehículo recopila y transfiere datos a la nube. AWS El IoT FleetWise se integra AWS IoT Core para respaldar la comunicación segura entre el software Edge Agent y la nube a través de MQTT. Cada vehículo corresponde a una AWS IoT cosa. Puedes usar un elemento existente AWS IoT para crear un vehículo o configurar el AWS IoT FleetWise para que cree automáticamente AWS IoT algo para tu vehículo. Para obtener más información, consulte [Crea un FleetWise vehículo AWS de IoT](create-vehicle.md).

AWS IoT Core admite la [autenticación](https://docs.aws.amazon.com/iot/latest/developerguide/authentication.html) y la [autorización](https://docs.aws.amazon.com/iot/latest/developerguide/iot-authorization.html) que ayudan a controlar de forma segura el acceso a FleetWise los recursos de AWS IoT. Los vehículos pueden usar certificados X.509 para autenticarse (iniciar sesión) para usar el AWS IoT FleetWise y AWS IoT Core políticas para obtener autorización (tener permisos) para realizar acciones específicas.

## Autenticación de vehículos
<a name="authenticate-vehicle"></a>

Puede crear AWS IoT Core políticas para autenticar sus vehículos.

**Para autenticar un vehículo**
+ Para crear una AWS IoT Core política, ejecute el siguiente comando.
  + *policy-name*Sustitúyalo por el nombre de la política que desee crear.
  + *file-name*Sustitúyalo por el nombre del archivo JSON que contiene la AWS IoT Core política.

  ```
  aws iot create-policy --policy-name policy-name --policy-document file://file-name.json 
  ```

### Ejemplo AWS IoT Core de política
<a name="automate-vehicle-example-policy"></a>

  Antes de utilizar la política de ejemplo, haga lo siguiente:
  + *us-east-1*Sustitúyala por la AWS región en la que creaste FleetWise los recursos de AWS IoT.
  + *111122223333*Sustitúyalo por tu ID de AWS cuenta.

  Este ejemplo incluye temas reservados para el AWS IoT FleetWise. Debe agregar los temas a la política. Para obtener más información, consulte [Temas reservados en AWS IoT FleetWise](reserved-topics.md).

------
#### [ JSON ]

****  

  ```
  {
      "Version":"2012-10-17",		 	 	 
      "Statement": [
          {
              "Effect": "Allow",
              "Action": [
                  "iot:Connect"
              ],
              "Resource": [
                  "arn:aws:iot:us-east-1:111122223333:client/${iot:Connection.Thing.ThingName}"
              ]
          },
          {
              "Effect": "Allow",
              "Action": [
                  "iot:Publish"
              ],
              "Resource": [
                  "arn:aws:iot:us-east-1:111122223333:topic/$aws/iotfleetwise/vehicles/${iot:Connection.Thing.ThingName}/checkins",
                  "arn:aws:iot:us-east-1:111122223333:topic/$aws/iotfleetwise/vehicles/${iot:Connection.Thing.ThingName}/signals"
              ]
          },
          {
              "Effect": "Allow",
              "Action": [
                  "iot:Subscribe"
              ],
              "Resource": [
                  "arn:aws:iot:us-east-1:111122223333:topicfilter/$aws/iotfleetwise/vehicles/${iot:Connection.Thing.ThingName}/collection_schemes",
                  "arn:aws:iot:us-east-1:111122223333:topicfilter/$aws/iotfleetwise/vehicles/${iot:Connection.Thing.ThingName}/decoder_manifests"
              ]
          },
          {
              "Effect": "Allow",
              "Action": [
                  "iot:Receive"
              ],
              "Resource": [
                  "arn:aws:iot:us-east-1:111122223333:topic/$aws/iotfleetwise/vehicles/${iot:Connection.Thing.ThingName}/collection_schemes",
                  "arn:aws:iot:us-east-1:111122223333:topic/$aws/iotfleetwise/vehicles/${iot:Connection.Thing.ThingName}/decoder_manifests"
              ]
          }
      ]
  }
  ```

------

## Autorización de vehículos
<a name="authorize-vehicles"></a>

Puede crear certificados X.509 para autorizar vehículos.

**Para autorizar un vehículo**
**importante**  
Le recomendamos que cree un certificado nuevo para cada vehículo.

1. Para crear un par de claves RSA y emitir un certificado X.509, ejecute el siguiente comando:
   + *cert*Sustitúyalo por el nombre del archivo que guarda el contenido del resultado del comando de CertificatePEM.
   + *public-key*Sustitúyalo por el nombre del archivo que guarda el contenido de la salida del comando de KeyPair. PublicKey.
   + *private-key*Sustitúyalo por el nombre del archivo que guarda el contenido de la salida del comando de KeyPair. PrivateKey.

   ```
   aws iot create-keys-and-certificate \
       --set-as-active \
       --certificate-pem-outfile cert.pem \
       --public-key-outfile public-key.key" \
       --private-key-outfile  private-key.key"
   ```

1. Copie el Nombre de recurso de Amazon (ARN) del certificado del resultado.

1. Para asociar la política al certificado, ejecute el siguiente comando:
   + *policy-name*Sustitúyalo por el nombre de la AWS IoT Core política que creó.
   + *certificate-arn*Sustitúyalo por el ARN del certificado que copió.

   ```
   aws iot attach-policy \
       --policy-name policy-name\
       --target "certificate-arn"
   ```

1. Para adjuntar el certificado al objeto, ejecute el siguiente comando:
   + *thing-name*Sustitúyalo por el nombre de AWS IoT tu objeto o el identificador de tu vehículo.
   + *certificate-arn*Sustitúyalo por el ARN del certificado que copió.

   ```
   aws iot attach-thing-principal \
       --thing-name thing-name \
       --principal "certificate-arn"
   ```

# Temas reservados en AWS IoT FleetWise
<a name="reserved-topics"></a>

**importante**  
El acceso a ciertas FleetWise funciones de AWS IoT está actualmente restringido. Para obtener más información, consulte [AWS Disponibilidad regional y de funciones en el AWS IoT FleetWise](fleetwise-regions.md).

AWS IoT FleetWise se reserva el uso de los siguientes temas. Si el tema reservado lo permite, puede suscribirse o publicar en el mismo. Sin embargo, no puede crear nuevos temas que comiencen por el símbolo de dólar (\$1). Si utiliza operaciones de publicación o suscripción no compatibles con temas reservados, es posible que la conexión finalice.


| Topic | Operación de cliente permitida | Description (Descripción) | 
| --- | --- | --- | 
|  `$aws/iotfleetwise/vehicles/vehicleName/checkins`  |  Publish  |  El software Edge Agent publica información sobre el estado del vehículo en este tema. La información sobre el estado del vehículo se intercambia en formato de búferes de protocolo (Protobuf). Para obtener más información, consulte la [https://github.com/aws/aws-iot-fleetwise-edge/blob/main/docs/dev-guide/edge-agent-dev-guide.md#data-models](https://github.com/aws/aws-iot-fleetwise-edge/blob/main/docs/dev-guide/edge-agent-dev-guide.md#data-models).  | 
|  `$aws/iotfleetwise/vehicles/vehicleName/signals`  |  Publish  |  El software Edge Agent publica señales en este tema. La información de la señal se intercambia en formato de búferes de protocolo (Protobuf). Para obtener más información, consulte la [https://github.com/aws/aws-iot-fleetwise-edge/blob/main/docs/dev-guide/edge-agent-dev-guide.md#data-models](https://github.com/aws/aws-iot-fleetwise-edge/blob/main/docs/dev-guide/edge-agent-dev-guide.md#data-models).  | 
|  `$aws/iotfleetwise/vehicles/vehicleName/collection_schemes`  |  Suscribirse  |  AWS IoT FleetWise publica esquemas de recopilación de datos sobre este tema. Los vehículos utilizan estos esquemas de recopilación de datos.  | 
|  `$aws/iotfleetwise/vehicles/vehicleName/decoder_manifests`  |  Suscribirse  |  AWS IoT FleetWise publica manifiestos de decodificadores sobre este tema. Los vehículos consumen estos manifiestos del decodificador.  | 
|  `$aws/iotfleetwise/vehicles/vehicleName/command/request`  |  Suscribirse  |  AWS IoT FleetWise publica solicitudes para ejecutar comandos en este tema. Luego, los vehículos consumen estas solicitudes de comando.  | 
|  `$aws/iotfleetwise/vehicles/vehicleName/command/response`  |  Publish  |  El software Edge Agent publica las respuestas a los comandos del vehículo sobre este tema. Las respuestas a los comandos se intercambian en formato de búferes de protocolo (Protobuf). Para obtener más información, consulte la [https://github.com/aws/aws-iot-fleetwise-edge/blob/main/docs/dev-guide/edge-agent-dev-guide.md#data-models](https://github.com/aws/aws-iot-fleetwise-edge/blob/main/docs/dev-guide/edge-agent-dev-guide.md#data-models).  | 
|  `$aws/iotfleetwise/vehicles/vehicleName/command/notification`  |  Suscribirse  |  AWS IoT FleetWise publica actualizaciones del estado de los comandos sobre este tema. Las notificaciones se envían en formato JSON.  | 
|  `$aws/iotfleetwise/vehicles/$vehicle_name/last_known_states/config`   |  Suscribirse  |  AWS IoT FleetWise publica las configuraciones de plantillas de estado sobre este tema. Los vehículos consumen estas configuraciones de plantillas de estado.  | 
|  `$aws/iotfleetwise/vehicles/$vehicle_name/last_known_states/data`   |  Publish  |  El software Edge Agent publica los datos recopilados a partir de las señales relacionadas con este tema.  | 
|  `$aws/iotfleetwise/vehicles/$vehicle_name/last_known_state/$state_template_name/data`   |  Suscribirse  |  AWS IoT FleetWise publica los datos recopilados de las señales configuradas en lo especificado `$state_template_name` en este tema. Las actualizaciones pueden ser parciales. Por ejemplo, si una asociación de plantillas de estados contiene varias señales con la estrategia de actualización en caso de cambio, un mensaje determinado solo incluirá las señales que hayan cambiado. La información de la señal se intercambia en formato de búferes de protocolo (Protobuf). Para obtener más información, consulte la [https://github.com/aws/aws-iot-fleetwise-edge/blob/main/docs/dev-guide/edge-agent-dev-guide.md#data-models](https://github.com/aws/aws-iot-fleetwise-edge/blob/main/docs/dev-guide/edge-agent-dev-guide.md#data-models).  | 

# Crea un FleetWise vehículo AWS de IoT
<a name="create-vehicle"></a>

**importante**  
El acceso a ciertas FleetWise funciones de AWS IoT está actualmente restringido. Para obtener más información, consulte [AWS Disponibilidad regional y de funciones en el AWS IoT FleetWise](fleetwise-regions.md).

Puedes usar la FleetWise consola de AWS IoT o la API para crear un vehículo.

**importante**  
Antes de comenzar, compruebe lo siguiente:  
Debe disponer de un modelo de vehículo y su estado debe ser `ACTIVE`. Para obtener más información, consulte [Gestione los modelos de FleetWise vehículos de AWS IoTModelos de vehículo](vehicle-models.md).
El modelo de vehículo debe estar asociado a un manifiesto del decodificador y el estado de dicho manifiesto debe ser `ACTIVE`. Para obtener más información, consulte [Gestione los AWS manifiestos de FleetWise decodificadores de IoT](decoder-manifests.md).

**Topics**
+ [Creación de un vehículo (consola)](#create-vehicle-console)
+ [Creación de un vehículo (AWS CLI)](#create-vehicle-cli)

## Creación de un vehículo (consola)
<a name="create-vehicle-console"></a>

Puedes usar la FleetWise consola AWS IoT para crear un vehículo.

**Para crear un vehículo**

1. Abre la [ FleetWise consola AWS de IoT](https://console.aws.amazon.com/iotfleetwise).

1. En el panel de navegación, elija **Vehículos**.

1. En la página de resumen del vehículo, elija **Crear vehículo** y, a continuación, siga los siguientes pasos.

**Topics**
+ [Paso 1: Definir las propiedades del vehículo](#define-vehicle-properties-console)
+ [Paso 2: Configurar el certificado del vehículo](#define-vehicle-certificate-console)
+ [Paso 3: Asociar políticas al certificado](#attach-vehicle-policy-console)
+ [Paso 4: Revisar y crear](#review-and-create-vehicle-console)

### Paso 1: Definir las propiedades del vehículo
<a name="define-vehicle-properties-console"></a>

En este paso, debe asignar un nombre al vehículo y asociarlo al manifiesto del modelo y al manifiesto del decodificador.

1. Escriba un nombre único para el vehículo.
**importante**  
Un vehículo corresponde a cualquier AWS IoT cosa. Si ya existe un objeto con ese nombre, elija **Asociar el vehículo a un objeto de IoT** para actualizarlo con el vehículo. O bien, elige un nombre de vehículo diferente y el AWS IoT FleetWise creará automáticamente algo nuevo para el vehículo.

1. Elija un modelo de vehículo (manifiesto del modelo) de la lista.

1. Elija un manifiesto del decodificador de la lista. El manifiesto del decodificador está asociado al modelo de vehículo.

1. (Opcional) Para asociar los atributos del vehículo, elija **Agregar atributos**. Si se salta este paso, tendrá que añadir atributos una vez creado el vehículo para poder implementarlo en las campañas.

1. (Opcional) Para asociar etiquetas al vehículo, elija **Agregar etiqueta nueva**. También puede agregar etiquetas una vez creado el vehículo.

1. Elija **Siguiente**.

### Paso 2: Configurar el certificado del vehículo
<a name="define-vehicle-certificate-console"></a>

Para usar tu vehículo como una AWS IoT cosa, debes configurar un certificado de vehículo con una política adjunta. Si se salta este paso, debe configurar un certificado tras crear el vehículo para poder distribuirlo en las campañas.

1. Elija **Generar automáticamente un nuevo certificado (opción recomendada)**.

1. Elija **Siguiente**.

### Paso 3: Asociar políticas al certificado
<a name="attach-vehicle-policy-console"></a>

Asocie una política al certificado que ha configurado en el paso anterior.

1. En **Políticas**, introduzca el nombre de una política existente. Para crear una nueva política, elija **Crear política**.

1. Elija **Siguiente**.

### Paso 4: Revisar y crear
<a name="review-and-create-vehicle-console"></a>

Verifique las configuraciones del vehículo y, a continuación, elija **Crear vehículo**.

**importante**  
Una vez creado el vehículo, debe descargar el certificado y las claves. Utilizará el certificado y la clave privada para conectar el vehículo en el FleetWise software Edge Agent para AWS IoT.

## Creación de un vehículo (AWS CLI)
<a name="create-vehicle-cli"></a>

Al crear un vehículo, debe utilizar un modelo de vehículo que esté asociado a un manifiesto del decodificador. Puedes usar la operación de la [CreateVehicle](https://docs.aws.amazon.com/iot-fleetwise/latest/APIReference/API_CreateVehicle.html)API para crear un vehículo. El siguiente ejemplo utiliza AWS CLI.

Para crear un vehículo, ejecute el siguiente comando:

*file-name*Sustitúyalo por el nombre del archivo.json que contiene la configuración del vehículo.

```
aws iotfleetwise create-vehicle --cli-input-json file://file-name.json
```

**Example — configuración del vehículo**  
+ (Opcional) El valor `associationBehavior` puede ser uno de los siguientes:
  + `CreateIotThing`— Cuando se crea tu vehículo, el AWS IoT crea FleetWise automáticamente una AWS IoT cosa con el nombre del identificador de tu vehículo.
  + `ValidateIotThingExists`: se utiliza un objeto de AWS IoT existente para crear un vehículo.

    Para crear AWS IoT algo, ejecuta el siguiente comando. *thing-name*Sustitúyalo por el nombre de la cosa que desee crear.

    ```
    aws iot create-thing --thing-name thing-name
    ```

  Si no se especifica, el AWS IoT crea FleetWise automáticamente AWS IoT algo para tu vehículo.
**importante**  
Asegúrese de que la AWS IoT cosa esté aprovisionada una vez creado el vehículo. Para obtener más información, consulte [Aprovisionamiento AWS de FleetWise vehículos de IoT](provision-vehicles.md).
+ *vehicle-name*Sustitúyalo por uno de los siguientes.
  + El nombre de AWS IoT lo que quieres, si `associationBehavior` está configurado para ello`ValidateIotThingExists`.
  + El ID del vehículo que debe crearse si `associationBehavior` está configurado como `CreateIotThing`.

    El ID del vehículo puede tener de 1 a 100 caracteres. Caracteres válidos: a-z, A-Z, 0-9, guion (‐), guion bajo (\$1) y dos puntos (:).
+ *model-manifest-ARN*Sustitúyalo por el ARN del modelo de su vehículo (manifiesto del modelo).
+ *decoder-manifest-ARN*Sustitúyalo por el ARN del manifiesto del decodificador asociado al modelo de vehículo especificado.
+ (Opcional) Puede agregar atributos adicionales para distinguir este vehículo de otros vehículos creados a partir del mismo modelo de vehículo. Por ejemplo, si tiene un automóvil eléctrico, puede especificar el siguiente valor para un atributo: `{"fuelType": "electric"}`.
**importante**  <a name="update-attributes-requirement"></a>
Los atributos deben definirse en el modelo de vehículo asociado antes de poder agregarlos a vehículos individuales.

```
{
    "associationBehavior": "associationBehavior",
    "vehicleName": "vehicle-name", 
    "modelManifestArn": "model-manifest-ARN",
    "decoderManifestArn": "decoder-manifest-ARN",           
    "attributes": {
        "key": "value"
    }
}
```

**Example — asociar una plantilla de estado al vehículo**  
Puede asociar [plantillas de estado](state-templates.md) al vehículo para poder recopilar las actualizaciones de estado del vehículo en la nube mediante el uso del `stateTemplates` campo.   
En este ejemplo, `stateTemplateUpdateStrategy` puede ser una de las siguientes:  
+ `periodic`: le permite especificar una velocidad fija a la que el software Edge Agent enviará las actualizaciones de señal a la nube (el software Edge Agent enviará las actualizaciones incluso si el valor de la señal no ha cambiado entre las actualizaciones).
+ `onChange`: El software Edge Agent enviará actualizaciones de señal cada vez que la señal cambie.

```
aws iotfleetwise create-vehicle --cli-input-json file://create-vehicle.json
```
Dónde contiene el `create-vehicle.json` archivo (por ejemplo):  

```
{
    "associationBehavior": "associationBehavior",
    "vehicleName": "vehicle-name", 
    "modelManifestArn": "model-manifest-ARN",
    "decoderManifestArn": "decoder-manifest-ARN",           
    "attributes": {
        "key": "value"
    },
    "stateTemplates": [ 
        {
            "identifier": "state-template-name",
            "stateTemplateUpdateStrategy": {
                "periodic": {
                    "stateTemplateUpdateRate": {
                        "unit": "SECOND",
                        "value": 10
                    }
                }
            }
        }
    ]
}
```

Si has [activado el cifrado](key-management.md) mediante una AWS KMS clave gestionada por el cliente, incluye la siguiente declaración de política para que tu función pueda invocar la operación de la `CreateVehicle` API. 

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "kms:GenerateDataKey*",
                "kms:Decrypt"
            ],
            "Resource": [
                "arn:aws:kms:us-east-1:111122223333:key/KMS_KEY_ID"
            ]
        }
    ]
}
```

------

# Cree varios FleetWise vehículos AWS de IoT
<a name="create-vehicles-cli"></a>

Puede utilizar la operación de la [BatchCreateVehicle](https://docs.aws.amazon.com/iot-fleetwise/latest/APIReference/API_BatchCreateVehicle.html)API para crear varios vehículos a la vez. El siguiente ejemplo utiliza AWS CLI.

Para crear varios vehículos, ejecute el siguiente comando:

*file-name*Sustitúyalo por el nombre del archivo.json que contiene las configuraciones de varios vehículos.

```
aws iotfleetwise batch-create-vehicle --cli-input-json file://file-name.json
```

**Example — configuraciones de vehículos**  

```
{
    "vehicles": [
        {
                "associationBehavior": "associationBehavior",
                "vehicleName": "vehicle-name", 
                "modelManifestArn": "model-manifest-ARN",
                "decoderManifestArn": "decoder-manifest-ARN",           
                "attributes": {
                    "key": "value"
                }
        },
        {
                "associationBehavior": "associationBehavior",
                "vehicleName": "vehicle-name", 
                "modelManifestArn": "model-manifest-ARN",
                "decoderManifestArn": "decoder-manifest-ARN",           
                "attributes": {
                    "key": "value"                           
                }
        }
    ]
}
```

Puede crear hasta 10 vehículos por cada operación por lotes. Para obtener más información sobre la configuración de vehículos, consulte [Crea un FleetWise vehículo AWS de IoT](create-vehicle.md).

Si has [activado el cifrado](key-management.md) mediante una AWS KMS clave gestionada por el cliente, incluye la siguiente declaración de política para que tu función pueda invocar la operación de la `BatchCreateVehicle` API. 

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "kms:GenerateDataKey*",
                "kms:Decrypt"
            ],
            "Resource": [
                "arn:aws:kms:us-east-1:111122223333:key/KMS_KEY_ID"
            ]
        }
    ]
}
```

------

# Actualizar un FleetWise vehículo AWS de IoT
<a name="update-vehicle-cli"></a>

**importante**  
El acceso a ciertas FleetWise funciones de AWS IoT está actualmente restringido. Para obtener más información, consulte [AWS Disponibilidad regional y de funciones en el AWS IoT FleetWise](fleetwise-regions.md).

Puedes usar la operación de la [UpdateVehicle](https://docs.aws.amazon.com/iot-fleetwise/latest/APIReference/API_UpdateVehicle.html)API para actualizar un vehículo existente. El siguiente ejemplo utiliza AWS CLI.

Para actualizar un vehículo, ejecute el siguiente comando:

*file-name*Sustitúyalo por el nombre del archivo.json que contiene la configuración de tu vehículo.

```
aws iotfleetwise update-vehicle --cli-input-json file://file-name.json
```

**Example — configuración del vehículo**  
+ *vehicle-name*Sustitúyala por la ID del vehículo que deseas actualizar.
+ (Opcional) *model-manifest-ARN* Sustitúyalo por el ARN del modelo de vehículo (manifiesto del modelo) que utilizas para sustituir el modelo de vehículo en uso.
+ (Opcional) *decoder-manifest-ARN* Sustitúyalo por el ARN del manifiesto del decodificador asociado al nuevo modelo de vehículo que especificaste.
+ (Opcional) Sustitúyalo por *attribute-update-mode* los atributos del vehículo.
  + `Merge`: los atributos nuevos se combinan con los atributos existentes actualizándolos con nuevos valores y agregando nuevos atributos si no existen.

    Por ejemplo, si un vehículo tiene los atributos `{"color": "black", "fuelType": "electric"}` y lo actualiza con los atributos `{"color": "", "fuelType": "gasoline", "model": "x"}`, el vehículo actualizado tendrá los siguientes atributos: `{"fuelType": "gasoline", "model": "x"}`.
  + `Overwrite`: los atributos existentes se sustituyen por atributos nuevos.

    Por ejemplo, si un vehículo tiene los atributos `{"color": "black", "fuelType": "electric"}` y lo actualiza con el atributo `{"model": "x"}`, el vehículo actualizado tendrá el atributo `{"model": "x"}`.

  Esto es obligatorio si la entrada contiene atributos.
+ (Opcional) Para agregar nuevos atributos o actualizar los existentes con nuevos valores, configure `attributes`. Por ejemplo, si tiene un automóvil eléctrico, puede especificar el siguiente valor para un atributo: `{"fuelType": "electric"}`.

  Para eliminar atributos, configure `attributeUpdateMode` como `Merge`.
**importante**  <a name="update-attributes-requirement"></a>
Los atributos deben definirse en el modelo de vehículo asociado antes de poder agregarlos a vehículos individuales.

```
 { 
         "vehicleName": "vehicle-name",
         "modelManifestArn": "model-manifest-arn",
         "decoderManifestArn": "decoder-manifest-arn",
         "attributeUpdateMode": "attribute-update-mode"
         }         
}
```

**Example — añadir o eliminar plantillas de estado asociadas al vehículo**  
Puede asociar plantillas de estado adicionales o eliminar las asociaciones existentes del vehículo mediante los siguientes campos:  
+ `stateTemplatesToAdd` 
+ `stateTemplatesToRemove` 

```
aws iotfleetwise update-vehicle --cli-input-json file://update-vehicle.json
```
Dónde contiene el `update-vehicle.json` archivo (por ejemplo):  

```
{
    "vehicleName": "vehicle-name",
    "modelManifestArn": "model-manifest-arn",
    "decoderManifestArn": "decoder-manifest-arn",
    "attributeUpdateMode": "attribute-update-mode",
    "stateTemplatesToAdd": [ 
        {
            "identifier": "state-template-name",
            "stateTemplateUpdateStrategy": {
                "onChange": {}
            }
        }
    ],
    "stateTemplatesToRemove": ["state-template-name"]            
}
```

Si has [activado el cifrado](key-management.md) mediante una AWS KMS clave gestionada por el cliente, incluye la siguiente declaración de política para que tu función pueda invocar la operación de la `UpdateVehicle` API. 

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "kms:GenerateDataKey*",
                "kms:Decrypt"
            ],
            "Resource": [
                "arn:aws:kms:us-east-1:111122223333:key/KMS_KEY_ID"
            ]
        }
    ]
}
```

------

# Actualice varios FleetWise vehículos AWS de IoT
<a name="update-vehicles-cli"></a>

Puedes usar la operación de la [BatchUpdateVehicle](https://docs.aws.amazon.com/iot-fleetwise/latest/APIReference/API_BatchUpdateVehicle.html)API para actualizar varios vehículos existentes a la vez. El siguiente ejemplo utiliza AWS CLI.

Para actualizar varios vehículos, ejecute el siguiente comando:

*file-name*Sustitúyalo por el nombre del archivo.json que contiene las configuraciones de varios vehículos.

```
aws iotfleetwise batch-update-vehicle --cli-input-json file://file-name.json
```

**Example — configuraciones de vehículos**  

```
{
   "vehicles": [ 
      { 
         "vehicleName": "vehicle-name",
         "modelManifestArn": "model-manifest-arn",         
         "decoderManifestArn": "decoder-manifest-arn",         
         "mergeAttributes": true,         
         "attributes": {                    
         "key": "value"
         }     
      }, 
      { 
         "vehicleName": "vehicle-name",         
         "modelManifestArn": "model-manifest-arn",         
         "decoderManifestArn": "decoder-manifest-arn",         
         "mergeAttributes": true,         
         "attributes": {                     
         "key": "value"
         }     
      }
   ]
}
```

Puede actualizar hasta 10 vehículos en cada operación por lotes. Para obtener más información acerca la configuración de cada vehículo, consulte [Actualizar un FleetWise vehículo AWS de IoT](update-vehicle-cli.md).

Si has [activado el cifrado](key-management.md) mediante una AWS KMS clave gestionada por el cliente, incluye la siguiente declaración de política para que tu función pueda invocar la operación de la `BatchUpdateVehicle` API. 

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "kms:GenerateDataKey*",
                "kms:Decrypt"
            ],
            "Resource": [
                "arn:aws:kms:us-east-1:111122223333:key/KMS_KEY_ID"
            ]
        }
    ]
}
```

------

# Eliminar un FleetWise vehículo AWS de IoT
<a name="delete-vehicle"></a>

Puedes usar la FleetWise consola o la API de AWS IoT para eliminar vehículos.

**importante**  
Una vez que se elimina un vehículo, el AWS IoT lo elimina FleetWise automáticamente de las flotas y campañas asociadas. Para obtener más información, consulte [Gestione flotas en IoT AWS FleetWise](fleets.md) y [Recopile FleetWise datos de AWS IoT con campañas](campaigns.md). Sin embargo, el vehículo sigue existiendo como una cosa o sigue asociado a una cosa dentro de ella. AWS IoT Core Para obtener instrucciones sobre cómo eliminar un objeto, consulte [Eliminar un objeto](https://docs.aws.amazon.com/iot/latest/developerguide/thing-registry.html#delete-thing) en la *Guía para desarrolladores de AWS IoT Core *.

## Eliminación de un vehículo (consola)
<a name="delete-vehicle-console"></a>

Puedes usar la FleetWise consola AWS IoT para eliminar un vehículo.

**Para eliminar un vehículo**

1. <a name="fleetwise-open-console"></a>Abre la [ FleetWise consola AWS de IoT](https://console.aws.amazon.com/iotfleetwise).

1. En el panel de navegación, elija **Vehículos**.

1. En la página **Vehículos**, seleccione el botón situado junto al vehículo que desea eliminar.

1. Elija **Eliminar**.

1. En **Eliminar **vehicle-name****, introduzca el nombre del vehículo y, a continuación, elija **Eliminar**.

## Eliminación de un vehículo (AWS CLI)
<a name="delete-vehicle-cli"></a>

Puedes usar la operación de la [DeleteVehicle](https://docs.aws.amazon.com/iot-fleetwise/latest/APIReference/API_DeleteVehicle.html)API para eliminar un vehículo. En el siguiente ejemplo se utiliza AWS CLI.

Para eliminar un vehículo, ejecute el siguiente comando:

*vehicle-name*Sustitúyalo por el identificador del vehículo que desee eliminar.

```
aws iotfleetwise delete-vehicle --vehicle-name vehicle-name
```

### Verifica la eliminación del vehículo
<a name="verify-vehicle-deletion"></a>

Puedes usar la operación de la [ListVehicles](https://docs.aws.amazon.com/iot-fleetwise/latest/APIReference/API_ListVehicles.html)API para verificar si se ha eliminado un vehículo. El siguiente ejemplo utiliza AWS CLI.

Para recuperar una lista paginada de resúmenes de todos los vehículos, ejecute el siguiente comando:

```
aws iotfleetwise list-vehicles
```

Si has [activado el cifrado](key-management.md) mediante una AWS KMS clave gestionada por el cliente, incluye la siguiente declaración de política para que tu función pueda invocar la operación de la `ListVehicles` API. 

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "kms:Decrypt"
            ],
            "Resource": [
                "arn:aws:kms:us-east-1:111122223333:key/KMS_KEY_ID"
            ]
        }
    ]
}
```

------

# Obtenga información sobre FleetWise vehículos de AWS IoT
<a name="get-vehicle-information-cli"></a>

**importante**  
El acceso a ciertas FleetWise funciones de AWS IoT está actualmente restringido. Para obtener más información, consulte [AWS Disponibilidad regional y de funciones en el AWS IoT FleetWise](fleetwise-regions.md).

Puede utilizar la operación de la [GetVehicle](https://docs.aws.amazon.com/iot-fleetwise/latest/APIReference/API_GetVehicle.html)API para recuperar la información del vehículo. El siguiente ejemplo utiliza AWS CLI.

Para recuperar los metadatos de un vehículo, ejecute el siguiente comando:

*vehicle-name*Sustitúyala por la ID del vehículo que deseas recuperar.

```
aws iotfleetwise get-vehicle --vehicle-name vehicle-name
```

**nota**  
Esta operación es [a largo plazo coherente](https://web.stanford.edu/class/cs345d-01/rl/eventually-consistent.pdf). En otras palabras, los cambios que se hagan en el vehículo podrían no reflejarse de inmediato.

Puede utilizar la operación de la [GetVehicleStatus](https://docs.aws.amazon.com/iot-fleetwise/latest/APIReference/API_GetVehicleStatus.html)API para recuperar el estado de los recursos asociados a un vehículo. El siguiente ejemplo utiliza AWS CLI.

Para recuperar el estado de los recursos asociados a un vehículo, ejecuta el siguiente comando.
+ *vehicle-name*Sustitúyalo por el identificador del vehículo al que están asociados los recursos.
+ *type*Sustitúyalo por el tipo de recurso cuyo estado desee recuperar. Los valores válidos para `type` son `CAMPAIGN`, `STATE_TEMPLATE` y `DECODER`.

```
aws iotfleetwise get-vehicle-status --vehicle-name vehicle-name --type type
```

Si [habilitó el cifrado](key-management.md) mediante una AWS KMS clave administrada por el cliente, incluya la siguiente declaración de política para que su función pueda invocar las operaciones `GetVehicle` o las de la `GetVehicleStatus` API. 

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "kms:Decrypt"
            ],
            "Resource": [
                "arn:aws:kms:us-east-1:111122223333:key/KMS_KEY_ID"
            ]
        }
    ]
}
```

------