Merge branch 'dev' into dev2

This commit is contained in:
MichaelDvP
2023-12-12 14:41:31 +01:00
32 changed files with 3623 additions and 858 deletions

View File

@@ -66,9 +66,6 @@ class ESP8266React {
void setWill(const char * will_topic) {
_mqttSettingsService.setWill(will_topic);
}
void onMessage(espMqttClientTypes::OnMessageCallback callback) {
_mqttSettingsService.onMessage(callback);
}
void factoryReset() {
_factoryResetService.factoryReset();

View File

@@ -68,6 +68,7 @@ void MqttSettingsService::startClient() {
}
static_cast<espMqttClientSecure *>(_mqttClient)->onConnect(std::bind(&MqttSettingsService::onMqttConnect, this, _1));
static_cast<espMqttClientSecure *>(_mqttClient)->onDisconnect(std::bind(&MqttSettingsService::onMqttDisconnect, this, _1));
static_cast<espMqttClientSecure *>(_mqttClient)->onMessage(std::bind(&MqttSettingsService::onMqttMessage, this, _1, _2, _3, _4, _5, _6));
return;
}
#endif
@@ -75,6 +76,7 @@ void MqttSettingsService::startClient() {
_mqttClient = static_cast<MqttClient *>(new espMqttClient(espMqttClientTypes::UseInternalTask::NO));
static_cast<espMqttClient *>(_mqttClient)->onConnect(std::bind(&MqttSettingsService::onMqttConnect, this, _1));
static_cast<espMqttClient *>(_mqttClient)->onDisconnect(std::bind(&MqttSettingsService::onMqttDisconnect, this, _1));
static_cast<espMqttClient *>(_mqttClient)->onMessage(std::bind(&MqttSettingsService::onMqttMessage, this, _1, _2, _3, _4, _5, _6));
}
void MqttSettingsService::loop() {
@@ -108,14 +110,8 @@ void MqttSettingsService::setWill(const char * topic) {
static_cast<espMqttClient *>(_mqttClient)->setWill(topic, 1, true, "offline");
}
void MqttSettingsService::onMessage(espMqttClientTypes::OnMessageCallback callback) {
#if CONFIG_IDF_TARGET_ESP32S3
if (_state.enableTLS) {
static_cast<espMqttClientSecure *>(_mqttClient)->onMessage(callback);
return;
}
#endif
static_cast<espMqttClient *>(_mqttClient)->onMessage(callback);
void MqttSettingsService::onMqttMessage(const espMqttClientTypes::MessageProperties& properties, const char* topic, const uint8_t* payload, size_t len, size_t index, size_t total) {
emsesp::EMSESP::mqtt_.on_message(topic, payload, len);
}
espMqttClientTypes::DisconnectReason MqttSettingsService::getDisconnectReason() {

View File

@@ -116,7 +116,6 @@ class MqttSettingsService : public StatefulService<MqttSettings> {
espMqttClientTypes::DisconnectReason getDisconnectReason();
MqttClient * getMqttClient();
void setWill(const char * topic);
void onMessage(espMqttClientTypes::OnMessageCallback callback);
protected:
void onConfigUpdated();
@@ -146,6 +145,7 @@ class MqttSettingsService : public StatefulService<MqttSettings> {
void WiFiEvent(WiFiEvent_t event, WiFiEventInfo_t info);
void onMqttConnect(bool sessionPresent);
void onMqttDisconnect(espMqttClientTypes::DisconnectReason reason);
void onMqttMessage(const espMqttClientTypes::MessageProperties& properties, const char* topic, const uint8_t* payload, size_t len, size_t index, size_t total);
bool configureMqtt();
};