使 MQTT 客户端连接始终存在
Make MQTT client connection to be always present
我使用的是ESP8266芯片和SMING软件框架MqttClient_Hello
示例。
我希望 MQTT 连接始终存在。如果由于某种原因连接断开,我希望重新连接。如何做到这一点?
相关代码在MqttClient_Hello
;
void startMqttClient();
void onMessageReceived(String topic, String message);
MqttClient mqtt("192.168.1.8", 1883, onMessageReceived);
// Run MQTT client
void startMqttClient()
{
mqtt.connect("esp8266");
mqtt.subscribe("TopicTest");
}
需要在代码中更改什么以确保持续连接?
所以SMING似乎没有断开连接或错误回调。
int mqtt_ping(mqtt_broker_handle_t* broker){...}
在 libemqtt
中实现,您可以尝试通过常规 ping 保持连接,如果失败则尝试重新连接。
我使用的是ESP8266芯片和SMING软件框架MqttClient_Hello
示例。
我希望 MQTT 连接始终存在。如果由于某种原因连接断开,我希望重新连接。如何做到这一点?
相关代码在MqttClient_Hello
;
void startMqttClient();
void onMessageReceived(String topic, String message);
MqttClient mqtt("192.168.1.8", 1883, onMessageReceived);
// Run MQTT client
void startMqttClient()
{
mqtt.connect("esp8266");
mqtt.subscribe("TopicTest");
}
需要在代码中更改什么以确保持续连接?
所以SMING似乎没有断开连接或错误回调。
int mqtt_ping(mqtt_broker_handle_t* broker){...}
在 libemqtt
中实现,您可以尝试通过常规 ping 保持连接,如果失败则尝试重新连接。