Add device_class to MQTT Discovery for rtl_433_ESP (#1419)
* Add device_class to rtl_433_ESP discovery
This commit is contained in:
1 parent
9bdfeca2f7
commit
dcb4d5551e
2 files changed
+44
-44
No files matched your search
@@ -144,7 +144,7 @@ void launchRTL_433Discovery(bool overrideDiscovery) {
|
|||||||
if (strcmp(parameters[i][0], "tamper") == 0 || strcmp(parameters[i][0], "alarm") == 0 || strcmp(parameters[i][0], "motion") == 0) {
|
if (strcmp(parameters[i][0], "tamper") == 0 || strcmp(parameters[i][0], "alarm") == 0 || strcmp(parameters[i][0], "motion") == 0) {
|
||||||
createDiscovery("binary_sensor", //set Type
|
createDiscovery("binary_sensor", //set Type
|
||||||
(char*)topic.c_str(), parameters[i][1], pdevice->uniqueId, //set state_topic,name,uniqueId
|
(char*)topic.c_str(), parameters[i][1], pdevice->uniqueId, //set state_topic,name,uniqueId
|
||||||
"", "", (char*)value_template.c_str(), //set availability_topic,device_class,value_template,
|
"", parameters[i][3], (char*)value_template.c_str(), //set availability_topic,device_class,value_template,
|
||||||
"1", "0", parameters[i][2], //set,payload_on,payload_off,unit_of_meas,
|
"1", "0", parameters[i][2], //set,payload_on,payload_off,unit_of_meas,
|
||||||
0, //set off_delay
|
0, //set off_delay
|
||||||
"", "", false, "", //set,payload_available,payload_not available ,is a gateway entity, command topic
|
"", "", false, "", //set,payload_available,payload_not available ,is a gateway entity, command topic
|
||||||
@@ -154,7 +154,7 @@ void launchRTL_433Discovery(bool overrideDiscovery) {
|
|||||||
} else if (strcmp(parameters[i][0], "strike_count") == 0) {
|
} else if (strcmp(parameters[i][0], "strike_count") == 0) {
|
||||||
createDiscovery("sensor", //set Type
|
createDiscovery("sensor", //set Type
|
||||||
(char*)topic.c_str(), parameters[i][1], pdevice->uniqueId, //set state_topic,name,uniqueId
|
(char*)topic.c_str(), parameters[i][1], pdevice->uniqueId, //set state_topic,name,uniqueId
|
||||||
"", "", (char*)value_template.c_str(), //set availability_topic,device_class,value_template,
|
"", parameters[i][3], (char*)value_template.c_str(), //set availability_topic,device_class,value_template,
|
||||||
"1", "0", parameters[i][2], //set,payload_on,payload_off,unit_of_meas,
|
"1", "0", parameters[i][2], //set,payload_on,payload_off,unit_of_meas,
|
||||||
0, //set off_delay
|
0, //set off_delay
|
||||||
"", "", false, "", //set,payload_available,payload_not available ,is a gateway entity, command topic
|
"", "", false, "", //set,payload_available,payload_not available ,is a gateway entity, command topic
|
||||||
@@ -164,7 +164,7 @@ void launchRTL_433Discovery(bool overrideDiscovery) {
|
|||||||
} else {
|
} else {
|
||||||
createDiscovery("sensor", //set Type
|
createDiscovery("sensor", //set Type
|
||||||
(char*)topic.c_str(), parameters[i][1], pdevice->uniqueId, //set state_topic,name,uniqueId
|
(char*)topic.c_str(), parameters[i][1], pdevice->uniqueId, //set state_topic,name,uniqueId
|
||||||
"", "", (char*)value_template.c_str(), //set availability_topic,device_class,value_template,
|
"", parameters[i][3], (char*)value_template.c_str(), //set availability_topic,device_class,value_template,
|
||||||
"", "", parameters[i][2], //set,payload_on,payload_off,unit_of_meas,
|
"", "", parameters[i][2], //set,payload_on,payload_off,unit_of_meas,
|
||||||
0, //set off_delay
|
0, //set off_delay
|
||||||
"", "", false, "", //set,payload_available,payload_not available ,is a gateway entity, command topic
|
"", "", false, "", //set,payload_available,payload_not available ,is a gateway entity, command topic
|
||||||
|
|||||||
+41
-41
@@ -82,47 +82,47 @@ struct RTL_433device {
|
|||||||
|
|
||||||
extern std::vector<RTL_433device*> RTL_433devices;
|
extern std::vector<RTL_433device*> RTL_433devices;
|
||||||
|
|
||||||
const char parameters[39][3][16] = {
|
const char parameters[39][4][24] = {
|
||||||
// RTL_433 key, name, unit
|
// RTL_433 key, name, unit, device_class
|
||||||
{"temperature_C", "temperature", "°C"},
|
{"temperature_C", "temperature", "°C", "temperature"},
|
||||||
{"temperature_1_C", "temperature", "°C"},
|
{"temperature_1_C", "temperature", "°C", "temperature"},
|
||||||
{"temperature_2_C", "temperature", "°C"},
|
{"temperature_2_C", "temperature", "°C", "temperature"},
|
||||||
{"temperature_F", "temperature", "°F"},
|
{"temperature_F", "temperature", "°F", "temperature"},
|
||||||
{"time", "timestamp", ""},
|
{"time", "timestamp", "", "timestamp"},
|
||||||
{"battery_ok", "battery", ""},
|
{"battery_ok", "battery", "", "battery"},
|
||||||
{"humidity", "humidity", "%"},
|
{"humidity", "humidity", "%", "humidity"},
|
||||||
{"moisture", "moisture", "%"},
|
{"moisture", "moisture", "%", "humidity"},
|
||||||
{"pressure_hPa", "pressure", "hPa"},
|
{"pressure_hPa", "pressure", "hPa", "pressure"},
|
||||||
{"pressure_kPa", "pressure", "kPa"},
|
{"pressure_kPa", "pressure", "kPa", "pressure"},
|
||||||
{"wind_speed_km_h", "wind speed", "km/h"},
|
{"wind_speed_km_h", "wind speed", "km/h", "wind_speed"},
|
||||||
{"wind_avg_km_h", "wind average", "km/h"},
|
{"wind_avg_km_h", "wind average", "km/h", "wind_speed"},
|
||||||
{"wind_avg_mi_h", "wind average", "mi/h"},
|
{"wind_avg_mi_h", "wind average", "mi/h", "wind_speed"},
|
||||||
{"wind_avg_m_s", "wind average", "m/s"},
|
{"wind_avg_m_s", "wind average", "m/s", "wind_speed"},
|
||||||
{"wind_speed_m_s", "wind speed", "m/s"},
|
{"wind_speed_m_s", "wind speed", "m/s", "wind_speed"},
|
||||||
{"gust_speed_km_h", "gust speed", "km/h"},
|
{"gust_speed_km_h", "gust speed", "km/h", "wind_speed"},
|
||||||
{"wind_max_km_h", "wind max", "km/h"},
|
{"wind_max_km_h", "wind max", "km/h", "wind_speed"},
|
||||||
{"wind_max_m_s", "wind max", "m/s"},
|
{"wind_max_m_s", "wind max", "m/s", "wind_speed"},
|
||||||
{"gust_speed_m_s", "gust speed", "m/s"},
|
{"gust_speed_m_s", "gust speed", "m/s", "wind_speed"},
|
||||||
{"wind_dir_deg", "wind direction", "°"},
|
{"wind_dir_deg", "wind direction", "°", ""},
|
||||||
{"rain_mm", "rain", "mm"},
|
{"rain_mm", "rain", "mm", "precipitation"},
|
||||||
{"rain_mm_h", "rain", "mm/h"},
|
{"rain_mm_h", "rain", "mm/h", "precipitation"},
|
||||||
{"rain_in", "rain", "in"},
|
{"rain_in", "rain", "in", "precipitation_intensity"},
|
||||||
{"rain_rate_in_h", "rain", "in/h"},
|
{"rain_rate_in_h", "rain", "in/h", "precipitation_intensity"},
|
||||||
{"rssi", "rssi", "dB"},
|
{"rssi", "rssi", "dB", "signal_strength"},
|
||||||
{"snr", "snr", "dB"},
|
{"snr", "snr", "dB", ""},
|
||||||
{"noise", "noise", "dB"},
|
{"noise", "noise", "dB", ""},
|
||||||
{"depth_cm", "depth", "cm"},
|
{"depth_cm", "depth", "cm", ""},
|
||||||
{"power_W", "power", "W"},
|
{"power_W", "power", "W", "power"},
|
||||||
{"light_lux", "light", "lx"},
|
{"light_lux", "light", "lx", ""},
|
||||||
{"lux", "lux", "lx"},
|
{"lux", "lux", "lx", ""},
|
||||||
{"uv", "uv", "UV index"},
|
{"uv", "uv", "UV index", ""},
|
||||||
{"uvi", "uvi", "UV index"},
|
{"uvi", "uvi", "UV index", ""},
|
||||||
{"storm_dist", "storm distance", "mi"},
|
{"storm_dist", "storm distance", "mi", ""},
|
||||||
{"strike_distance", "strike distance", "mi"},
|
{"strike_distance", "strike distance", "mi", ""},
|
||||||
{"tamper", "tamper", ""},
|
{"tamper", "tamper", "", ""},
|
||||||
{"alarm", "alarm", ""},
|
{"alarm", "alarm", "", ""},
|
||||||
{"motion", "motion", ""},
|
{"motion", "motion", "", "motion"},
|
||||||
{"strike_count", "strike count", ""}}; // from rtl_433_mqtt_hass.py
|
{"strike_count", "strike count", "", ""}}; // from rtl_433_mqtt_hass.py
|
||||||
# endif
|
# endif
|
||||||
#endif
|
#endif
|
||||||
/*-------------------RF topics & parameters----------------------*/
|
/*-------------------RF topics & parameters----------------------*/
|
||||||
|
|||||||
Reference in new issue
Block a user