appending "/SimpleJson" to value topics
This commit is contained in:
parent
8ae044325a
commit
5b01a417c7
12
src/bme680.h
12
src/bme680.h
@ -45,12 +45,12 @@ public:
|
||||
if (bme.remainingReadingMillis() == 0) {
|
||||
if (bme.endReading()) {
|
||||
const auto humidityAbsolute = calculateHumidityAbsolute(bme.temperature, bme.humidity);
|
||||
mqttPublish(name + "/temperature", bme.temperature, "TEMPERATURE_C");
|
||||
mqttPublish(name + "/pressure", bme.pressure / 100.0, "PRESSURE_HPA");
|
||||
mqttPublish(name + "/humidity/relative", bme.humidity, "HUMIDITY_RELATIVE_PERCENT");
|
||||
mqttPublish(name + "/humidity/absolute", humidityAbsolute, "HUMIDITY_ABSOLUTE_MGL");
|
||||
mqttPublish(name + "/gas", bme.gas_resistance, "RESISTANCE_OHMS");
|
||||
mqttPublish(name + "/altitude", bme.readAltitude(1013.25), "ALTITUDE_M");
|
||||
mqttPublishValue(name + "/temperature", bme.temperature, "TEMPERATURE_C");
|
||||
mqttPublishValue(name + "/pressure", bme.pressure / 100.0, "PRESSURE_HPA");
|
||||
mqttPublishValue(name + "/humidity/relative", bme.humidity, "HUMIDITY_RELATIVE_PERCENT");
|
||||
mqttPublishValue(name + "/humidity/absolute", humidityAbsolute, "HUMIDITY_ABSOLUTE_MGL");
|
||||
mqttPublishValue(name + "/gas", bme.gas_resistance, "RESISTANCE_OHMS");
|
||||
mqttPublishValue(name + "/altitude", bme.readAltitude(1013.25), "ALTITUDE_M");
|
||||
} else {
|
||||
Log.printf("BME680 \"%s\": Failed to complete reading\n", name.c_str());
|
||||
setup();
|
||||
|
||||
30
src/mqtt.cpp
30
src/mqtt.cpp
@ -62,34 +62,34 @@ void mqttLoop() {
|
||||
}
|
||||
}
|
||||
|
||||
void mqttPublish(const String& topic, const int32_t value, const char *unit) {
|
||||
mqttPublish(topic, String(value), unit);
|
||||
void mqttPublishValue(const String& name, const int32_t value, const char *unit) {
|
||||
mqttPublishValue(name, String(value), unit);
|
||||
}
|
||||
|
||||
void mqttPublish(const String& topic, const int64_t value, const char *unit) {
|
||||
mqttPublish(topic, String(value), unit);
|
||||
void mqttPublishValue(const String& name, const int64_t value, const char *unit) {
|
||||
mqttPublishValue(name, String(value), unit);
|
||||
}
|
||||
|
||||
void mqttPublish(const String& topic, const uint32_t value, const char *unit) {
|
||||
mqttPublish(topic, String(value), unit);
|
||||
void mqttPublishValue(const String& name, const uint32_t value, const char *unit) {
|
||||
mqttPublishValue(name, String(value), unit);
|
||||
}
|
||||
|
||||
void mqttPublish(const String& topic, const uint64_t value, const char *unit) {
|
||||
mqttPublish(topic, String(value), unit);
|
||||
void mqttPublishValue(const String& name, const uint64_t value, const char *unit) {
|
||||
mqttPublishValue(name, String(value), unit);
|
||||
}
|
||||
|
||||
void mqttPublish(const String& topic, const float value, const char *unit) {
|
||||
mqttPublish(topic, String(value), unit);
|
||||
void mqttPublishValue(const String& name, const float value, const char *unit) {
|
||||
mqttPublishValue(name, String(value), unit);
|
||||
}
|
||||
|
||||
void mqttPublish(const String& topic, const double value, const char *unit) {
|
||||
mqttPublish(topic, String(value), unit);
|
||||
void mqttPublishValue(const String& name, const double value, const char *unit) {
|
||||
mqttPublishValue(name, String(value), unit);
|
||||
}
|
||||
|
||||
void mqttPublish(const String& topic, const String& value, const char *unit) {
|
||||
void mqttPublishValue(const String& name, const String& value, const char *unit) {
|
||||
char buffer[200];
|
||||
snprintf(buffer, sizeof buffer, R"({"timestamp": %lld, "value": %s, "unit": "%s"})", time(nullptr), value.c_str(), unit);
|
||||
mqttPublish(topic, buffer);
|
||||
snprintf(buffer, sizeof buffer, R"({"name": "%s", "timestamp": %lld, "value": %s, "unit": "%s"})", name.c_str(), time(nullptr), value.c_str(), unit);
|
||||
mqttPublish(name + "/SimpleJson", buffer);
|
||||
}
|
||||
|
||||
void mqttPublish(const String& topic, const String& payload) {
|
||||
|
||||
14
src/mqtt.h
14
src/mqtt.h
@ -11,19 +11,19 @@ extern const String cmdTopic;
|
||||
|
||||
void mqttLoop();
|
||||
|
||||
void mqttPublish(const String& topic, int32_t value, const char *unit);
|
||||
void mqttPublishValue(const String& name, int32_t value, const char *unit);
|
||||
|
||||
void mqttPublish(const String& topic, int64_t value, const char *unit);
|
||||
void mqttPublishValue(const String& name, int64_t value, const char *unit);
|
||||
|
||||
void mqttPublish(const String& topic, uint32_t value, const char *unit);
|
||||
void mqttPublishValue(const String& name, uint32_t value, const char *unit);
|
||||
|
||||
void mqttPublish(const String& topic, uint64_t value, const char *unit);
|
||||
void mqttPublishValue(const String& name, uint64_t value, const char *unit);
|
||||
|
||||
void mqttPublish(const String& topic, float value, const char *unit);
|
||||
void mqttPublishValue(const String& name, float value, const char *unit);
|
||||
|
||||
void mqttPublish(const String& topic, double value, const char *unit);
|
||||
void mqttPublishValue(const String& name, double value, const char *unit);
|
||||
|
||||
void mqttPublish(const String& topic, const String& value, const char *unit);
|
||||
void mqttPublishValue(const String& name, const String& value, const char *unit);
|
||||
|
||||
void mqttPublish(const String& topic, const String& payload);
|
||||
|
||||
|
||||
@ -48,7 +48,7 @@ private:
|
||||
Log.printf("TSL2561 \"%s\": Failed to read.\n", name.c_str());
|
||||
setup();
|
||||
} else {
|
||||
mqttPublish(name + "/illuminance", illuminance, "ILLUMINANCE_LUX");
|
||||
mqttPublishValue(name + "/illuminance", illuminance, "ILLUMINANCE_LUX");
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@ -23,7 +23,7 @@ void wifiConnect() {
|
||||
WiFi.begin(WIFI_SSID, WIFI_PASSWORD);
|
||||
configTime(TZ_Europe_Berlin, NTP_SERVER);
|
||||
ArduinoOTA.onStart([]() {
|
||||
Log.printf("OTA start...\n");
|
||||
Log.printf("OTA begin...\n");
|
||||
});
|
||||
ArduinoOTA.onError([](const ota_error_t error) {
|
||||
const char *name;
|
||||
|
||||
Loading…
Reference in New Issue
Block a user