Perangkat dan pekerjaan - AWS IoT Core

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

Perangkat dan pekerjaan

Perangkat dapat berkomunikasi dengan AWS IoT Jobs menggunakan MQTT, HTTP Signature Version 4, atau HTTP TLS. Untuk menentukan titik akhir yang akan digunakan saat perangkat Anda berkomunikasi dengan AWS IoT Jobs, jalankan perintah. DescribeEndpoint Misalnya, jika Anda menjalankan perintah ini:

aws iot describe-endpoint --endpoint-type iot:Data-ATS

Anda mendapatkan hasil yang mirip dengan yang berikut ini:

{ "endpointAddress": "a1b2c3d4e5f6g7-ats.iot.us-west-2.amazonaws.com" }

Perangkat dapat berkomunikasi dengan AWS IoT Jobs menggunakan protokol MQTT. Perangkat berlangganan topik MQTT untuk diberitahu tentang pekerjaan baru dan menerima tanggapan dari layanan Pekerjaan. AWS IoT Perangkat mempublikasikan topik MQTT untuk menanyakan atau memperbarui status peluncuran pekerjaan. Setiap perangkat memiliki topik MQTT umum sendiri. Untuk informasi selengkapnya tentang menerbitkan dan berlangganan topik MQTT, lihat. Protokol komunikasi perangkat

Dengan metode komunikasi ini, perangkat Anda menggunakan sertifikat khusus perangkat dan kunci privat untuk mengautentikasi dengan Jobs. AWS IoT

Perangkat Anda dapat berlangganan topik berikut. thing-nameadalah nama benda yang terkait dengan perangkat.

  • $aws/things/thing-name/jobs/notify

    Berlangganan topik ini untuk memberi tahu Anda saat peluncuran pekerjaan ditambahkan atau dihapus dari daftar peluncuran pekerjaan yang tertunda.

  • $aws/things/thing-name/jobs/notify-next

    Berlangganan topik ini untuk memberi tahu Anda ketika eksekusi pekerjaan tertunda berikutnya telah berubah.

  • $aws/things/thing-name/jobs/request-name/accepted

    Layanan AWS IoT Jobs menerbitkan pesan sukses dan gagal pada topik MQTT. Topik dibentuk dengan menambahkan accepted atau rejected ke topik yang digunakan untuk membuat permintaan. Di sini, request-name adalah nama permintaan seperti Get dan topiknya dapat berupa:$aws/things/myThing/jobs/get. AWS IoT Jobs kemudian menerbitkan pesan sukses tentang $aws/things/myThing/jobs/get/accepted topik tersebut.

  • $aws/things/thing-name/jobs/request-name/rejected

    Di sini, request-name adalah nama permintaan sepertiGet. Jika permintaan gagal, AWS IoT Jobs menerbitkan pesan kegagalan pada $aws/things/myThing/jobs/get/rejected topik tersebut.

Anda juga dapat menggunakan operasi HTTPS API berikut:

Perangkat dapat berkomunikasi dengan AWS IoT Jobs menggunakan HTTP Signature Version 4 pada port 443. Ini adalah metode yang digunakan oleh AWS SDK dan CLI. Untuk informasi selengkapnya tentang alat tersebut, lihat Referensi AWS CLI Perintah: iot-jobs-data atau AWS SDK dan Alat dan lihat IotJobsDataPlane bagian untuk bahasa pilihan Anda.

Dengan metode komunikasi ini, perangkat Anda menggunakan kredensyal IAM untuk mengautentikasi dengan Jobs. AWS IoT

Perintah berikut tersedia menggunakan metode ini:

  • DescribeJobExecution

    aws iot-jobs-data describe-job-execution ...

  • GetPendingJobExecutions

    aws iot-jobs-data get-pending-job-executions ...

  • StartNextPendingJobExecution

    aws iot-jobs-data start-next-pending-job-execution ...

  • UpdateJobExecution

    aws iot-jobs-data update-job-execution ...

Perangkat dapat berkomunikasi dengan AWS IoT Jobs menggunakan HTTP TLS pada port 8443 menggunakan klien perangkat lunak pihak ketiga yang mendukung protokol ini.

Dengan metode ini, perangkat Anda menggunakan otentikasi berbasis sertifikat X.509 (misalnya, sertifikat khusus perangkat dan kunci privat).

Perintah berikut tersedia menggunakan metode ini:

  • DescribeJobExecution

  • GetPendingJobExecutions

  • StartNextPendingJobExecution

  • UpdateJobExecution

Perangkat pemrograman untuk bekerja dengan pekerjaan

Contoh di bagian ini menggunakan MQTT untuk mengilustrasikan cara kerja perangkat dengan layanan Jobs. AWS IoT Atau, Anda dapat menggunakan perintah API atau CLI yang sesuai. Untuk contoh ini, kami mengasumsikan perangkat bernama MyThing yang berlangganan topik MQTT berikut:

  • $aws/things/MyThing/jobs/notify (atau $aws/things/MyThing/jobs/notify-next)

  • $aws/things/MyThing/jobs/get/accepted

  • $aws/things/MyThing/jobs/get/rejected

  • $aws/things/MyThing/jobs/jobId/get/accepted

  • $aws/things/MyThing/jobs/jobId/get/rejected

Jika Anda menggunakan penandatanganan kode AWS IoT, kode perangkat Anda harus memverifikasi tanda tangan file kode Anda. Tanda tangan ada di dokumen pekerjaan di codesign properti. Untuk informasi selengkapnya tentang memverifikasi tanda tangan file kode, lihat Contoh Agen Perangkat.