Lihat MQTT pesan dengan AWS IoT MQTT klien - AWS IoT Core

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

Lihat MQTT pesan dengan AWS IoT MQTT klien

Bagian ini menjelaskan cara menggunakan klien AWS IoT MQTT pengujian di AWS IoT konsol untuk menonton MQTT pesan yang dikirim dan diterima oleh AWS IoT. Contoh yang digunakan di bagian ini berkaitan dengan contoh yang digunakanMemulai dengan AWS IoT Core tutorial; Namun, Anda dapat mengganti topicName digunakan dalam contoh dengan nama topik atau filter topik apa pun yang digunakan oleh solusi IoT Anda.

Perangkat mempublikasikan MQTT pesan yang diidentifikasi berdasarkan topik untuk mengkomunikasikan statusnya AWS IoT, dan AWS IoT menerbitkan MQTT pesan untuk menginformasikan perangkat dan aplikasi tentang perubahan dan peristiwa. Anda dapat menggunakan MQTT klien untuk berlangganan topik-topik ini dan menonton pesan saat terjadi. Anda juga dapat menggunakan klien MQTT pengujian untuk mempublikasikan MQTT pesan ke perangkat dan layanan berlangganan di Anda Akun AWS.

Melihat MQTT pesan di MQTT klien

Prosedur berikut menjelaskan cara berlangganan MQTT topik tertentu tempat perangkat Anda memublikasikan pesan dan melihat pesan tersebut di AWS IoT konsol.

Untuk melihat MQTT pesan di klien MQTT pengujian
  1. Di AWS IoT konsol, di menu sebelah kiri, pilih Test dan kemudian pilih MQTTtest client.

    Pilih klien MQTT uji dari menu konsol di navigasi kiri.
  2. Di tab Berlangganan topik, masukkan topicName untuk berlangganan topik di mana perangkat Anda menerbitkan. Untuk aplikasi sampel yang memulai, berlangganan#, yang berlangganan semua topik pesan.

    Melanjutkan contoh memulai, pada tab Berlangganan topik, di bidang Filter topik, masukkan#, lalu pilih Berlangganan.

    Berlangganan ke tab topik.

    Halaman log pesan topik, # terbuka dan # muncul di daftar Langganan. Jika perangkat yang Anda Konfigurasikan perangkat Anda konfigurasikan menjalankan program contoh, Anda akan melihat pesan yang dikirimnya AWS IoT di log pesan #. Entri log pesan akan muncul di bawah bagian Publikasikan saat pesan dengan topik berlangganan diterima oleh. AWS IoT

    Bagian untuk menampilkan topik telah berhasil berlangganan.
  3. Pada halaman log pesan #, Anda juga dapat mempublikasikan pesan ke topik, tetapi Anda harus menentukan nama topik. Anda tidak dapat mempublikasikan ke topik #.

    Pesan yang dipublikasikan ke topik berlangganan muncul di log pesan saat diterima, dengan pesan terbaru terlebih dahulu.

Pesan pemecahan masalah MQTT

Gunakan filter topik wild card

Jika pesan Anda tidak muncul di log pesan seperti yang Anda harapkan, coba berlangganan filter topik wild card seperti yang dijelaskan dalamFilter topik. Filter topik kartu liar MQTT multi-level adalah tanda hash atau pound (#) dan dapat digunakan sebagai filter topik di bidang topik Berlangganan.

Berlangganan filter # topik berlangganan setiap topik yang diterima oleh broker pesan. Anda dapat mempersempit filter dengan mengganti elemen jalur filter topik dengan karakter kartu liar # multi-level atau karakter kartu liar tingkat tunggal '+'.

Saat menggunakan kartu liar dalam filter topik
  • Karakter kartu liar multi-level harus menjadi karakter terakhir dalam filter topik.

  • Jalur filter topik hanya dapat memiliki satu karakter kartu liar tingkat tunggal per level topik.

Sebagai contoh:

Filter topik

Menampilkan pesan dengan

#

Nama topik apa pun

topic_1/#

Nama topik yang dimulai dengan topic_1/

topic_1/level_2/#

Nama topik yang dimulai dengan topic_1/level_2/

topic_1/+/level_3

Nama topik yang dimulai dengantopic_1/, diakhiri dengan/level_3, dan memiliki satu elemen dengan nilai apa pun di antaranya.

Untuk informasi selengkapnya tentang filter topik, lihatFilter topik.

Periksa kesalahan nama topik

MQTTnama topik dan filter topik peka huruf besar/kecil. Jika, misalnya, perangkat Anda menerbitkan pesan ke Topic_1 (dengan huruf besar T) alih-alih topic_1 topik yang Anda langgani, pesannya tidak akan muncul di klien MQTT pengujian. Namun, berlangganan filter topik wild card akan menunjukkan bahwa perangkat menerbitkan pesan dan Anda dapat melihat bahwa itu menggunakan nama topik yang bukan yang Anda harapkan.

Menerbitkan MQTT pesan dari MQTT klien

Untuk mempublikasikan pesan ke suatu MQTT topik
  1. Pada halaman klien MQTT uji, di tab Publikasikan ke topik, di bidang Nama topik, masukkan topicName dari pesan Anda. Dalam contoh ini, gunakanmy/topic.

    catatan

    Jangan gunakan informasi yang dapat diidentifikasi secara pribadi dalam nama topik, baik menggunakannya di klien MQTT pengujian atau dalam implementasi sistem Anda. Nama topik dapat muncul dalam komunikasi dan laporan yang tidak terenkripsi.

  2. Di jendela payload pesan, masukkan yang berikut ini: JSON

    { "message": "Hello, world", "clientType": "MQTT test client" }
  3. Pilih Publikasikan untuk mempublikasikan pesan Anda AWS IoT.

    catatan

    Pastikan Anda berlangganan topik saya/topik sebelum mempublikasikan pesan Anda.

    Publikasikan ke tab topik.
  4. Dalam daftar Langganan, pilih topik saya/untuk melihat pesan. Anda akan melihat pesan muncul di klien MQTT pengujian di bawah jendela payload pesan publikasi.

    Layar yang menunjukkan topik yang diterbitkan telah diterima.

Anda dapat mempublikasikan MQTT pesan ke topik lain dengan mengubah topicName di bidang Nama topik dan pilih tombol Publikasikan.

penting

Saat Anda membuat beberapa langganan dengan topik yang tumpang tindih (mis., Probe1/temperature dan probe1/#), ada kemungkinan bahwa satu pesan yang dipublikasikan ke topik yang cocok dengan kedua langganan akan dikirimkan beberapa kali, sekali untuk setiap langganan yang tumpang tindih.

Menguji Langganan Bersama di klien MQTT

Bagian ini menjelaskan cara menggunakan AWS IoT MQTT klien di AWS IoT konsol untuk menonton MQTT pesan yang dikirim dan diterima AWS IoT menggunakan Langganan Bersama. Langganan Bersamamemungkinkan beberapa klien untuk berbagi langganan ke topik dengan hanya satu klien menerima pesan yang dipublikasikan ke topik tersebut menggunakan distribusi acak. Untuk mensimulasikan beberapa MQTT klien (dalam contoh ini, dua MQTT klien) berbagi langganan yang sama, Anda membuka AWS IoT MQTT klien di AWS IoT konsol dari beberapa browser web. Contoh yang digunakan di bagian ini tidak berhubungan dengan contoh yang digunakan dalamMemulai dengan AWS IoT Core tutorial. Untuk informasi selengkapnya, lihat Langganan Bersama.

Untuk berbagi langganan ke suatu MQTT topik
  1. Di AWS IoT konsol, di panel navigasi, pilih Uji dan kemudian pilih klien MQTT uji.

  2. Di tab Berlangganan topik, masukkan topicName untuk berlangganan topik di mana perangkat Anda menerbitkan. Untuk menggunakan Langganan Bersama, berlangganan filter topik Langganan Bersama sebagai berikut:

    $share/{ShareName}/{TopicFilter}

    Contoh filter topik dapat berupa$share/group1/topic1, yang berlangganan topik topic1 pesan.

    Tab yang menunjukkan cara menentukan filter topik untuk langganan bersama.
  3. Buka browser web lain dan ulangi langkah 1 dan langkah2. Dengan cara ini, Anda mensimulasikan dua MQTT klien berbeda yang berbagi langganan $share/group1/topic1 yang sama.

  4. Pilih satu MQTT klien, di tab Publikasikan ke topik, di bidang Nama topik, masukkan topicName dari pesan Anda. Dalam contoh ini, gunakantopic1. Cobalah mempublikasikan pesan beberapa kali. Dari daftar Langganan kedua MQTT klien, Anda harus dapat melihat bahwa klien menerima pesan menggunakan distribusi acak. Dalam contoh ini, kami menerbitkan pesan yang sama “Halo dari AWS IoT konsol” tiga kali. MQTTKlien di sebelah kiri menerima pesan dua kali dan MQTT klien di sebelah kanan menerima pesan satu kali.

    Langganan bersama mengalir dengan dua klien untuk berbagi langganan ke topik dan hanya satu klien yang akan menerima pesan yang dipublikasikan ke topik tersebut menggunakan distribusi acak.