From 6d0f7edc6782d8eb669c2561dab773a882fedb0a Mon Sep 17 00:00:00 2001 From: Henry Winkel Date: Thu, 10 Aug 2023 10:45:08 +0200 Subject: [PATCH] ADD: adden a function to delete clients --- include/DirectCommunicationServer.hpp | 1 + src/DirectCommunicationServer.cpp | 23 +++++++++++++++++++---- 2 files changed, 20 insertions(+), 4 deletions(-) diff --git a/include/DirectCommunicationServer.hpp b/include/DirectCommunicationServer.hpp index 32a8284..cdea03d 100644 --- a/include/DirectCommunicationServer.hpp +++ b/include/DirectCommunicationServer.hpp @@ -46,6 +46,7 @@ namespace DirectCommunication std::vector connectedClients_; bool hasClient(std::uint32_t clientId); + void deleteClient(std::uint32_t clientId); std::function MessageHandle_ = nullptr; diff --git a/src/DirectCommunicationServer.cpp b/src/DirectCommunicationServer.cpp index 4971897..2b9f047 100644 --- a/src/DirectCommunicationServer.cpp +++ b/src/DirectCommunicationServer.cpp @@ -48,7 +48,14 @@ namespace DirectCommunication for (auto it = connectedClients_.begin(); it != connectedClients_.end(); ++it) { zmq::message_t zmqMsg(msg.begin(),msg.end()); zmqMsg.set_routing_id(*it); + try { socket_.send(zmqMsg,zmq::send_flags::dontwait); + + } catch (const std::exception& e) { + LOG_S(ERROR)<