Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Manajemen pekerjaan dan kontrol API dan tipe data
Perintah berikut tersedia untuk manajemen dan kontrol Job di CLI dan melalui protokol HTTPS.
Untuk menentukan endpoint-url parameter untuk perintah CLI Anda, jalankan perintah ini.
aws iot describe-endpoint --endpoint-type=iot:Jobs
Perintah ini mengembalikan output berikut.
{ "endpointAddress": "account-specific-prefix.jobs.iot.aws-region.amazonaws.com" }
catatan
Endpoint Jobs tidak mendukung x-amzn-http-ca ALPN.
Jika Anda menggunakan titik akhir dual-stack (IPv6 and IPv6), gunakan endpoint. iot:Data-ATS iot:JobsEndpoint hanya IPv4 mendukung.
Jenis data manajemen dan kontrol pekerjaan
Tipe data berikut digunakan oleh aplikasi manajemen dan kontrol untuk berkomunikasi dengan AWS IoT Jobs.
JobObjek berisi detail tentang pekerjaan. Contoh berikut menunjukkan sintaks:
{ "jobArn": "string", "jobId": "string", "status": "IN_PROGRESS|CANCELED|SUCCEEDED", "forceCanceled": boolean, "targetSelection": "CONTINUOUS|SNAPSHOT", "comment": "string", "targets": ["string"], "description": "string", "createdAt": timestamp, "lastUpdatedAt": timestamp, "completedAt": timestamp, "jobProcessDetails": { "processingTargets": ["string"], "numberOfCanceledThings": long, "numberOfSucceededThings": long, "numberOfFailedThings": long, "numberOfRejectedThings": long, "numberOfQueuedThings": long, "numberOfInProgressThings": long, "numberOfRemovedThings": long, "numberOfTimedOutThings": long }, "presignedUrlConfig": { "expiresInSec": number, "roleArn": "string" }, "jobExecutionsRolloutConfig": { "exponentialRate": { "baseRatePerMinute": integer, "incrementFactor": integer, "rateIncreaseCriteria": { "numberOfNotifiedThings": integer, // Set one or the other "numberOfSucceededThings": integer // of these two values. }, "maximumPerMinute": integer } }, "abortConfig": { "criteriaList": [ { "action": "string", "failureType": "string", "minNumberOfExecutedThings": integer, "thresholdPercentage": integer } ] }, "SchedulingConfig": { "startTime": string "endTime": string "timeZone": string "endTimeBehavior": string }, "timeoutConfig": { "inProgressTimeoutInMinutes": long } }
JobSummaryObjek berisi ringkasan pekerjaan. Contoh berikut menunjukkan sintaks:
{ "jobArn": "string", "jobId": "string", "status": "IN_PROGRESS|CANCELED|SUCCEEDED|SCHEDULED", "targetSelection": "CONTINUOUS|SNAPSHOT", "thingGroupId": "string", "createdAt": timestamp, "lastUpdatedAt": timestamp, "completedAt": timestamp }
Untuk informasi selengkapnya, lihat JobSummary atau job-summary.
JobExecutionObjek mewakili pelaksanaan pekerjaan pada perangkat. Contoh berikut menunjukkan sintaks:
catatan
Saat Anda menggunakan operasi API bidang kontrol, tipe JobExecution data tidak berisi JobDocument bidang. Untuk mendapatkan informasi ini, Anda dapat menggunakan operasi GetJobDocumentAPI atau perintah get-job-documentCLI.
{ "approximateSecondsBeforeTimedOut": 50, "executionNumber": 1234567890, "forceCanceled": true|false, "jobId": "string", "lastUpdatedAt": timestamp, "queuedAt": timestamp, "startedAt": timestamp, "status": "QUEUED|IN_PROGRESS|FAILED|SUCCEEDED|CANCELED|TIMED_OUT|REJECTED|REMOVED", "forceCanceled": boolean, "statusDetails": { "detailsMap": { "string": "string" ... }, "status": "string" }, "thingArn": "string", "versionNumber": 123 }
Untuk informasi selengkapnya, lihat JobExecution atau job-execution.
JobExecutionSummaryObjek berisi informasi ringkasan eksekusi pekerjaan. Contoh berikut menunjukkan sintaks:
{ "executionNumber": 1234567890, "queuedAt": timestamp, "lastUpdatedAt": timestamp, "startedAt": timestamp, "status": "QUEUED|IN_PROGRESS|FAILED|SUCCEEDED|CANCELED|TIMED_OUT|REJECTED|REMOVED" }
Untuk informasi selengkapnya, lihat JobExecutionSummary atau job-execution-summary.
JobExecutionSummaryForJobObjek berisi ringkasan informasi tentang eksekusi pekerjaan untuk pekerjaan tertentu. Contoh berikut menunjukkan sintaks:
{ "executionSummaries": [ { "thingArn": "arn:aws:iot:us-west-2:123456789012:thing/MyThing", "jobExecutionSummary": { "status": "IN_PROGRESS", "lastUpdatedAt": 1549395301.389, "queuedAt": 1541526002.609, "executionNumber": 1 } }, ... ] }
Untuk informasi selengkapnya, lihat JobExecutionSummaryForJob atau job-execution-summary-for-job.
JobExecutionSummaryForThingObjek berisi ringkasan informasi tentang eksekusi pekerjaan pada hal tertentu. FThe contoh berikut menunjukkan sintaks:
{ "executionSummaries": [ { "jobExecutionSummary": { "status": "IN_PROGRESS", "lastUpdatedAt": 1549395301.389, "queuedAt": 1541526002.609, "executionNumber": 1 }, "jobId": "MyThingJob" }, ... ] }
Untuk informasi selengkapnya, lihat JobExecutionSummaryForThing atau job-execution-summary-for-thing.
Manajemen pekerjaan dan pengendalian operasi API
Gunakan operasi API atau perintah CLI berikut:
Mengasosiasikan kelompok dengan pekerjaan berkelanjutan. Kriteria berikut harus dipenuhi:
-
Pekerjaan harus dibuat dengan
targetSelectionbidang diatur keCONTINUOUS. -
Status pekerjaan saat ini harus
IN_PROGRESS. -
Jumlah total target yang terkait dengan pekerjaan tidak boleh melebihi 100.
Membatalkan pekerjaan.
Membatalkan eksekusi pekerjaan di perangkat.
Menciptakan pekerjaan. Anda dapat memberikan dokumen pekerjaan sebagai tautan ke file di bucket Amazon S3 (documentSourceparameter), atau di badan permintaan (documentparameter).
Pekerjaan dapat dibuat terus menerus dengan mengatur targetSelection parameter opsional ke CONTINUOUS (defaultnya adalahSNAPSHOT). Pekerjaan berkelanjutan dapat digunakan untuk onboard atau meningkatkan perangkat saat ditambahkan ke grup karena terus berjalan dan diluncurkan pada hal-hal yang baru ditambahkan. Hal ini dapat terjadi bahkan setelah hal-hal dalam kelompok pada saat pekerjaan dibuat telah menyelesaikan pekerjaan.
Pekerjaan dapat memiliki opsional TimeoutConfig, yang menetapkan nilai timer yang sedang berlangsung. Timer yang sedang berlangsung tidak dapat diperbarui dan berlaku untuk semua eksekusi pekerjaan.
Validasi berikut dilakukan pada argumen ke API: CreateJob
-
targetsArgumen harus berupa daftar hal atau kelompok benda yang valid ARNs. Semua hal dan kelompok benda harus ada di dalam AndaAkun AWS. -
documentSourceArgumen harus berupa URL Amazon S3 yang valid ke dokumen pekerjaan. Amazon S3 URLs dalam bentuk:.https://s3.amazonaws.com/bucketName/objectName -
Dokumen yang disimpan dalam URL yang ditentukan oleh
documentSourceargumen harus berupa dokumen JSON yang dikodekan UTF-8. -
Ukuran dokumen pekerjaan dibatasi hingga 32 KB karena batas ukuran pesan MQTT (128 KB) dan enkripsi.
-
jobIdHarus unik dalam diri AndaAkun AWS.
Menghapus pekerjaan dan eksekusi pekerjaan terkait.
Menghapus pekerjaan dapat memakan waktu, tergantung pada jumlah eksekusi pekerjaan yang dibuat untuk pekerjaan itu dan berbagai faktor lainnya. Saat pekerjaan sedang dihapus, status pekerjaan ditampilkan sebagai “DELETION_IN_PROGRESS”. Mencoba menghapus atau membatalkan pekerjaan yang statusnya sudah “DELETION_IN_PROGRESS” menghasilkan kesalahan.
Menghapus eksekusi pekerjaan.
Mendapat rincian pelaksanaan pekerjaan.
Mendapat rincian eksekusi pekerjaan. Status eksekusi pekerjaan harus SUCCEEDED atauFAILED.
Mendapat dokumen pekerjaan untuk suatu pekerjaan.
catatan
Placeholder URLs tidak diganti dengan Amazon S3 URLs presigned dalam dokumen yang dikembalikan. Presigned URLs dibuat hanya jika layanan AWS IoT Jobs menerima permintaan melalui MQTT.
Mendapat daftar eksekusi pekerjaan untuk suatu pekerjaan.
Mendapat daftar eksekusi pekerjaan untuk suatu hal.
Mendapat daftar pekerjaan di AndaAkun AWS.
Memperbarui bidang yang didukung dari pekerjaan yang ditentukan. Nilai yang diperbarui timeoutConfig untuk diterapkan hanya untuk peluncuran yang baru dalam proses. Saat ini, peluncuran yang sedang berlangsung terus diluncurkan dengan konfigurasi batas waktu sebelumnya.