我正在使用aws iot javascript sdk进行推送通知(在nodejs lambda函数中)。当我向主题推送一个通知时,订户多次收到相同的通知。
const iotdata = new AWS.IotData({endpoint: '1234332.iot.eu-west-2.amazonaws.com'});
var params = {
topic: `room/public/notification`,
payload: JSON.stringify(notification),
qos: 1
};
iotdata.publish(params, function(err, data){
if(err){
console.log(err);
}
else{
console.log(data);
}
});
你能帮我找到我在这里做错的事吗?
答案 0 :(得分:0)
该问题的解决方案是在第2级设置QoS - 这保证了一次性交付。
来自mqtt标准: “4.3.3 QoS 2:完全一次交付 这是最高质量的服务,用于既不接受丢失也不重复消息的情况。与此服务质量相关的开销增加。“