diff options
Diffstat (limited to 'server.c')
-rw-r--r-- | server.c | 12 |
1 files changed, 12 insertions, 0 deletions
@@ -72,6 +72,9 @@ static const char * introspect_data = { " </signal>\n" " <signal name=\"Stopped\">\n" " </signal>\n" + " <signal name=\"SignalLevelChanged\">\n" + " <arg type=\"q\" name=\"signal\" />\n" + " </signal>\n" " <signal name=\"PiReceived\">\n" " <arg type=\"q\" name=\"pi\" />\n" " </signal>\n" @@ -514,6 +517,15 @@ void server_notify_stopped() dbus_message_unref(m); } +void server_notify_signal(uint16_t signal) +{ + DBusMessage *m = dbus_message_new_signal(BUS_PATH, BUS_INTERFACE, "SignalLevelChanged"); + g_return_if_fail(m != NULL); + dbus_message_append_args(m, DBUS_TYPE_UINT16, &signal, DBUS_TYPE_INVALID); + dbus_connection_send(bus, m, NULL); + dbus_message_unref(m); +} + void server_notify_pi(uint16_t pi) { DBusMessage *m = dbus_message_new_signal(BUS_PATH, BUS_INTERFACE, "PiChanged"); |