

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# Manage AWS IoT FleetWise 車両
<a name="vehicles"></a>

車両とは、車両モデルのインスタンスです。車両は車両モデルから作成し、デコーダーマニフェストに関連付ける必要があります。車両は 1 つ以上のデータストリームをクラウドにアップロードします。例えば、車両は走行距離、エンジン温度、ヒーターの状態に関するデータをクラウドに送信できます。すべての車両には、以下の情報が含まれています。

`vehicleName`  
車両を識別する ID。  
車両名には、個人を特定できる情報 (PII) や、その他の機密情報または重要情報を追加しないでください。車両名は、Amazon CloudWatch を含む他の AWS のサービスからアクセスできます。車両名でプライベートデータや機密データを使用することは想定されていません。

`modelManifestARN`  
車両モデル (モデルマニフェスト) の Amazon リソースネーム (ARN)。すべての車両は車両モデルから作成されます。同じ車両モデルから作成された車両は、その車両モデルから継承された同じシグナルのグループで構成されます。これらのシグナルはシグナルカタログで定義され、標準化されます。

`decoderManifestArn`  
デコーダーマニフェストの ARN。デコーダーマニフェストは、 AWS IoT FleetWise が raw シグナルデータ (バイナリデータ) を人間が読み取れる値に変換するために使用できるデコード情報を提供します。デコーダーマニフェストは車両モデルに関連付ける必要があります。 AWS IoT FleetWise は、同じデコーダーマニフェストを使用して、同じ車両モデルに基づいて作成された車両から raw データをデコードします。

`attributes`  
属性は、静的な情報を含むキーと値のペアです。車両には、車両モデルから継承された属性を含めることができます。同じ車両モデルから作成された他の車両と区別するために、個々の車両に追加の属性を設定することもできます。例えば、黒い車があるとすると、属性として `{"color": "black"}` という値を指定できます。  
個々の車両に属性を追加できるようにするには、関連付けられている車両モデルで、それらの属性を事前に定義する必要があります。

車両モデル、デコーダーマニフェスト、属性の詳細については、「[Model AWS IoT FleetWise 車両](vehicle-modeling.md)」を参照してください。

AWS IoT FleetWise には、車両の作成と管理に使用できる以下の API オペレーションが用意されています。
+ [CreateVehicle](https://docs.aws.amazon.com/iot-fleetwise/latest/APIReference/API_CreateVehicle.html) - 新しい車両を作成します。
+ [BatchCreateVehicle](https://docs.aws.amazon.com/iot-fleetwise/latest/APIReference/API_BatchCreateVehicle.html) - 1 台以上の新しい車両を作成します。
+ [UpdateVehicle](https://docs.aws.amazon.com/iot-fleetwise/latest/APIReference/API_UpdateVehicle.html) - 既存の車両を更新します。
+ [BatchUpdateVehicle](https://docs.aws.amazon.com/iot-fleetwise/latest/APIReference/API_BatchUpdateVehicle.html) - 1 台以上の既存の車両を更新します。
+ [DeleteVehicle](https://docs.aws.amazon.com/iot-fleetwise/latest/APIReference/API_DeleteVehicle.html) - 既存の車両を削除します。
+ [ListVehicles](https://docs.aws.amazon.com/iot-fleetwise/latest/APIReference/API_ListVehicles.html) - すべての車両の概要をページ分割されたリストとして取得します。
+ [GetVehicle](https://docs.aws.amazon.com/iot-fleetwise/latest/APIReference/API_GetVehicle.html) - 車両に関する情報を取得します。

**Topics**
+ [Provision AWS IoT FleetWise 車両](provision-vehicles.md)
+ [AWS IoT FleetWise の予約済みトピック](reserved-topics.md)
+ [AWS IoT FleetWise 車両を作成する](create-vehicle.md)
+ [複数の AWS IoT FleetWise 車両を作成する](create-vehicles-cli.md)
+ [AWS IoT FleetWise 車両を更新する](update-vehicle-cli.md)
+ [multiple AWS IoT FleetWise 車両を更新する](update-vehicles-cli.md)
+ [AWS IoT FleetWise 車両を削除する](delete-vehicle.md)
+ [Get AWS IoT FleetWise 車両情報](get-vehicle-information-cli.md)

# Provision AWS IoT FleetWise 車両
<a name="provision-vehicles"></a>

車両で実行されている Edge Agent for AWS IoT FleetWise ソフトウェアはデータを収集し、クラウドに転送します。 AWS IoT FleetWise は と統合 AWS IoT Core され、MQTT を介したエッジエージェントソフトウェアとクラウド間の安全な通信をサポートします。各車両は AWS IoT モノに対応しています。既存の AWS IoT モノを使用して車両を作成するか、Set AWS IoT FleetWise を使用して車両の AWS IoT モノを自動的に作成できます。詳細については、「[AWS IoT FleetWise 車両を作成する](create-vehicle.md)」を参照してください。

AWS IoT Core は、 AWS IoT FleetWise リソースへのアクセスを安全に制御するのに役立つ[認証](https://docs.aws.amazon.com/iot/latest/developerguide/authentication.html)と[認可](https://docs.aws.amazon.com/iot/latest/developerguide/iot-authorization.html)をサポートしています。車両は X.509 証明書を使用して認証 (サインイン) され、 AWS IoT FleetWise と AWS IoT Core ポリシーを使用して、指定されたアクションを実行する権限 (アクセス許可を持つ) を取得できます。

## 車両の認証
<a name="authenticate-vehicle"></a>

車両を認証する AWS IoT Core ポリシーを作成できます。

**車両を認証するには**
+  AWS IoT Core ポリシーを作成するには、次のコマンドを実行します。
  + *policy-name* は、作成するポリシーの名前に置き換えます。
  + *file-name* を、 AWS IoT Core ポリシーを含む JSON ファイルの名前に置き換えます。

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

### AWS IoT Core ポリシーの例
<a name="automate-vehicle-example-policy"></a>

  ポリシーの例を使用する前に、次の作業を行ってください。
  + *us-east-1* を、 AWS IoT FleetWise リソースを作成した AWS リージョンに置き換えます。
  + *111122223333* を AWS アカウント ID に置き換えます。

  この例では、 AWS IoT FleetWise によって予約されたトピックが含まれています。これらのトピックをポリシーに追加する必要があります。詳細については、「[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"
              ]
          }
      ]
  }
  ```

------

## 車両の認可
<a name="authorize-vehicles"></a>

車両を認可する X.509 証明書を作成できます。

**車両を認可するには**
**重要**  
車両ごとに新しい証明書を作成することをお勧めします。

1. RSA キーペアを作成して X.509 証明書を発行するには、次のコマンドを実行します。
   + *cert* は、コマンドから出力される certificatePem の内容を保存するファイルの名前に置き換えます。
   + *public-key* は、コマンドから出力される keyPair.PublicKey の内容を保存するファイルの名前に置き換えます。
   + *private-key* は、コマンドから出力される 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. 出力から、証明書の Amazon リソースネーム (ARN) をコピーします。

1. 証明書にポリシーをアタッチするには、次のコマンドを実行します。
   + *policy-name* を、作成した AWS IoT Core ポリシーの名前に置き換えます。
   + *certificate-arn* は、コピーした証明書の ARN に置き換えます。

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

1. 証明書をモノにアタッチするには、次のコマンドを実行します。
   + *thing-name* を AWS IoT モノの名前または車両の ID に置き換えます。
   + *certificate-arn* は、コピーした証明書の ARN に置き換えます。

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

# AWS IoT FleetWise の予約済みトピック
<a name="reserved-topics"></a>

**重要**  
現在、特定の AWS IoT FleetWise 機能へのアクセスはゲートされています。詳細については、「[AWS AWS IoT FleetWise でのリージョンと機能の可用性](fleetwise-regions.md)」を参照してください。

AWS IoT FleetWise は、以下のトピックの使用を予約します。予約済みトピックで許可されている場合は、そのトピックにサブスクライブまたは発行することができます。ただし、ドル記号 (\$1) で始まる新しいトピックを作成することはできません。予約済みトピックでサポートされていない発行オペレーションやサブスクライブオペレーションを使用すると、接続が終了することがあります。


| Topic | 許可されているクライアントオペレーション | 説明 | 
| --- | --- | --- | 
|  `$aws/iotfleetwise/vehicles/vehicleName/checkins`  |  発行  |  エッジエージェントソフトウェアは、このトピックに車両のステータス情報を発行します。 車両ステータス情報はプロトコルバッファ (Protobuf) 形式で交換されます。詳細については、[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`  |  発行  |  エッジエージェントソフトウェアは、このトピックにシグナルを発行します。 シグナル情報はプロトコルバッファ (Protobuf) 形式で交換されます。詳細については、[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`  |  Subscribe  |  AWS IoT FleetWise はこのトピックにデータ収集スキームを発行します。車両はこれらのデータ収集スキームを使用します。  | 
|  `$aws/iotfleetwise/vehicles/vehicleName/decoder_manifests`  |  Subscribe  |  AWS IoT FleetWise はこのトピックにデコーダーマニフェストを発行します。車両はこれらのデコーダーマニフェストを使用します。  | 
|  `$aws/iotfleetwise/vehicles/vehicleName/command/request`  |  Subscribe  |  AWS IoT FleetWise は、このトピックにコマンドを実行するリクエストを発行します。その後、車両はこれらのコマンドリクエストを使用します。  | 
|  `$aws/iotfleetwise/vehicles/vehicleName/command/response`  |  発行  |  Edge Agent ソフトウェアは、車両からのコマンドレスポンスをこのトピックに発行します。 コマンドレスポンスは、プロトコルバッファ (Protobuf) 形式で交換されます。詳細については、[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`  |  Subscribe  |  AWS IoT FleetWise はこのトピックにコマンドステータスの更新を発行します。通知は JSON 形式で送信されます。  | 
|  `$aws/iotfleetwise/vehicles/$vehicle_name/last_known_states/config`   |  Subscribe  |  AWS IoT FleetWise はこのトピックに状態テンプレート設定を発行します。車両はこれらの状態テンプレート設定を使用します。  | 
|  `$aws/iotfleetwise/vehicles/$vehicle_name/last_known_states/data`   |  発行  |  Edge Agent ソフトウェアは、シグナルから収集されたデータをこのトピックに発行します。  | 
|  `$aws/iotfleetwise/vehicles/$vehicle_name/last_known_state/$state_template_name/data`   |  Subscribe  |  AWS IoT FleetWise は、このトピックに指定された で設定されたシグナルから収集されたデータを発行`$state_template_name`します。更新は部分的な場合があります。たとえば、状態テンプレートの関連付けに、変更時の更新戦略を含む複数のシグナルが含まれている場合、変更されたシグナルのみが特定のメッセージに含まれます。 シグナル情報はプロトコルバッファ (Protobuf) 形式で交換されます。詳細については、[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 IoT FleetWise 車両を作成する
<a name="create-vehicle"></a>

**重要**  
現在、特定の AWS IoT FleetWise 機能へのアクセスはゲートされています。詳細については、「[AWS AWS IoT FleetWise でのリージョンと機能の可用性](fleetwise-regions.md)」を参照してください。

 AWS IoT FleetWise コンソールまたは API を使用して車両を作成できます。

**重要**  
開始する前に、次の点を確認してください。  
車両モデルが用意されていて、その車両モデルのステータスが `ACTIVE` になっている必要があります。詳細については、「[Manage AWS IoT FleetWise 車両モデル車両モデル](vehicle-models.md)」を参照してください。
車両モデルがデコーダーマニフェストに関連付けられていて、そのデコーダーマニフェストのステータスが `ACTIVE` になっている必要があります。詳細については、「[Manage AWS IoT FleetWise デコーダーマニフェスト](decoder-manifests.md)」を参照してください。

**Topics**
+ [車両の作成 (コンソール)](#create-vehicle-console)
+ [車両の作成 (AWS CLI)](#create-vehicle-cli)

## 車両の作成 (コンソール)
<a name="create-vehicle-console"></a>

 AWS IoT FleetWise コンソールを使用して車両を作成できます。

**車両を作成するには**

1. [AWS IoT FleetWise コンソール](https://console.aws.amazon.com/iotfleetwise)を開きます。

1. ナビゲーションペインで、**[車両]** を選択します。

1. 車両の概要ページで、**[車両を作成]** を選択し、以下の手順を実行します。

**Topics**
+ [ステップ 1: 車両のプロパティを定義する](#define-vehicle-properties-console)
+ [ステップ 2: 車両証明書を構成する](#define-vehicle-certificate-console)
+ [ステップ 3: 証明書にポリシーをアタッチする](#attach-vehicle-policy-console)
+ [ステップ 4: 確認して作成する](#review-and-create-vehicle-console)

### ステップ 1: 車両のプロパティを定義する
<a name="define-vehicle-properties-console"></a>

このステップでは、車両に名前を付け、モデルマニフェストとデコーダーマニフェストに関連付けます。

1. 車両の一意の名前を入力します。
**重要**  
車両は AWS IoT モノに対応します。同じ名前のモノが既に存在する場合は、**[車両を IoT モノに関連付ける]** を選択すると、その車両でモノが更新されます。または、別の車両名を選択すると、 AWS IoT FleetWise は自動的に車両の新しいモノを作成します。

1. リストから車両モデル (モデルマニフェスト) を選択します。

1. リストからデコーダーマニフェストを選択します。デコーダーマニフェストが車両モデルに関連付けられます。

1. (オプション) 車両の属性を関連付けるには、**[属性を追加]** を選択します。このステップを省略した場合、車両をキャンペーンにデプロイできるようにするには、車両の作成後に属性を追加する必要があります。

1. (オプション) 車両にタグを関連付けるには、**[新しいタグを追加]** を選択します。車両の作成後にタグを追加することもできます。

1. **[次へ]** を選択します。

### ステップ 2: 車両証明書を構成する
<a name="define-vehicle-certificate-console"></a>

車両を AWS IoT モノとして使用するには、ポリシーがアタッチされた車両証明書を設定する必要があります。このステップを省略した場合、車両をキャンペーンにデプロイできるようにするには、車両の作成後に証明書を構成する必要があります。

1. **[新しい証明書の自動生成 (推奨)]** を選択します。

1. [**次へ**] を選択します。

### ステップ 3: 証明書にポリシーをアタッチする
<a name="attach-vehicle-policy-console"></a>

前のステップで構成した証明書にポリシーをアタッチします。

1. **[ポリシー]** に、既存のポリシー名を入力します。新しいポリシーを作成するには、**[ポリシーを作成]** を選択します。

1. [**次へ**] を選択します。

### ステップ 4: 確認して作成する
<a name="review-and-create-vehicle-console"></a>

車両の構成を確認し、**[車両を作成]** を選択します。

**重要**  
車両が作成されたら、証明書とキーをダウンロードする必要があります。証明書とプライベートキーを使用して、 Edge Agent for AWS IoT FleetWise ソフトウェアで車両を接続します。

## 車両の作成 (AWS CLI)
<a name="create-vehicle-cli"></a>

車両を作成するときは、デコーダーマニフェストに関連付けられた車両モデルを使用する必要があります。[CreateVehicle](https://docs.aws.amazon.com/iot-fleetwise/latest/APIReference/API_CreateVehicle.html) API オペレーションを使用すると、車両を作成できます。次の例では AWS CLIを使用しています。

車両を作成するには、次のコマンドを実行します。

*file-name* を、車両設定を含む .json ファイルの名前に置き換えます。

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

**Example — 車両設定**  
+ (オプション) `associationBehavior` の値には次のいずれかを指定できます。
  + `CreateIotThing` – 車両が作成されると、 AWS IoT FleetWise は車両の車両 ID の名前を持つ AWS IoT モノを自動的に作成します。
  + `ValidateIotThingExists` - 既存の AWS IoT モノを使用して車両を作成します。

     AWS IoT モノを作成するには、次のコマンドを実行します。*thing-name* は、作成するモノの名前に置き換えます。

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

  指定しない場合、 AWS IoT FleetWise は車両の AWS IoT モノを自動的に作成します。
**重要**  
車両の作成後に AWS IoT モノがプロビジョニングされていることを確認します。詳細については、「[Provision AWS IoT FleetWise 車両](provision-vehicles.md)」を参照してください。
+ *vehicle-name* は、次のいずれかに置き換えます。
  + `associationBehavior` が に設定されている場合の AWS IoT モノの名前`ValidateIotThingExists`。
  + `associationBehavior` が `CreateIotThing` に設定されている場合は、作成する車両の ID。

    車両 ID は 1～100 文字で指定できます。有効な文字は、a～z、A～Z、0～9、ダッシュ (-)、アンダースコア (\$1)、コロン (:) です。
+ *model-manifest-ARN* は、車両モデル (モデルマニフェスト) の ARN に置き換えます。
+ *decoder-manifest-ARN* は、指定した車両モデルに関連付けられているデコーダーマニフェストの ARN に置き換えます。
+ (オプション) 同じ車両モデルから作成された他の車両と区別するために、この車両に追加の属性を設定できます。例えば、電気自動車があるとすると、属性として `{"fuelType": "electric"}` という値を指定できます。
**重要**  <a name="update-attributes-requirement"></a>
個々の車両に属性を追加できるようにするには、関連付けられている車両モデルで、それらの属性を事前に定義する必要があります。

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

**Example — 状態テンプレートを車両に関連付ける**  
[状態テンプレート](state-templates.md)を車両に関連付けると、 `stateTemplates`フィールドを使用して、クラウド内の車両から状態更新を収集できます。  
この例では、 は次のいずれか`stateTemplateUpdateStrategy`になります。  
+ `periodic`: では、エッジエージェントソフトウェアがシグナル更新をクラウドに送信する固定レートを指定できます (エッジエージェントソフトウェアは、シグナル値が更新間で変更されていない場合でも更新を送信します）。
+ `onChange`: Edge Agent ソフトウェアは、シグナルが変更されるたびにシグナルの更新を送信します。

```
aws iotfleetwise create-vehicle --cli-input-json file://create-vehicle.json
```
`create-vehicle.json` ファイルに含まれる場所 (例:  

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

カスタマーマネージド AWS KMS キーを使用して[暗号化を有効に](key-management.md)した場合は、ロールが `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"
            ]
        }
    ]
}
```

------

# 複数の AWS IoT FleetWise 車両を作成する
<a name="create-vehicles-cli"></a>

[BatchCreateVehicle](https://docs.aws.amazon.com/iot-fleetwise/latest/APIReference/API_BatchCreateVehicle.html) API オペレーションを使用すると、複数の車両を一度に作成できます。次の例では AWS CLIを使用しています。

複数の車両を作成するには、次のコマンドを実行します。

*file-name* を、複数の車両の設定を含む .json ファイルの名前に置き換えます。

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

**Example — 車両設定**  

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

1 回のバッチオペレーションで最大 10 台の車両を作成できます。車両の構成の詳細については、「[AWS IoT FleetWise 車両を作成する](create-vehicle.md)」を参照してください。

カスタマーマネージド AWS KMS キーを使用して[暗号化を有効に](key-management.md)した場合は、ロールが `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"
            ]
        }
    ]
}
```

------

# AWS IoT FleetWise 車両を更新する
<a name="update-vehicle-cli"></a>

**重要**  
現在、特定の AWS IoT FleetWise 機能へのアクセスはゲートされています。詳細については、「[AWS AWS IoT FleetWise でのリージョンと機能の可用性](fleetwise-regions.md)」を参照してください。

[UpdateVehicle](https://docs.aws.amazon.com/iot-fleetwise/latest/APIReference/API_UpdateVehicle.html) API オペレーションを使用すると、既存の車両を更新できます。次の例では AWS CLIを使用しています。

車両を更新するには、次のコマンドを実行します。

*file-name* を、車両の設定を含む .json ファイルの名前に置き換えます。

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

**Example — 車両設定**  
+ *vehicle-name* は、更新する車両の ID に置き換えます。
+ (オプション) *model-manifest-ARN* は、使用中の車両モデルに代えて使用する車両モデル (モデルマニフェスト) の ARN に置き換えます。
+ (オプション) *decoder-manifest-ARN* は、指定した新しい車両モデルに関連付けられているデコーダーマニフェストの ARN に置き換えます。
+ (オプション) *attribute-update-mode* は、車両の属性に置き換えます。
  + `Merge` - 新しい属性を既存の属性にマージします。既存の属性は新しい値で更新され、存在しない属性は新しく追加されます。

    例えば、車両に `{"color": "black", "fuelType": "electric"}` という属性が設定されている場合、この車両を `{"color": "", "fuelType": "gasoline", "model": "x"}` という属性で更新すると、更新後の車両の属性は `{"fuelType": "gasoline", "model": "x"}` になります。
  + `Overwrite` - 既存の属性を新しい属性に置き換えます。

    例えば、車両に `{"color": "black", "fuelType": "electric"}` という属性が設定されている場合、この車両を `{"model": "x"}` という属性で更新すると、更新後の車両の属性は `{"model": "x"}` になります。

  入力に属性が含まれている場合は必須です。
+ (オプション) 新しい属性を追加したり、既存の属性を新しい値で更新したりするには、`attributes` を構成します。例えば、電気自動車があるとすると、属性として `{"fuelType": "electric"}` という値を指定できます。

  属性を削除するには、`attributeUpdateMode` を `Merge` に設定します。
**重要**  <a name="update-attributes-requirement"></a>
個々の車両に属性を追加できるようにするには、関連付けられている車両モデルで、それらの属性を事前に定義する必要があります。

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

**Example — 車両に関連付けられた状態テンプレートを追加または削除します。**  
次のフィールドを使用して、追加の状態テンプレートを関連付けたり、車両から既存の関連付けを削除したりできます。  
+ `stateTemplatesToAdd` 
+ `stateTemplatesToRemove` 

```
aws iotfleetwise update-vehicle --cli-input-json file://update-vehicle.json
```
`update-vehicle.json` ファイルに含まれる場所 (例:  

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

カスタマーマネージド AWS KMS キーを使用して[暗号化を有効に](key-management.md)した場合は、ロールが `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"
            ]
        }
    ]
}
```

------

# multiple AWS IoT FleetWise 車両を更新する
<a name="update-vehicles-cli"></a>

[BatchUpdateVehicle](https://docs.aws.amazon.com/iot-fleetwise/latest/APIReference/API_BatchUpdateVehicle.html) API オペレーションを使用すると、複数の既存の車両を一度に更新できます。次の例では AWS CLIを使用しています。

複数の車両を更新するには、次のコマンドを実行します。

*file-name* を、複数の車両の設定を含む .json ファイルの名前に置き換えます。

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

**Example — 車両設定**  

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

1 回のバッチオペレーションで最大 10 台の車両を更新できます。各車両の構成の詳細については、「[AWS IoT FleetWise 車両を更新する](update-vehicle-cli.md)」を参照してください。

カスタマーマネージド AWS KMS キーを使用して[暗号化を有効に](key-management.md)した場合は、ロールが `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"
            ]
        }
    ]
}
```

------

# AWS IoT FleetWise 車両を削除する
<a name="delete-vehicle"></a>

 AWS IoT FleetWise コンソールまたは API を使用して車両を削除できます。

**重要**  
車両が削除されると、 AWS IoT FleetWise は関連するフリートとキャンペーンから車両を自動的に削除します。詳細については、「[AWS IoT FleetWise でフリートを管理する](fleets.md)」および「[キャンペーンを使用して AWS IoT FleetWise データを収集する](campaigns.md)」を参照してください。ただし、車両は依然としてモノとして存在するか、 内のモノに関連付けられています AWS IoT Core。モノを削除する手順については、「AWS IoT Core デベロッパーガイド**」の「[モノの削除](https://docs.aws.amazon.com/iot/latest/developerguide/thing-registry.html#delete-thing)」を参照してください。

## 車両の削除 (コンソール)
<a name="delete-vehicle-console"></a>

 AWS IoT FleetWise コンソールを使用して車両を削除できます。

**車両を削除するには**

1. <a name="fleetwise-open-console"></a>[AWS IoT FleetWise コンソール](https://console.aws.amazon.com/iotfleetwise)を開きます。

1. ナビゲーションペインで、**[車両]** を選択します。

1. **[車両]** ページで、削除する車両の横にあるボタンを選択します。

1. **[削除]** を選択します。

1. **[削除]**vehicle-name**** で、車両の名前を入力し、**[削除]** を選択します。

## 車両の削除 (AWS CLI)
<a name="delete-vehicle-cli"></a>

[DeleteVehicle](https://docs.aws.amazon.com/iot-fleetwise/latest/APIReference/API_DeleteVehicle.html) API オペレーションを使用すると、車両を削除できます。次の例では、 を使用します AWS CLI。

車両を削除するには、次のコマンドを実行します。

*vehicle-name* は、削除する車両の ID に置き換えます。

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

### 車両の削除を確認する
<a name="verify-vehicle-deletion"></a>

[ListVehicles](https://docs.aws.amazon.com/iot-fleetwise/latest/APIReference/API_ListVehicles.html) API オペレーションを使用して、車両が削除されたかどうかを確認できます。次の例では AWS CLIを使用しています。

すべての車両の概要をページ分割されたリストとして取得するには、次のコマンドを実行します。

```
aws iotfleetwise list-vehicles
```

カスタマーマネージド AWS KMS キーを使用して[暗号化を有効に](key-management.md)した場合は、ロールが `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"
            ]
        }
    ]
}
```

------

# Get AWS IoT FleetWise 車両情報
<a name="get-vehicle-information-cli"></a>

**重要**  
現在、特定の AWS IoT FleetWise 機能へのアクセスはゲートされています。詳細については、「[AWS AWS IoT FleetWise でのリージョンと機能の可用性](fleetwise-regions.md)」を参照してください。

[GetVehicle](https://docs.aws.amazon.com/iot-fleetwise/latest/APIReference/API_GetVehicle.html) API オペレーションを使用すると、車両情報を取得できます。次の例では AWS CLIを使用しています。

車両のメタデータを取得するには、次のコマンドを実行します。

*vehicle-name* は、取得する車両の ID に置き換えます。

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

**注記**  
このオペレーションは[結果整合性があります](https://web.stanford.edu/class/cs345d-01/rl/eventually-consistent.pdf)。言い換えると、車両への変更はすぐには反映されない場合があります。

[GetVehicleStatus](https://docs.aws.amazon.com/iot-fleetwise/latest/APIReference/API_GetVehicleStatus.html) API オペレーションを使用して、車両に関連付けられたリソースのステータスを取得できます。次の例では AWS CLIを使用しています。

車両に関連付けられたリソースのステータスを取得するには、次のコマンドを実行します。
+ *vehicle-name* を、リソースが関連付けられている車両の ID に置き換えます。
+ *type* は、ステータスを取得するリソースのタイプに置き換えます。`type` の有効値は、`CAMPAIGN`、`STATE_TEMPLATE`、および `DECODER` です。

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

カスタマーマネージド AWS KMS キーを使用して[暗号化を有効に](key-management.md)した場合は、ロールが `GetVehicle`または `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"
            ]
        }
    ]
}
```

------