

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# Membuat dan mengelola perintah
<a name="create-manage-remote-command-cli"></a>

**penting**  
Akses ke FleetWise fitur AWS IoT tertentu saat ini terjaga keamanannya. Untuk informasi selengkapnya, lihat [AWS Ketersediaan wilayah dan fitur di AWS IoT FleetWise](fleetwise-regions.md).

Anda dapat mengonfigurasi tindakan jarak jauh yang dapat digunakan kembali atau mengirim instruksi langsung satu kali ke perangkat Anda. Saat Anda menggunakan fitur ini, Anda dapat menentukan instruksi yang dapat dijalankan perangkat Anda dalam waktu dekat. Perintah memungkinkan Anda mengonfigurasi tindakan jarak jauh yang dapat dilanjutkan untuk kendaraan target Anda. Setelah Anda membuat perintah, Anda dapat memulai eksekusi perintah yang menargetkan kendaraan tertentu.

Topik ini menunjukkan bagaimana Anda dapat membuat dan mengelola sumber daya perintah menggunakan AWS IoT Core API atau AWS CLI. Ini menunjukkan kepada Anda bagaimana melakukan tindakan berikut pada sumber daya perintah.

**Topics**
+ [Buat sumber daya perintah](#create-remote-command-cli)
+ [Mengambil informasi tentang perintah](#get-remote-command-cli)
+ [Daftar perintah di akun Anda](#list-remote-command-cli)
+ [Memperbarui atau menghentikan sumber daya perintah](#update-remote-command-cli)
+ [Hapus sumber daya perintah](#delete-remote-command-cli)

## Buat sumber daya perintah
<a name="create-remote-command-cli"></a>

Anda dapat menggunakan operasi API bidang [https://docs.aws.amazon.com/iot/latest/apireference/API_CreateCommand.html](https://docs.aws.amazon.com/iot/latest/apireference/API_CreateCommand.html) AWS IoT Core kontrol atau FleetWise konsol AWS IoT untuk membuat perintah.

### Buat perintah (konsol)
<a name="create-command-console"></a>

Anda dapat menggunakan FleetWise konsol AWS IoT untuk membuat perintah.

**Untuk membuat perintah**

1. Buka konsol [AWS IoT FleetWise ](https://console.aws.amazon.com/iotfleetwise).

1. Pada panel navigasi, pilih **Perintah**.

1. Pilih **Buat perintah**.

1. Tentukan ID perintah unik untuk membantu Anda mengidentifikasi perintah yang ingin Anda jalankan di kendaraan.

1. (Opsional) Tentukan nama tampilan opsional dan deskripsi.

1. (Opsional) Pilih aktuator dan nilai parameter default. Parameter menentukan tindakan yang dapat dilakukan kendaraan target setelah menerima perintah. Jika Anda tidak menambahkan parameter, Anda harus menyediakannya saat menjalankan perintah.

1. Pilih peran IAM yang memberikan izin untuk menghasilkan payload untuk perintah. Lihat [Mengontrol akses](https://docs.aws.amazon.com/iot-fleetwise/latest/developerguide/controlling-access.html#generate-command-payload).

1. Pilih **Buat perintah**.

### Buat perintah (AWS CLI)
<a name="create-remote-command-example"></a>

Contoh berikut menunjukkan cara membuat perintah dengan parameter.

#### Pertimbangan saat membuat perintah
<a name="create-remote-command-considerations"></a>

Saat Anda membuat perintah di AWS IoT FleetWise:
+ Anda harus menentukan `roleArn` yang memberikan izin untuk membuat dan menjalankan perintah pada kendaraan Anda. Untuk informasi selengkapnya dan tentang kebijakan sampel termasuk kapan kunci KMS diaktifkan, lihat[Berikan AWS IoT Device Management izin untuk menghasilkan muatan untuk perintah dengan AWS IoT FleetWise](controlling-access.md#generate-command-payload).
+ Anda harus menentukan `AWS-IoT-FleetWise` sebagai namespace.
+ Anda dapat melewati `mandatory-parameters` bidang dan menentukannya pada waktu berjalan sebagai gantinya. Atau, Anda dapat membuat perintah dengan parameter, dan secara opsional menentukan nilai default untuk mereka. Jika Anda menentukan nilai default, maka pada waktu berjalan, Anda dapat menggunakan nilai-nilai ini atau menggantinya dengan menentukan nilai Anda sendiri. Untuk contoh tambahan ini, lihat[Skenario penggunaan perintah](remote-command-use-cases.md).
+ Anda dapat menentukan hingga tiga pasangan nama-nilai untuk bidang tersebut. `mandatory-parameters` Namun, ketika menjalankan perintah pada kendaraan, hanya satu pasangan nama-nilai yang diterima, dan `name` bidang harus menggunakan nama yang sepenuhnya memenuhi syarat dengan awalan. `$actuatorPath.`
+ Ganti *command-id* dengan pengenal unik untuk perintah. Anda dapat menggunakan UUID, karakter alfanumerik, “-”, dan “\$1”.
+ Ganti *role-arn* dengan peran IAM yang memberi Anda izin untuk membuat dan menjalankan perintah, misalnya,. `"arn:aws:iam:accountId:role/FwCommandExecutionRole"`
+ (Opsional) Ganti *display-name* dengan nama yang mudah digunakan untuk perintah, dan *description* dengan deskripsi perintah yang bermakna.
+ Ganti *name* dan *value* `mandatory-parameters` objek dengan informasi yang diperlukan untuk perintah yang sedang dibuat. `name`Bidang adalah nama yang sepenuhnya memenuhi syarat seperti yang didefinisikan dalam katalog sinyal dengan `$actuatorPath.` awalan. Misalnya, `name` bisa *\$1actuatorPath.Vehicle.Chassis.SteeringWheel.HandsOff.HandsOffSteeringMode* dan `value` bisa menjadi boolean yang menunjukkan status mode kemudi seperti*\$1"B": false\$1*.

```
aws iot create-command --command-id command-id \ 
    --role-arn role-arn \
    --description description \
    --display-name display-name \     
    --namespace "AWS-IoT-FleetWise" \
    --mandatory-parameters '[
        {
            "name": name, 
            "value": value
        }
   ]'
```

Operasi `CreateCommand` API mengembalikan respons yang berisi ID dan ARN (Amazon Resource Name) dari perintah.

```
{
    "commandId": "HandsOffSteeringMode",
    "commandArn": "arn:aws:iot:ap-south-1:123456789012:command/HandsOffSteeringMode"
}
```

## Mengambil informasi tentang perintah
<a name="get-remote-command-cli"></a>

Anda dapat menggunakan operasi API bidang [https://docs.aws.amazon.com/iot/latest/apireference/API_GetCommand.html](https://docs.aws.amazon.com/iot/latest/apireference/API_GetCommand.html) AWS IoT Core kontrol untuk mengambil informasi tentang sumber daya perintah.

Untuk mendapatkan informasi tentang sumber daya perintah, jalankan perintah berikut. Ganti *command-id* dengan pengenal yang digunakan saat membuat perintah.

```
aws iot get-command --command-id command-id
```

Operasi `GetCommand` API mengembalikan respons yang berisi informasi berikut.
+ ID dan ARN (Nama Sumber Daya Amazon) dari perintah.
+ Tanggal dan waktu ketika perintah dibuat dan terakhir diperbarui.
+ Status perintah yang menunjukkan apakah itu tersedia untuk dijalankan di kendaraan.
+ Parameter apa pun yang Anda tentukan saat membuat perintah.

```
{
    "commandId": "HandsOffSteeringMode",
    "commandArn": "arn:aws:iot:ap-south-1:123456789012:command/HandsOffSteeringMode"",
    "namespace": "AWS-IoT-FleetWise",
    "mandatoryParameters":[
        {
            "name": "$actuatorPath.Vehicle.Chassis.SteeringWheel.HandsOff.HandsOffSteeringMode",
            "value": {"B": false }
        }
    ],
    "createdAt": "2024-03-23T11:24:14.919000-07:00",
    "lastUpdatedAt": "2024-03-23T11:24:14.919000-07:00",
    "deprecated": false,
    "pendingDeletion": false
}
```

## Daftar perintah di akun Anda
<a name="list-remote-command-cli"></a>

Anda dapat menggunakan operasi API bidang [https://docs.aws.amazon.com/iot/latest/apireference/API_ListCommands.html](https://docs.aws.amazon.com/iot/latest/apireference/API_ListCommands.html) AWS IoT Core kontrol untuk mencantumkan semua perintah di akun yang Anda buat.

Untuk membuat daftar perintah di akun Anda, jalankan perintah berikut. Secara default, API mengembalikan perintah yang dibuat untuk kedua ruang nama. Untuk memfilter daftar agar hanya menampilkan perintah yang dibuat AWS IoT FleetWise, jalankan perintah berikut.

**catatan**  
Anda juga dapat mengurutkan daftar dalam urutan naik atau turun, atau memfilter daftar untuk hanya menampilkan perintah yang memiliki nama parameter perintah tertentu.

```
aws iot list-commands --namespace "AWS-IoT-FleetWise"
```

Operasi `ListCommands` API mengembalikan respons yang berisi informasi berikut.
+ ID dan ARN (Nama Sumber Daya Amazon) dari perintah.
+ Tanggal dan waktu ketika perintah dibuat dan terakhir diperbarui.
+ Status perintah yang menunjukkan apakah perintah tersedia untuk dijalankan pada kendaraan.

## Memperbarui atau menghentikan sumber daya perintah
<a name="update-remote-command-cli"></a>

Anda dapat menggunakan operasi API bidang [https://docs.aws.amazon.com/iot/latest/apireference/API_UpdateCommand.html](https://docs.aws.amazon.com/iot/latest/apireference/API_UpdateCommand.html) AWS IoT Core kontrol atau FleetWise konsol AWS IoT untuk memperbarui sumber daya perintah. Anda dapat memperbarui nama tampilan dan deskripsi perintah. Anda juga dapat menghentikan perintah jika saat ini tidak digunakan.

**catatan**  
Anda tidak dapat mengubah informasi namespace atau parameter yang akan digunakan saat menjalankan perintah.

### Perbarui perintah (konsol)
<a name="update-command-console"></a>

**Perbarui perintah**  
Untuk memperbarui perintah dari konsol, buka halaman [Perintah](https://console.aws.amazon.com/iotfleetwise/home#/commands) FleetWise konsol AWS IoT dan lakukan langkah-langkah berikut.

1. Pilih perintah yang ingin Anda perbarui, lalu pilih **Edit**.

1. Edit detail perintah, lalu pilih **Simpan perubahan**.

**Menghentikan perintah**  
Untuk menghentikan perintah dari konsol, buka halaman [Perintah](https://console.aws.amazon.com/iotfleetwise/home#/commands) FleetWise konsol AWS IoT dan lakukan langkah-langkah berikut.

1. **Pilih perintah yang ingin Anda hentikan, lalu pilih Deprecate.**

1. **Konfirmasikan penghentian, lalu pilih Deprecate.**

### Perbarui perintah (AWS CLI)
<a name="update-command-cli"></a>

**Perbarui perintah**  
Untuk memperbarui sumber daya perintah, jalankan perintah berikut. Ganti *command-id* dengan pengenal perintah yang ingin Anda perbarui, dan berikan yang diperbarui *display-name* dan*description*.

```
aws iot update-command \ 
    --command-id command-id \ 
    --display-name display-name \ 
    --description description
```

Operasi `UpdateCommand` API mengembalikan respons berikut.

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

**Menghentikan perintah**  
Anda menghentikan perintah ketika Anda bermaksud untuk tidak lagi terus menggunakannya untuk perangkat Anda atau ketika sudah usang. Contoh berikut menunjukkan cara menghentikan perintah.

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

Operasi `UpdateCommand` API mengembalikan respons yang berisi ID dan ARN (Amazon Resource Name) dari perintah.

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

Setelah perintah tidak digunakan lagi, eksekusi perintah yang ada akan terus berjalan di kendaraan sampai menjadi terminal. Untuk menjalankan eksekusi perintah baru, Anda harus menggunakan `UpdateCommand` API untuk memulihkan perintah sehingga menjadi tersedia. *Untuk informasi tambahan tentang menghentikan dan memulihkan perintah dan pertimbangannya, lihat Menghentikan sumber daya perintah di [Panduan Pengembang](https://docs.aws.amazon.com/iot/latest/developerguide/iot-remote-command-deprecate).AWS IoT Core *

## Hapus sumber daya perintah
<a name="delete-remote-command-cli"></a>

Anda dapat menggunakan operasi API bidang [https://docs.aws.amazon.com/iot/latest/apireference/API_DeleteCommand.html](https://docs.aws.amazon.com/iot/latest/apireference/API_DeleteCommand.html) AWS IoT Core kontrol atau FleetWise konsol AWS IoT untuk menghapus sumber daya perintah.

**catatan**  
Tindakan penghapusan bersifat permanen dan tidak dapat dibatalkan. Perintah akan dihapus secara permanen dari akun Anda.

### Hapus perintah (konsol)
<a name="delete-command-console"></a>

Untuk menghapus perintah dari konsol, buka halaman [Perintah](https://console.aws.amazon.com/iotfleetwise/home#/commands) FleetWise konsol AWS IoT dan lakukan langkah-langkah berikut.

1. Pilih perintah yang ingin Anda hapus, lalu pilih **Hapus**.

1. Konfirmasikan bahwa Anda ingin menghapus perintah, lalu pilih **Hapus**.

### Hapus perintah (AWS CLI)
<a name="delete-command-cli"></a>

Untuk menghapus sumber daya perintah, jalankan perintah berikut. Ganti *command-id* dengan pengenal perintah yang ingin Anda hapus. Contoh berikut menunjukkan cara menghapus sumber daya perintah.

```
aws iot delete-command --command-id command-id
```

Jika permintaan penghapusan berhasil:
+ Jika perintah tidak digunakan lagi untuk durasi yang lebih lama dari batas waktu maksimum 24 jam, perintah akan segera dihapus dan Anda akan melihat HTTP 204. `statusCode`
+ Jika perintah tidak digunakan lagi, atau tidak digunakan lagi untuk durasi yang lebih pendek dari batas waktu maksimum, perintah akan berada dalam `pending deletion` status dan Anda akan melihat HTTP 202. `statusCode` Perintah akan dihapus secara otomatis dari akun Anda setelah batas waktu maksimum 24 jam.