in lib/iotshadow/iotshadowclient.ts [867:891]
async subscribeToUpdateNamedShadowAccepted(
request: model.UpdateNamedShadowSubscriptionRequest,
qos: mqtt.QoS,
messageHandler: (error?: IotShadowError, response?: model.UpdateShadowResponse) => void)
: Promise<mqtt.MqttSubscribeRequest> {
let topic: string = "$aws/things/{thingName}/shadow/name/{shadowName}/update/accepted";
topic = topic.replace("{thingName}", request.thingName);
topic = topic.replace("{shadowName}", request.shadowName);
const on_message = (topic: string, payload: ArrayBuffer) => {
let response: model.UpdateShadowResponse | undefined;
let error: IotShadowError | undefined;
try {
const payload_text = toUtf8(new Uint8Array(payload));
response = JSON.parse(payload_text) as model.UpdateShadowResponse;
} catch (err) {
error = IotShadowClient.createClientError(err, payload);
}
finally {
messageHandler(error, response);
}
}
return this.mqttAdapter.subscribe(topic, qos, on_message);
}