From a3dd82d6be22d5874136688f27f58dd9e67971cf Mon Sep 17 00:00:00 2001 From: Přemysl Eric Janouch
Date: Thu, 8 May 2025 13:04:22 +0200
Subject: WIP: Acknowledge received commands
Event the smallest protocol change has great consequences.
Relay events have been reordered to improve forward compatibility.
WIP:
- xM handling (send)
- xA handling (relaySend)
- xC: fix connection killing
---
xT/xT.cpp | 10 ++++++++++
1 file changed, 10 insertions(+)
(limited to 'xT/xT.cpp')
diff --git a/xT/xT.cpp b/xT/xT.cpp
index 72f5892..b708b95 100644
--- a/xT/xT.cpp
+++ b/xT/xT.cpp
@@ -179,6 +179,14 @@ beep()
// --- Networking --------------------------------------------------------------
+static void
+on_relay_generic_response(
+ std::wstring error, const Relay::ResponseData *response)
+{
+ if (!response)
+ show_error_message(QString::fromStdWString(error));
+}
+
static void
relay_send(Relay::CommandData *data, Callback callback = {})
{
@@ -190,6 +198,8 @@ relay_send(Relay::CommandData *data, Callback callback = {})
if (callback)
g.command_callbacks[m.command_seq] = std::move(callback);
+ else
+ g.command_callbacks[m.command_seq] = on_relay_generic_response;
auto len = qToBigEndian