mirror of
https://github.com/binary-kitchen/doorlockd
synced 2024-12-22 18:34:25 +01:00
Added response to subscription
This commit is contained in:
parent
b07c0e8f54
commit
80d8610559
@ -105,20 +105,20 @@ static void session(tcp::socket &&sock)
|
|||||||
l(response.message, LogLevel::warning);
|
l(response.message, LogLevel::warning);
|
||||||
goto out;
|
goto out;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
response.code = Response::Code::Success;
|
||||||
|
response .message = "";
|
||||||
|
sock.write_some(boost::asio::buffer(response.toJson()),
|
||||||
|
error);
|
||||||
|
|
||||||
while (run) {
|
while (run) {
|
||||||
std::unique_lock<std::mutex> lock(mutex);
|
std::unique_lock<std::mutex> lock(mutex);
|
||||||
onClientMessage.wait(lock);
|
onClientMessage.wait(lock);
|
||||||
|
|
||||||
if (sock.is_open() == false) {
|
|
||||||
goto out;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (run) {
|
if (run) {
|
||||||
sock.write_some(boost::asio::buffer(logic->getClientMessage().toJson()));
|
sock.write_some(boost::asio::buffer(logic->getClientMessage().toJson()));
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
response.code = Response::Code::Success;
|
|
||||||
} else {
|
} else {
|
||||||
response.code = Response::Code::UnknownCommand;
|
response.code = Response::Code::UnknownCommand;
|
||||||
response.message = "Received unknown command " + command;
|
response.message = "Received unknown command " + command;
|
||||||
@ -126,14 +126,12 @@ static void session(tcp::socket &&sock)
|
|||||||
}
|
}
|
||||||
|
|
||||||
out:
|
out:
|
||||||
if (sock.is_open()) {
|
sock.write_some(boost::asio::buffer(response.toJson()),
|
||||||
sock.write_some(boost::asio::buffer(response.toJson()),
|
error);
|
||||||
error);
|
if (error == boost::asio::error::eof)
|
||||||
if (error == boost::asio::error::eof)
|
return;
|
||||||
return;
|
else if (error)
|
||||||
else if (error)
|
throw boost::system::system_error(error);
|
||||||
throw boost::system::system_error(error);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
catch (const std::exception &e) {
|
catch (const std::exception &e) {
|
||||||
std::string message = "Exception in session " + remoteAddress.to_string()
|
std::string message = "Exception in session " + remoteAddress.to_string()
|
||||||
|
Loading…
Reference in New Issue
Block a user