Arduino 上 Adafruit IO 的最后已知值
Last known value from Adafruit IO on Arduino
我正在为使用 Adafruit IO MQTT 库的 Adafruit Huzzah 绘制基本草图。这是由 copy/pasting 从各种来源和示例中组合而成的,并且大部分都有效 - 但有一件事我无法弄清楚。
现在,我正在使用一行代码,每次通过我订阅的提要收到新消息时都会触发处理程序:
group->onMessage("daniel", handleMessage);
这很好,可以为更新的值执行我需要的操作。
但是,我想做的是在 setup() 例程中获取提要上的最后一个已知值,而不必等待新值的出现。
用 MQTT 的说法,我认为这被称为保留消息,我认为 Adafruit IO 默认启用,但我不知道如何在 startup() 过程中获取这些值。
谁能帮帮我?
(如果您有兴趣,这是我到目前为止的代码:https://github.com/LimeBlast/family-box/blob/master/family-box.ino)
简而言之,您什么都不做。
保留消息的发送方式与普通消息一样(通过 onMessage 回调),只要您订阅了主题,它们就会立即发送。
看到我刚刚找到了我所问问题的答案,我认为我post在这里是对的。
设置提要后,我正在寻找的命令是 ->get()
、as shown in this example。
我也遇到了这个问题。这是完整的解释
get() 函数将要求 Adafruit 服务器仅将提要的最后一个值重新发送到此客户端。收到值后,将执行处理程序。
exampleFeed->get();
我正在为使用 Adafruit IO MQTT 库的 Adafruit Huzzah 绘制基本草图。这是由 copy/pasting 从各种来源和示例中组合而成的,并且大部分都有效 - 但有一件事我无法弄清楚。
现在,我正在使用一行代码,每次通过我订阅的提要收到新消息时都会触发处理程序:
group->onMessage("daniel", handleMessage);
这很好,可以为更新的值执行我需要的操作。
但是,我想做的是在 setup() 例程中获取提要上的最后一个已知值,而不必等待新值的出现。
用 MQTT 的说法,我认为这被称为保留消息,我认为 Adafruit IO 默认启用,但我不知道如何在 startup() 过程中获取这些值。
谁能帮帮我?
(如果您有兴趣,这是我到目前为止的代码:https://github.com/LimeBlast/family-box/blob/master/family-box.ino)
简而言之,您什么都不做。
保留消息的发送方式与普通消息一样(通过 onMessage 回调),只要您订阅了主题,它们就会立即发送。
看到我刚刚找到了我所问问题的答案,我认为我post在这里是对的。
设置提要后,我正在寻找的命令是 ->get()
、as shown in this example。
我也遇到了这个问题。这是完整的解释
get() 函数将要求 Adafruit 服务器仅将提要的最后一个值重新发送到此客户端。收到值后,将执行处理程序。
exampleFeed->get();