in lib/iotjobs/iotjobsclient.ts [123:146]
async subscribeToStartNextPendingJobExecutionAccepted(
request: model.StartNextPendingJobExecutionSubscriptionRequest,
qos: mqtt.QoS,
messageHandler: (error?: IotJobsError, response?: model.StartNextJobExecutionResponse) => void)
: Promise<mqtt.MqttSubscribeRequest> {
let topic: string = "$aws/things/{thingName}/jobs/start-next/accepted";
topic = topic.replace("{thingName}", request.thingName);
const on_message = (topic: string, payload: ArrayBuffer) => {
let response: model.StartNextJobExecutionResponse | undefined;
let error: IotJobsError | undefined;
try {
const payload_text = this.decoder.decode(payload);
response = JSON.parse(payload_text) as model.StartNextJobExecutionResponse;
} catch (err) {
error = new IotJobsError(err.message, payload);
}
finally {
messageHandler(error, response);
}
}
return this.connection.subscribe(topic, qos, on_message);
}