

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

# Menunjukkan penerbitan pesan dengan AWS IoT Klien Perangkat
<a name="iot-dc-testconn-publish"></a>

Prosedur di bagian ini menunjukkan bagaimana Klien AWS IoT Perangkat dapat mengirim pesan MQTT default dan kustom.

Pernyataan kebijakan ini dalam kebijakan yang Anda buat pada langkah sebelumnya untuk latihan ini memberikan izin Raspberry Pi untuk melakukan tindakan ini:
+ 

**`IoT: Menghubungkan`**  
Memberikan klien bernama`PubSubTestThing`, Raspberry Pi Anda yang menjalankan Kli AWS IoT en Perangkat, untuk terhubung.

  ```
      {
        "Effect": "Allow",
        "Action": [
          "iot:Connect"
        ],
        "Resource": [
          "arn:aws:iot:us-west-2:57EXAMPLE833:client/PubSubTestThing"
        ]
      }
  ```
+ 

**`IoT:menerbitkan`**  
Memberikan izin Raspberry Pi untuk menerbitkan pesan dengan topik MQTT. `test/dc/pubtopic`

  ```
      {
        "Effect": "Allow",
        "Action": [
          "iot:Publish"
        ],
        "Resource": [
          "arn:aws:iot:us-west-2:57EXAMPLE833:topic/test/dc/pubtopic"
        ]
      }
  ```

  T `iot:Publish` indakan memberikan izin untuk menerbitkan ke topik MQTT yang tercantum dalam array Resource. I * si * pesan tersebut tidak dikendalikan oleh pernyataan kebijakan.

## Publikasikan pesan default menggunakan AWS IoT Klien Perangkat
<a name="iot-dc-testconn-publish-default"></a>

Prosedur ini menjalankan Klien AWS IoT Perangkat sehingga menerbitkan pesan MQTT default tunggal yang ** diterima dan ditampilkan oleh klien uji ** MQTT.

**Untuk mengirim pesan MQTT default dari AWS IoT Klien Perangkat**

1. Pastikan bahwa jendela terminal pada komputer host lokal Anda yang terhubung ke Raspberry Pi Anda dan jendela dengan klien ** uji ** MQTT terlihat saat Anda melakukan prosedur ini.

1. Di jendela terminal, masukkan perintah ini untuk menjalankan Kli AWS IoT en Perangkat menggunakan file konfigurasi yang dibuat di[Buat file konfigurasi](iot-dc-install-configure.md#iot-dc-install-dc-configure-step1).

   ```
   cd ~/aws-iot-device-client/build
   ./aws-iot-device-client --config-file ~/dc-configs/dc-pubsub-config.json
   ```

   Di jendela terminal, Klien AWS IoT Perangkat menampilkan pesan informasi dan kesalahan apa pun yang terjadi saat dijalankan.

   Jika tidak ada kesalahan yang ditampilkan di jendela terminal, tinjau klien ** uji ** MQTT.

1. Di klien uji ** MQTT**, di ** jendela Lang ** ganan, lihat * Hello World\! *pesan dikirim ke topik `test/dc/pubtopic` pesan.

1. Jika Kli AWS IoT en Perangkat tidak menampilkan kesalahan dan Anda melihat * Hello World\! *dikirim ke `test/dc/pubtopic` pesan di klien uji ** MQTT**, Anda telah menunjukkan koneksi yang berhasil.

1. Di jendela terminal, masukkan **^C** (Ctrl-C) untuk menghentikan Kli AWS IoT en Perangkat.

Setelah Anda menunjukkan bahwa Klien AWS IoT Perangkat menerbitkan pesan MQTT default, Anda dapat melanjutkan ke[Publikasikan pesan khusus menggunakan AWS IoT Klien Perangkat](#iot-dc-testconn-publish-custom).

## Publikasikan pesan khusus menggunakan AWS IoT Klien Perangkat
<a name="iot-dc-testconn-publish-custom"></a>

Prosedur di bagian ini membuat pesan MQTT khusus dan kemudian menjalankan Klien Perangkat AWS IoT sehingga menerbitkan pesan MQTT kustom satu kali untuk diterima dan ditampilkan oleh klien ** uji ** MQTT.

### Buat pesan MQTT kustom untuk AWS IoT Klien Perangkat
<a name="iot-dc-testconn-publish-custom-create"></a>

Lakukan langkah-langkah ini di jendela terminal pada komputer host lokal yang terhubung ke Raspberry Pi Anda.

**Untuk membuat pesan khusus untuk AWS IoT Klien Perangkat untuk dipublikasikan**

1. Di jendela terminal, buka editor teks, seperti`nano`.

1. Ke editor teks, salin dan tempel dokumen JSON berikut. Ini akan menjadi payload pesan MQTT yang diterbitkan Klien AWS IoT Perangkat.

   ```
   {
     "temperature": 28,
     "humidity": 80,
     "barometer": 1013,
     "wind": {
       "velocity": 22,
       "bearing": 255
     }
   }
   ```

1. Simpan konten editor teks sebagai**\~/messages/sample-ws-message.json**. 

1. Masukkan perintah berikut untuk mengatur izin file pesan yang baru saja Anda buat.

   ```
   chmod 600 ~/messages/*
   ```

**Untuk membuat file konfigurasi untuk AWS IoT Klien Perangkat untuk digunakan untuk mengirim pesan khusus**

1. Di jendela terminal, di editor teks seperti`nano`, buka file konfigurasi Klien AWS IoT Perangkat yang ada:**\~/dc-configs/dc-pubsub-config.json**. 

1. Edit `samples` objek agar terlihat seperti ini. Tidak ada bagian lain dari file ini yang perlu diubah.

   ```
     "samples": {
       "pub-sub": {
         "enabled": true,
         "publish-topic": "test/dc/pubtopic",
         "publish-file": "~/messages/sample-ws-message.json",
         "subscribe-topic": "test/dc/subtopic",
         "subscribe-file": "~/.aws-iot-device-client/log/pubsub_rx_msgs.log"
   ```

1. Simpan konten editor teks sebagai**\~/dc-configs/dc-pubsub-custom-config.json**. 

1. Jalankan perintah ini untuk mengatur izin pada file konfigurasi baru.

   ```
   chmod 644 ~/dc-configs/dc-pubsub-custom-config.json
   ```

### Publikasikan pesan MQTT kustom dengan menggunakan AWS IoT Klien Perangkat
<a name="iot-dc-testconn-publish-custom-publish"></a>

Perubahan ini hanya memengaruhi * konten * payload pesan MQTT, sehingga kebijakan saat ini akan terus berfungsi. Namun, jika topik * MQTT * (sebagaimana didefinisikan oleh `publish-topic` nilai di`~/dc-configs/dc-pubsub-custom-config.json`) diubah, pernyataan `iot::Publish` kebijakan juga perlu dimodifikasi untuk memungkinkan Raspberry Pi menerbitkan ke topik MQTT baru.

**Untuk mengirim pesan MQTT dari AWS IoT Klien Perangkat**

1. Pastikan jendela terminal dan jendela dengan klien ** uji ** MQTT terlihat saat Anda melakukan prosedur ini. Juga, pastikan klien uji ** MQTT Anda ** masih berlangganan filter ** topik ** \#. Jika tidak, berlangganan filter ** topik ** \# lagi.

1. Di jendela terminal, masukkan perintah ini untuk menjalankan Kli AWS IoT en Perangkat menggunakan file konfigurasi yang dibuat di[Buat file konfigurasi](iot-dc-install-configure.md#iot-dc-install-dc-configure-step1).

   ```
   cd ~/aws-iot-device-client/build
   ./aws-iot-device-client --config-file ~/dc-configs/dc-pubsub-custom-config.json
   ```

   Di jendela terminal, Klien AWS IoT Perangkat menampilkan pesan informasi dan kesalahan apa pun yang terjadi saat dijalankan.

   Jika tidak ada kesalahan yang ditampilkan di jendela terminal, tinjau klien uji MQTT.

1. Di klien uji ** MQTT**, di ** jendela Lang ** ganan, lihat payload pesan kustom yang dikirim ke topik `test/dc/pubtopic` pesan.

1. Jika Klien AWS IoT Perangkat tidak menampilkan kesalahan dan Anda melihat payload pesan kustom yang Anda publikasikan ke `test/dc/pubtopic` pesan di klien uji ** MQTT**, Anda telah berhasil menerbitkan pesan kustom.

1. Di jendela terminal, masukkan **^C** (Ctrl-C) untuk menghentikan Kli AWS IoT en Perangkat.

Setelah Anda menunjukkan bahwa Klien AWS IoT Perangkat menerbitkan payload pesan khusus, Anda dapat melanjutkan[Tunjukkan berlangganan pesan dengan AWS IoT Klien Perangkat](iot-dc-testconn-subscribe.md).