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 DescribeEndpoint perintah. Misalnya, jika Anda menjalankan perintah ini:
aws iot describe-endpoint --endpoint-type iot:Data-ATS
Anda mendapatkan hasil yang mirip dengan 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 untuk menerima tanggapan dari layanan AWS IoT Pekerjaan. Perangkat mempublikasikan topik MQTT untuk menanyakan atau memperbarui status peluncuran pekerjaan. Setiap perangkat memiliki topik MQTT umum sendiri. Untuk informasi lebih lanjut tentang penerbitan dan berlangganan topik MQTT, lihat. Protokol komunikasi perangkat
Dengan metode komunikasi ini, perangkat Anda menggunakan sertifikat khusus perangkat dan kunci pribadinya untuk melakukan otentikasi dengan Jobs. AWS IoT
Perangkat Anda dapat berlangganan topik berikut. thing-nameadalah nama benda yang terkait dengan perangkat.
-
$aws/things/nama benda/jobs/notifyBerlangganan topik ini untuk memberi tahu Anda saat peluncuran pekerjaan ditambahkan atau dihapus dari daftar peluncuran pekerjaan yang tertunda.
-
$aws/things/nama benda/jobs/notify-berikutnyaBerlangganan topik ini untuk memberi tahu Anda saat eksekusi tugas tertunda berikutnya telah berubah.
-
$aws/things/nama benda/pekerjaan/nama-permintaan/diterimaLayanan AWS IoT Jobs menerbitkan pesan sukses dan gagal pada topik MQTT. Topik dibentuk dengan menambahkan
acceptedataurejectedke topik yang digunakan untuk membuat permintaan. Di sini,request-nameadalah nama permintaan sepertiGetdan topiknya bisa:$aws/things/myThing/jobs/get. AWS IoT Jobs kemudian menerbitkan pesan sukses tentang$aws/things/myThing/jobs/get/acceptedtopik tersebut. -
$aws/things/nama benda/pekerjaan/nama-permintaan/ditolakDi sini,
request-nameadalah nama permintaan sepertiGet. Jika permintaan gagal, AWS IoT Jobs menerbitkan pesan kegagalan pada$aws/things/myThing/jobs/get/rejectedtopik tersebut.
Anda juga dapat menggunakan operasi API HTTPS berikut:
-
Perbarui status eksekusi pekerjaan dengan memanggil
UpdateJobExecutionAPI. -
Kueri status eksekusi pekerjaan dengan memanggil
DescribeJobExecutionAPI. -
Ambil daftar eksekusi pekerjaan yang tertunda dengan memanggil
GetPendingJobExecutionsAPI. -
Ambil eksekusi pekerjaan tertunda berikutnya dengan memanggil
DescribeJobExecutionAPI denganjobIdas$next. -
Dapatkan dan mulai eksekusi tugas tertunda berikutnya dengan memanggil
StartNextPendingJobExecutionAPI.
Perangkat dapat berkomunikasi dengan AWS IoT Jobs menggunakan HTTP Signature Versi 4 pada port 443. Ini adalah metode yang digunakan oleh AWS SDK dan CLI. Untuk informasi selengkapnya tentang alat tersebut, lihat AWS CLI Referensi Perintah: iot-jobs-data atau AWS SDK dan Tools
Dengan metode komunikasi ini, perangkat Anda menggunakan kredentif IAM untuk mengotentikasi dengan AWS IoT Jobs.
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 X.509 berbasis sertifikat (misalnya, sertifikat khusus perangkat dan kunci pribadinya).
Perintah berikut tersedia menggunakan metode ini:
-
DescribeJobExecution
-
GetPendingJobExecutions
-
StartNextPendingJobExecution
-
UpdateJobExecution
Perangkat pemrograman untuk bekerja dengan pekerjaan
Contoh-contoh di bagian ini menggunakan MQTT untuk menggambarkan bagaimana perangkat bekerja dengan layanan AWS IoT Jobs. Atau, Anda dapat menggunakan perintah API atau CLI yang sesuai. Untuk contoh-contoh ini, kami mengasumsikan perangkat MyThing yang disebut yang berlangganan topik MQTT berikut:
-
$aws/things/(atauMyThing/jobs/notify$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 untuk 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