[ aws . iot-jobs-data ]
Gets and starts the next pending (status IN_PROGRESS or QUEUED) job execution for a thing.
See also: AWS API Documentation
See ‘aws help’ for descriptions of global parameters.
start-next-pending-job-execution
--thing-name <value>
[--status-details <value>]
[--step-timeout-in-minutes <value>]
[--cli-input-json | --cli-input-yaml]
[--generate-cli-skeleton <value>]
--thing-name
(string)
The name of the thing associated with the device.
--status-details
(map)
A collection of name/value pairs that describe the status of the job execution. If not specified, the statusDetails are unchanged.
key -> (string)
value -> (string)
Shorthand Syntax:
KeyName1=string,KeyName2=string
JSON Syntax:
{"string": "string"
...}
--step-timeout-in-minutes
(long)
Specifies the amount of time this device has to finish execution of this job. If the job execution status is not set to a terminal state before this timer expires, or before the timer is reset (by calling
UpdateJobExecution
, setting the status toIN_PROGRESS
and specifying a new timeout value in fieldstepTimeoutInMinutes
) the job execution status will be automatically set toTIMED_OUT
. Note that setting this timeout has no effect on that job execution timeout which may have been specified when the job was created (CreateJob
using fieldtimeoutConfig
).
--cli-input-json
| --cli-input-yaml
(string)
Reads arguments from the JSON string provided. The JSON string follows the format provided by --generate-cli-skeleton
. If other arguments are provided on the command line, those values will override the JSON-provided values. It is not possible to pass arbitrary binary values using a JSON-provided value as the string will be taken literally. This may not be specified along with --cli-input-yaml
.
--generate-cli-skeleton
(string)
Prints a JSON skeleton to standard output without sending an API request. If provided with no value or the value input
, prints a sample input JSON that can be used as an argument for --cli-input-json
. Similarly, if provided yaml-input
it will print a sample input YAML that can be used with --cli-input-yaml
. If provided with the value output
, it validates the command inputs and returns a sample output JSON for that command.
See ‘aws help’ for descriptions of global parameters.
To get and start the next pending job execution for a thing
The following start-next-pending-job-execution
example retrieves and starts the next job execution whose status is IN_PROGRESS or QUEUED for the specified thing.
aws iot-jobs-data start-next-pending-job-execution \
--thing-name MotionSensor1
--endpoint-url https://1234567890abcd.jobs.iot.us-west-2.amazonaws.com
Output:
{
"execution": {
"approximateSecondsBeforeTimedOut": 88,
"executionNumber": 2939653338,
"jobId": "SampleJob",
"lastUpdatedAt": 1567714853.743,
"queuedAt": 1567701902.444,
"startedAt": 1567714871.690,
"status": "IN_PROGRESS",
"thingName": "MotionSensor1 ",
"versionNumber": 3
}
}
For more information, see Devices and Jobs in the AWS IoT Developer Guide.
execution -> (structure)
A JobExecution object.
jobId -> (string)
The unique identifier you assigned to this job when it was created.
thingName -> (string)
The name of the thing that is executing the job.
status -> (string)
The status of the job execution. Can be one of: “QUEUED”, “IN_PROGRESS”, “FAILED”, “SUCCESS”, “CANCELED”, “REJECTED”, or “REMOVED”.
statusDetails -> (map)
A collection of name/value pairs that describe the status of the job execution.
key -> (string)
value -> (string)
queuedAt -> (long)
The time, in milliseconds since the epoch, when the job execution was enqueued.
startedAt -> (long)
The time, in milliseconds since the epoch, when the job execution was started.
lastUpdatedAt -> (long)
The time, in milliseconds since the epoch, when the job execution was last updated.
approximateSecondsBeforeTimedOut -> (long)
The estimated number of seconds that remain before the job execution status will be changed to
TIMED_OUT
.versionNumber -> (long)
The version of the job execution. Job execution versions are incremented each time they are updated by a device.
executionNumber -> (long)
A number that identifies a particular job execution on a particular device. It can be used later in commands that return or update job execution information.
jobDocument -> (string)
The content of the job document.