making message print only once

This commit is contained in:
ishak jmilou.ishak
2024-12-18 11:56:43 +01:00
parent 50b6b83299
commit e5881f1b37

View File

@@ -36,9 +36,10 @@ int main()
std::thread sendMqtt([&]() { sendKobukiData(robot.parser.data); });
while(true){
parseMQTT(readMQTT());
std::this_thread::sleep_for(std::chrono::milliseconds(static_cast<int>(10)));
std::string message = readMQTT();
if (!message.empty()){
parseMQTT(message);
}
}
@@ -49,10 +50,13 @@ int main()
std::string readMQTT()
{
message = client.getLastMessage();
if (!message.empty())
static std::string lastMessage;
std::string message = client.getLastMessage();
if (!message.empty() && message != lastMessage)
{
std::cout << "MQTT Message: " << message << std::endl;
lastMessage = message;
}
// Add a small delay to avoid busy-waiting