mirror of
https://gitlab.gnome.org/GNOME/glib.git
synced 2025-09-06 07:58:44 +02:00
gdbus: Add a way to emit a signal
See https://bugs.freedesktop.org/show_bug.cgi?id=37890#c6 where it was discovered that dbus-send(1) actually doesn't work (either libdbus-1's flush implementation or dbus-send(1)'s usage of it is broken) so it's useful to have here. Signed-off-by: David Zeuthen <davidz@redhat.com>
This commit is contained in:
@@ -8,7 +8,7 @@
|
||||
|
||||
<refnamediv>
|
||||
<refname>gdbus</refname>
|
||||
<refpurpose>Introspect and call remote objects</refpurpose>
|
||||
<refpurpose>Tool for working with D-Bus objects</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv>
|
||||
@@ -54,6 +54,22 @@
|
||||
<arg choice="plain">ARG1</arg>
|
||||
<arg choice="plain" rep="repeat">ARG2</arg>
|
||||
</cmdsynopsis>
|
||||
<cmdsynopsis>
|
||||
<command>gdbus</command>
|
||||
<arg choice="plain">emit</arg>
|
||||
<group>
|
||||
<arg choice="plain">--system</arg>
|
||||
<arg choice="plain">--session</arg>
|
||||
<arg choice="plain">--address <replaceable>address</replaceable></arg>
|
||||
</group>
|
||||
<arg choice="plain">--object-path <replaceable>/path/to/object</replaceable></arg>
|
||||
<arg choice="plain">--signal <replaceable>org.project.InterfaceName.SignalName</replaceable></arg>
|
||||
<group>
|
||||
<arg choice="plain">--dest <replaceable>unique_bus_name</replaceable></arg>
|
||||
</group>
|
||||
<arg choice="plain">ARG1</arg>
|
||||
<arg choice="plain" rep="repeat">ARG2</arg>
|
||||
</cmdsynopsis>
|
||||
<cmdsynopsis>
|
||||
<command>gdbus</command>
|
||||
<arg choice="plain">help</arg>
|
||||
@@ -63,8 +79,7 @@
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
<para>
|
||||
<command>gdbus</command> offers a simple commandline utility for
|
||||
introspecting and calling methods on remote objects.
|
||||
<command>gdbus</command> is a simple tool for working with D-Bus objects.
|
||||
</para>
|
||||
<refsect2>
|
||||
<title>Commands</title>
|
||||
@@ -95,6 +110,14 @@
|
||||
values.
|
||||
</para></listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><option>emit</option></term>
|
||||
<listitem><para>
|
||||
Emits a signal. Each argument to include in the signal must be specified as a serialized
|
||||
<link linkend="GVariant"><type>GVariant</type></link> except that strings do
|
||||
not need explicit quotes.
|
||||
</para></listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><option>help</option></term>
|
||||
<listitem><para>
|
||||
@@ -238,6 +261,20 @@ The name org.freedesktop.NetworkManager is owned by :1.5
|
||||
/org/freedesktop/NetworkManager/AccessPoint/4141: org.freedesktop.NetworkManager.AccessPoint.PropertiesChanged ({'Strength': <byte 0x64>},)
|
||||
</programlisting>
|
||||
|
||||
<para>
|
||||
Emitting a signal:
|
||||
</para>
|
||||
<programlisting>
|
||||
$ gdbus emit --session --o /foo -s org.bar.Foo "['foo', 'bar', 'baz']"
|
||||
</programlisting>
|
||||
|
||||
<para>
|
||||
Emitting a signal to a specific process:
|
||||
</para>
|
||||
<programlisting>
|
||||
$ gdbus emit --session --o /foo -s org.bar.Foo someString --dest :1.3
|
||||
</programlisting>
|
||||
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
|
Reference in New Issue
Block a user