only send device update info when it is extractable
This commit is contained in:
@@ -355,14 +355,14 @@ def_global_updatecheck-payload = %global_prefix,
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
# optional secondary update check for the eBUS device (consuming the same topic though!)
|
# optional secondary update check for the enhanced eBUS device (consuming the same topic though!)
|
||||||
def_global_updatecheck_device-topic = %haprefix/update/%{TOPIC}_device/config
|
def_global_updatecheck_device-topic = %haprefix/update/%{TOPIC}_device/config
|
||||||
def_global_updatecheck_device-payload = {
|
def_global_updatecheck_device-payload = {
|
||||||
"unique_id":"%{TOPIC}_device",
|
"unique_id":"%{TOPIC}_device",
|
||||||
"device":{
|
"device":{
|
||||||
"identifiers":"%{PREFIXN}_device",
|
"identifiers":"%{PREFIXN}_device",
|
||||||
"manufacturer":"ebusd.eu",
|
"manufacturer":"ebusd.eu",
|
||||||
"name":"%prefixn device",
|
"name":"%prefixn eBUS device",
|
||||||
"via_device":"%PREFIXN",
|
"via_device":"%PREFIXN",
|
||||||
"suggested_area":"%area"
|
"suggested_area":"%area"
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -178,8 +178,8 @@ def_global-payload = {
|
|||||||
#def_global-retain = 0
|
#def_global-retain = 0
|
||||||
|
|
||||||
# individual global running, version, signal, uptime, updatecheck, and scan config topic, payload, and retain setting.
|
# individual global running, version, signal, uptime, updatecheck, and scan config topic, payload, and retain setting.
|
||||||
# a secondary update check for the eBUS device (consuming the same updatecheck topic) can be set up additionally, which
|
# a secondary update check for the eBUS device (consuming the same updatecheck topic) can be set up, which will only be
|
||||||
# does not use the common global defaults.
|
# used if an enhanced eBUS device supporting extra info is present (does not make use of the common global defaults).
|
||||||
#def_global_running-...
|
#def_global_running-...
|
||||||
#def_global_version-...
|
#def_global_version-...
|
||||||
#def_global_signal-...
|
#def_global_signal-...
|
||||||
|
|||||||
@@ -423,6 +423,11 @@ class BusHandler : public WaitThread {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @return the @a Device instance for accessing the bus.
|
||||||
|
*/
|
||||||
|
const Device* getDevice() const { return m_device; }
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Clear stored values (e.g. scan results).
|
* Clear stored values (e.g. scan results).
|
||||||
*/
|
*/
|
||||||
|
|||||||
@@ -952,8 +952,10 @@ void MqttHandler::run() {
|
|||||||
publishDefinition(m_replacers, "def_global_uptime-", uptimeTopic, "global", "uptime", "def_global-");
|
publishDefinition(m_replacers, "def_global_uptime-", uptimeTopic, "global", "uptime", "def_global-");
|
||||||
publishDefinition(m_replacers, "def_global_updatecheck-", m_globalTopic.get("", "updatecheck"), "global",
|
publishDefinition(m_replacers, "def_global_updatecheck-", m_globalTopic.get("", "updatecheck"), "global",
|
||||||
"updatecheck", "def_global-");
|
"updatecheck", "def_global-");
|
||||||
publishDefinition(m_replacers, "def_global_updatecheck_device-", m_globalTopic.get("", "updatecheck"), "global",
|
if (m_busHandler->getDevice()->supportsEnhancedInfos()) {
|
||||||
"updatecheck_device", "");
|
publishDefinition(m_replacers, "def_global_updatecheck_device-", m_globalTopic.get("", "updatecheck"),
|
||||||
|
"global", "updatecheck_device", "");
|
||||||
|
}
|
||||||
publishDefinition(m_replacers, "def_global_scan-", m_globalTopic.get("", "scan"), "global", "scan",
|
publishDefinition(m_replacers, "def_global_scan-", m_globalTopic.get("", "scan"), "global", "scan",
|
||||||
"def_global-");
|
"def_global-");
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -205,6 +205,11 @@ class Device {
|
|||||||
*/
|
*/
|
||||||
bool isEnhancedProto() const { return m_enhancedProto; }
|
bool isEnhancedProto() const { return m_enhancedProto; }
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @return whether the device supports the ebusd enhanced protocol and supports querying extra infos.
|
||||||
|
*/
|
||||||
|
bool supportsEnhancedInfos() const { return m_enhancedProto && m_extraFatures & 0x01; }
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Set the @a DeviceListener.
|
* Set the @a DeviceListener.
|
||||||
* @param listener the @a DeviceListener.
|
* @param listener the @a DeviceListener.
|
||||||
|
|||||||
Reference in New Issue
Block a user