From 0b200eb1f65d53fb3a5accee47ca282e0bf0829f Mon Sep 17 00:00:00 2001 From: mgrigajtis Date: Sat, 22 Feb 2025 22:52:12 -0500 Subject: [PATCH] Makes the MQTT client ID by using time to generate a random seed. --- iris.cpp | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/iris.cpp b/iris.cpp index 8c77c8c..a06e241 100644 --- a/iris.cpp +++ b/iris.cpp @@ -1,14 +1,20 @@ +#include #include #include #include #include #include +#include #include #include "headers/irismqttclient.h" // Define AES block size #define AES_BLOCK_SIZE 16 +std::string generate_unique_mqtt_client_id() { + return "Iris_" + std::to_string(std::chrono::system_clock::now().time_since_epoch().count()); +} + Json::Value load_json_from_file(const std::string &filename) { std::ifstream file(filename); Json::Value root; @@ -155,7 +161,8 @@ int main() { // Initialize MQTT mosqpp::lib_init(); - IrisMQTTClient client("Iris", mqtthost.c_str(), mqttport, mqtttimeout, &topics, conn); + std::string unique_client_id = generate_unique_mqtt_client_id(); + IrisMQTTClient client(unique_client_id.c_str(), mqtthost.c_str(), mqttport, mqtttimeout, &topics, conn); // Subscribe to each topic from the config file for (const auto &topic : topics) {