diff --git a/src/client/ring_signal.cpp b/src/client/ring_signal.cpp
index e16243095807b3dba01d179b0747aaaa320b9cfc..a0fadb901ca3f3e512139e67ffa8a3b6a90e02e9 100644
--- a/src/client/ring_signal.cpp
+++ b/src/client/ring_signal.cpp
@@ -73,6 +73,8 @@ getSignalHandlers()
         exported_callback<DRing::ConfigurationSignal::GetHardwareAudioFormat>(),
         exported_callback<DRing::ConfigurationSignal::GetAppDataPath>(),
 #endif
+        /* Debug */
+        exported_callback<DRing::DebugSignal::MessageSend>(),
 
         /* Presence */
         exported_callback<DRing::PresenceSignal::NewServerSubscriptionRequest>(),
diff --git a/src/dring/configurationmanager_interface.h b/src/dring/configurationmanager_interface.h
index dff11f96833b3e08a2fda5f0d5c22ecd91011757..f3ab2656dd3e6bd0ab763038b16225afde6ffb45 100644
--- a/src/dring/configurationmanager_interface.h
+++ b/src/dring/configurationmanager_interface.h
@@ -268,4 +268,12 @@ struct ConfigurationSignal {
 #endif
 };
 
+// Can be used when a client's stdout is not available
+struct DebugSignal {
+    struct MessageSend {
+        constexpr static const char* name = "MessageSend";
+        using cb_type = void(const std::string&);
+    };
+};
+
 } // namespace DRing