in client/iot_client.py [0:0]
def job_detail_callback(self, _0, _1, message):
job_detail = json.loads(message.payload)['execution']
print("Received job details:")
print(job_detail)
self.open_jobs[job_detail['jobId']] = job_detail
self.acknowledge_job(job_detail['jobId'])
operation, success = self.execute_job(job_detail['jobId'])
if success:
status = "SUCCEEDED"
elif operation and not success:
status = "FAILED"
else:
status = "REJECTED"
set_final_job_status = {
"status": status
}
print("Notifying AWS IoT of status, {0}, of job: {1}".format(status, job_detail['jobId']))
self.publish(
"$aws/things/{0}/jobs/{1}/update".format(self.thing_name, job_detail['jobId']),
json.dumps(set_final_job_status),
0
)
print("Removing job from open jobs")
del(self.open_jobs[job_detail['jobId']])