publish altitude

This commit is contained in:
Nicu Hodos 2022-10-11 16:11:11 +02:00
parent dd99a71b37
commit e236841345
2 changed files with 19 additions and 0 deletions

View File

@ -35,6 +35,17 @@ namespace Ha {
}
};
struct AltitudeConfig : SensorConfig {
AltitudeConfig(const char* name, const char* uniqueId, const char* stateTopic) {
this->name = name;
this->uniqueId = uniqueId;
this->stateTopic = stateTopic;
this->deviceClass = "distance";
this->unitMeasure = "m";
this->valueTemplate = "{{ value_json.altitude }}";
}
};
void buildDeviceConfig(JsonDocument& jsonDoc) {
JsonObject device = jsonDoc.createNestedObject("device");
device["name"] = "ESP Clock";

View File

@ -43,9 +43,16 @@ namespace Mqtt {
client.publish("homeassistant/sensor/esp_clock/pressure/config", 0, true, message);
}
void publishAltitudeConfig() {
char message[JSON_SIZE];
Ha::buildSensorConfig(message, Ha::AltitudeConfig{"Livingroom Altitude", "livingroom_altitude", bmpTopic});
client.publish("homeassistant/sensor/esp_clock/altitude/config", 0, true, message);
}
void publishConfig() {
publishTempConfig();
publishPressureConfig();
publishAltitudeConfig();
}
void publishCommand() {
@ -65,6 +72,7 @@ namespace Mqtt {
StaticJsonDocument<255> jsonDoc;
jsonDoc["temperature"] = Bmp::data.temp;
jsonDoc["pressure"] = Bmp::data.pressure;
jsonDoc["altitude"] = Bmp::data.altitude;
char message[255];
serializeJson(jsonDoc, message);
client.publish(bmpTopic, 0, true, message);