gpt4 book ai didi

javascript - 更改将在 mqtt 连接上

转载 作者:行者123 更新时间:2023-12-03 02:20:53 25 4
gpt4 key购买 nike

我们正在使用 mqtt.js ( https://www.npmjs.com/package/mqtt ) 客户端连接到 AWS IoT 服务。

我们可以毫无问题地连接并通过以下代码传入最后的遗嘱

var clientOptions = {
will: {
topic: "logout",
payload: JSON.stringify({ _id: User.me._id, viewing: User.me.viewing })
}
};

client = mqtt.connect(signedUrl, clientOptions);

现在我想更新选项的 will 部分 - 更改有效负载以具有新的查看属性。

有没有办法在不断开和触发旧遗嘱的情况下更新遗嘱?

最佳答案

遗嘱无法更改,只能在连接数据包中设置。

但是最后的遗嘱和遗嘱应该仅在客户端超时时触发,而不是在完全断开连接时触发。这意味着您应该能够告诉客户端断开与新 LWT 的连接并重新连接,而不会触发旧 LWT 的发布。

如果您使用 clean session false 并以 QOS1 或更高级别订阅,那么当您重新连接时您不应错过任何消息,因为代理应该在重新连接时排队并传送它们。

关于javascript - 更改将在 mqtt 连接上,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49163609/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com