add HA auto discovery for keypad battery critical sensor

This commit is contained in:
technyon
2022-12-18 11:49:32 +01:00
parent 0e3211689d
commit 593e12a5ea
3 changed files with 26 additions and 6 deletions

View File

@@ -404,9 +404,6 @@ void Network::publishHASSConfig(char* deviceType, const char* baseTopic, char* n
path.concat(uidString);
path.concat("/smartlock/config");
Serial.println("HASS Config:");
Serial.println(configJSON);
_device->mqttClient()->publish(path.c_str(), configJSON.c_str(), true);
// Battery critical
@@ -422,8 +419,7 @@ void Network::publishHASSConfig(char* deviceType, const char* baseTopic, char* n
configJSON.concat(name);
configJSON.concat(" battery low\",\"unique_id\":\"");
configJSON.concat(uidString);
configJSON.concat(
"_battery_low\",\"dev_cla\":\"battery\",\"ent_cat\":\"diagnostic\",\"pl_off\":\"0\",\"pl_on\":\"1\",\"stat_t\":\"~");
configJSON.concat("_battery_low\",\"dev_cla\":\"battery\",\"ent_cat\":\"diagnostic\",\"pl_off\":\"0\",\"pl_on\":\"1\",\"stat_t\":\"~");
configJSON.concat(mqtt_topic_battery_critical);
configJSON.concat("\"}");
@@ -434,6 +430,30 @@ void Network::publishHASSConfig(char* deviceType, const char* baseTopic, char* n
_device->mqttClient()->publish(path.c_str(), configJSON.c_str(), true);
// Keypad battery critical
configJSON = "{\"dev\":{\"ids\":[\"nuki_";
configJSON.concat(uidString);
configJSON.concat("\"],\"mf\":\"Nuki\",\"mdl\":\"");
configJSON.concat(deviceType);
configJSON.concat("\",\"name\":\"");
configJSON.concat(name);
configJSON.concat("\"},\"~\":\"");
configJSON.concat(baseTopic);
configJSON.concat("\",\"name\":\"");
configJSON.concat(name);
configJSON.concat(" keypad battery low\",\"unique_id\":\"");
configJSON.concat(uidString);
configJSON.concat("_keypad_battery_low\",\"dev_cla\":\"battery\",\"ent_cat\":\"diagnostic\",\"pl_off\":\"0\",\"pl_on\":\"1\",\"stat_t\":\"~");
configJSON.concat(mqtt_topic_battery_keypad_critical);
configJSON.concat("\"}");
path = discoveryTopic;
path.concat("/binary_sensor/");
path.concat(uidString);
path.concat("/keypad_battery_low/config");
_device->mqttClient()->publish(path.c_str(), configJSON.c_str(), true);
// Battery voltage
configJSON = "{\"dev\":{\"ids\":[\"nuki_";
configJSON.concat(uidString);

View File

@@ -1,3 +1,3 @@
#pragma once
#define nuki_hub_version "6.5"
#define nuki_hub_version "6.6"

Binary file not shown.