Mempertahankan status perangkat saat perangkat offline dengan Device Shadows - AWS IoT Core

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

Mempertahankan status perangkat saat perangkat offline dengan Device Shadows

Tutorial ini menunjukkan kepada Anda cara menggunakanAWS IoTLayanan Device Shadow untuk menyimpan dan memperbarui informasi status perangkat. Dokumen Shadow, yang merupakan dokumen JSON, menunjukkan perubahan status perangkat berdasarkan pesan yang diterbitkan oleh perangkat, aplikasi lokal, atau layanan. Dalam tutorial ini, dokumen Shadow menunjukkan perubahan warna bola lampu. Tutorial ini juga menunjukkan bagaimana bayangan menyimpan informasi ini bahkan ketika perangkat terputus dari internet, dan meneruskan informasi status terbaru kembali ke perangkat ketika kembali online dan meminta informasi ini.

Sebaiknya Anda mencoba tutorial ini sesuai urutan yang ditampilkan di sini, dimulai denganAWS IoTsumber daya yang Anda butuhkan untuk membuat dan pengaturan perangkat keras yang diperlukan, yang juga membantu Anda mempelajari konsep secara bertahap. Tutorial ini menunjukkan cara mengkonfigurasi dan menghubungkan perangkat Raspberry Pi untuk digunakan denganAWS IoT. Jika Anda tidak memiliki perangkat keras yang diperlukan, Anda dapat mengikuti tutorial ini dengan mengadaptasinya ke perangkat pilihan Anda atau olehmembuat perangkat virtual dengan Amazon EC2.

Ikhtisar skenario tutorial

Skenario untuk tutorial ini adalah aplikasi atau layanan lokal yang mengubah warna bola lampu dan yang menerbitkan datanya ke topik bayangan yang dipesan. Tutorial ini mirip dengan fungsi Device Shadow yang dijelaskan dalamtutorial memulai interaktifdan diimplementasikan pada perangkat Raspberry Pi. Tutorial di bagian ini berfokus pada bayangan klasik tunggal sambil menunjukkan bagaimana Anda dapat mengakomodasi bayangan bernama atau beberapa perangkat.

Tutorial berikut akan membantu Anda mempelajari cara menggunakanAWS IoTLayanan Device Shadow.

AWS IoTRingkasan Device Shadow

Device Shadow adalah representasi virtual persisten dari perangkat yang dikelola olehsumber daya halAnda membuatAWS IoTregistri. Dokumen Shadow adalah JSON atauJavaScriptnotasi doc yang digunakan untuk menyimpan dan mengambil informasi status saat ini untuk perangkat. Anda dapat menggunakan bayangan untuk mendapatkan dan mengatur status perangkat melalui topik MQTT atau HTTP REST API, terlepas dari apakah perangkat terhubung ke internet.

Sebuah dokumen Shadow berisistateproperti yang menggambarkan aspek-aspek keadaan perangkat.

  • desired: Aplikasi menentukan status properti perangkat yang diinginkan dengan memperbaruidesiredobjek.

  • reported: Perangkat melaporkan keadaan mereka saat ini direportedobjek.

  • delta:AWS IoTmelaporkan perbedaan antara yang diinginkan dan keadaan yang dilaporkan dideltaobjek.

Berikut adalah contoh dokumen status Shadow.

{ "state": { "desired": { "color": "green" }, "reported": { "color": "blue" }, "delta": { "color": "green" } } }

Untuk memperbarui dokumen Shadow perangkat, Anda dapat menggunakantopik MQTT yang dipesan, yangAPI SIST Perangkatyang mendukungGET,UPDATE, danDELETEoperasi dengan HTTP, danAWS IoTCLI.

Pada contoh sebelumnya, katakanlah Anda ingin mengubahdesiredwarnayellow. Untuk melakukan ini, kirim permintaan keUpdateThingShadowAPI atau mempublikasikan pesan kePerbaruitopik,$aws/things/THING_NAME/shadow/update.

{ "state": { "desired": { "color": yellow } } }

Pembaruan hanya mempengaruhi bidang yang ditentukan dalam permintaan. Setelah berhasil memperbarui Device Shadow,AWS IoTmenerbitkan yang barudesirednegara kedeltatopik,$aws/things/THING_NAME/shadow/delta. Dokumen Shadow dalam kasus ini terlihat seperti ini:

{ "state": { "desired": { "color": yellow }, "reported": { "color": green }, "delta": { "color": yellow } } }

Negara baru kemudian dilaporkan keAWS IoTDevice Shadow menggunakanUpdatetema$aws/things/THING_NAME/shadow/updatedengan pesan JSON berikut:

{ "state": { "reported": { "color": yellow } } }

Jika Anda ingin mendapatkan informasi status saat ini, kirim permintaan keGetThingShadowAPI atau mempublikasikan pesan MQTT keDapatkantopik,$aws/things/THING_NAME/shadow/get.

Untuk informasi selengkapnya tentang cara menggunakan layanan Device Shadow, lihatAWS IoT Layanan Device Shadow.

Untuk informasi selengkapnya tentang menggunakan Device Shadows di perangkat, aplikasi, dan layanan, lihatMenggunakan bayangan di perangkatdanMenggunakan bayangan di aplikasi dan layanan.

Untuk informasi tentang berinteraksi denganAWS IoTbayangan, lihatBerinteraksi dengan bayangan.

Untuk informasi tentang topik yang dipesan MQTT dan HTTP REST API, lihatTopik Device Shadow MQTTdanDevice Shadow REST API.