mirror of
https://github.com/jomjol/AI-on-the-edge-device.git
synced 2025-12-07 12:06:58 +03:00
.
This commit is contained in:
@@ -14,7 +14,10 @@
|
||||
#define __HIDE_PASSWORD
|
||||
|
||||
static const char *TAG = "class_flow_MQTT";
|
||||
#define LWT_TOPIC "connection"
|
||||
|
||||
#define LWT_TOPIC "connection"
|
||||
#define LWT_CONNECTED "connected"
|
||||
#define LWT_DISCONNECTED "connection lost"
|
||||
|
||||
extern const char* libfive_git_version(void);
|
||||
extern const char* libfive_git_revision(void);
|
||||
@@ -51,6 +54,7 @@ void sendHomeAssistantDiscoveryTopic(std::string maintopic, std::string group, s
|
||||
|
||||
topic = "homeassistant/sensor/" + maintopic + "-" + topicT + "/config";
|
||||
|
||||
/* See https://www.home-assistant.io/docs/mqtt/discovery/ */
|
||||
payload = "{" + nl +
|
||||
"\"~\": \"" + maintopic + "\"," + nl +
|
||||
"\"unique_id\": \"" + maintopic + "-" +topicT + "\"," + nl +
|
||||
@@ -66,17 +70,19 @@ void sendHomeAssistantDiscoveryTopic(std::string maintopic, std::string group, s
|
||||
}
|
||||
|
||||
payload +=
|
||||
"\"availability_topic\": \"~/connection\"," + nl +
|
||||
"\"payload_available\": \"connected\"," + nl +
|
||||
"\"payload_not_available\": \"connection lost\"," + nl;
|
||||
"\"avty_t\": \"~/" + std::string(LWT_TOPIC) + "\"," + nl +
|
||||
"\"pl_avail\": \"" + LWT_CONNECTED + "\"," + nl +
|
||||
"\"pl_not_avail\": \"" + LWT_DISCONNECTED + "\"," + nl;
|
||||
|
||||
payload +=
|
||||
"\"device\": {" + nl +
|
||||
"\"identifiers\": [\"" + maintopic + "\"]," + nl +
|
||||
"\"ids\": [\"" + maintopic + "\"]," + nl +
|
||||
"\"name\": \"" + maintopic + "\"," + nl +
|
||||
"\"model\": \"HomeAssistant Discovery for AI on the Edge Device\"," + nl +
|
||||
"\"manufacturer\": \"AI on the Edge Device\"," + nl +
|
||||
"\"sw_version\": \"" + version + "\"" + nl +
|
||||
"\"model\": \"Meter Digitizer\"," + nl +
|
||||
"\"mf\": \"AI on the Edge Device\"," + nl +
|
||||
"\"sw\": \"" + version + "\"" + nl +
|
||||
"\"hw\": \"ESP32-CAM\"" + nl +
|
||||
"\"cu\": \"https://" + *getIPAddress() + "\"" + nl +
|
||||
"}" + nl +
|
||||
"}" + nl;
|
||||
|
||||
@@ -103,9 +109,6 @@ void MQTThomeassistantDiscovery(std::string maintopic) {
|
||||
sendHomeAssistantDiscoveryTopic(maintopic, (*NUMBERS)[i]->name, "timestamp", "clock-time-eight-outline", "");
|
||||
sendHomeAssistantDiscoveryTopic(maintopic, (*NUMBERS)[i]->name, "json", "code-json", "");
|
||||
}
|
||||
|
||||
// Send LWT once more to indicate that we are online
|
||||
//MQTTPublish(LWT_TOPIC, "connected", true);
|
||||
}
|
||||
|
||||
void publishRuntimeData(std::string maintopic, int SetRetainFlag) {
|
||||
@@ -254,7 +257,7 @@ bool ClassFlowMQTT::ReadParameter(FILE* pfile, string& aktparamgraph)
|
||||
}
|
||||
}
|
||||
|
||||
MQTT_Configure(uri, clientname, user, password, maintopic, LWT_TOPIC, keepAlive, SetRetainFlag, (void *)&GotConnected);
|
||||
MQTT_Configure(uri, clientname, user, password, maintopic, LWT_TOPIC, LWT_CONNECTED, LWT_DISCONNECTED, keepAlive, SetRetainFlag, (void *)&GotConnected);
|
||||
|
||||
if (!MQTT_Init()) {
|
||||
if (!MQTT_Init()) { // Retry
|
||||
|
||||
Reference in New Issue
Block a user