Documentation
¶
Overview ¶
Package jobs implements AWS IoT Jobs API.
Index ¶
Constants ¶
This section is empty.
Variables ¶
View Source
var ErrInvalidResponse = errors.New("invalid response from AWS IoT")
ErrInvalidResponse is returned if failed to parse response from AWS IoT.
Functions ¶
This section is empty.
Types ¶
type ErrorResponse ¶
type ErrorResponse struct { Code string `json:"code"` Message string `json:"message"` ClientToken string `json:"clientToken"` Timestamp int64 `json:"timestamp"` ExecutionState JobExecutionState `json:"executionState"` }
ErrorResponse represents error message from AWS IoT.
func (*ErrorResponse) Error ¶
func (e *ErrorResponse) Error() string
Error implements error interface.
type JobExecution ¶
type JobExecution struct { JobID string `json:"jobId"` ThingName string `json:"thingName"` JobDocument interface{} `json:"jobDocument"` Status JobExecutionState `json:"status"` StatusDetails map[string]string `json:"statusDetails"` QueuedAt int64 `json:"queuedAt"` StartedAt int64 `json:"startedAt"` LastUpdatedAt int64 `json:"lastUpdatedAt"` VersionNumber int `json:"versionNumber"` ExecutionNumber int `json:"executionNumber"` }
JobExecution represents details of a job.
type JobExecutionState ¶
type JobExecutionState string
JobExecutionState represents job status.
const ( Queued JobExecutionState = "QUEUED" InProgress JobExecutionState = "IN_PROGRESS" Failed JobExecutionState = "FAILED" Succeeded JobExecutionState = "SUCCEEDED" Canceled JobExecutionState = "CANCELED" TimedOut JobExecutionState = "TIMED_OUT" Rejected JobExecutionState = "REJECTED" Removed JobExecutionState = "REMOVED" )
JobExecutionState values.
type JobExecutionSummary ¶
type JobExecutionSummary struct { JobID string `json:"jobId"` QueuedAt int64 `json:"queuedAt"` StartedAt int64 `json:"startedAt"` LastUpdatedAt int64 `json:"lastUpdatedAt"` VersionNumber int `json:"versionNumber"` ExecutionNumber int `json:"executionNumber"` }
JobExecutionSummary represents summary of a job.
type Jobs ¶
type Jobs interface { mqtt.Handler // OnError sets handler of asynchronous errors. OnError(func(error)) // OnJobChange sets handler for job update. OnJobChange(func(map[JobExecutionState][]JobExecutionSummary)) // GetPendingJobs gets list of pending jobs. GetPendingJobs(ctx context.Context) (map[JobExecutionState][]JobExecutionSummary, error) // DescribeJob gets details of specific job. DescribeJob(ctx context.Context, id string) (*JobExecution, error) // UpdateJob updates job status. UpdateJob(ctx context.Context, j *JobExecution, s JobExecutionState, opt ...UpdateJobOption) error }
Jobs is an interface of IoT Jobs.
type UpdateJobOption ¶
type UpdateJobOption func(*UpdateJobOptions)
UpdateJobOption is a functional option of UpdateJob.
func WithDetail ¶
func WithDetail(key, val string) UpdateJobOption
WithDetail adds detail status in key-value form.
func WithTimeout ¶
func WithTimeout(min int) UpdateJobOption
WithTimeout sets UpdateJob timeout in minutes.
type UpdateJobOptions ¶
UpdateJobOptions stores UpdateJob options.
Click to show internal directories.
Click to hide internal directories.