1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182
|
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN"
"http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd">
<refentry id='dbussend1'>
<!-- dbus\-send manual page.
Copyright (C) 2003 Red Hat, Inc. -->
<refmeta>
<refentrytitle>dbus-send</refentrytitle>
<manvolnum>1</manvolnum>
<refmiscinfo class="manual">User Commands</refmiscinfo>
<refmiscinfo class="source">D-Bus</refmiscinfo>
<refmiscinfo class="version">@DBUS_VERSION@</refmiscinfo>
</refmeta>
<refnamediv>
<refname>dbus-send</refname>
<refpurpose>Send a message to a message bus</refpurpose>
</refnamediv>
<!-- body begins here -->
<refsynopsisdiv id='synopsis'>
<cmdsynopsis>
<command>dbus-send</command>
<group choice='opt'><arg choice='plain'>--system </arg><arg choice='plain'>--session </arg><arg choice='plain'>--bus=<replaceable>ADDRESS</replaceable></arg><arg choice='plain'>--peer=<replaceable>ADDRESS</replaceable></arg></group>
<arg choice='opt'>--sender=<replaceable>NAME</replaceable></arg>
<arg choice='opt'>--dest=<replaceable>NAME</replaceable></arg>
<arg choice='opt'><arg choice='plain'>--print-reply </arg><arg choice='opt'><replaceable>=literal</replaceable></arg></arg>
<arg choice='opt'>--reply-timeout=<replaceable>MSEC</replaceable></arg>
<arg choice='opt'>--type=<replaceable>TYPE</replaceable></arg>
<arg choice='plain'><replaceable>OBJECT_PATH</replaceable></arg>
<arg choice='plain'><replaceable>INTERFACE.MEMBER</replaceable></arg>
<arg choice='opt' rep='repeat'><replaceable>CONTENTS</replaceable></arg>
<sbr/>
</cmdsynopsis>
</refsynopsisdiv>
<refsect1 id='description'><title>DESCRIPTION</title>
<para>The <command>dbus-send</command> command is used to send a message to a D-Bus message
bus. See <ulink url='https://www.freedesktop.org/wiki/Software/dbus/'>https://www.freedesktop.org/wiki/Software/dbus/</ulink> for more
information about the big picture.</para>
<para>There are two well-known message buses: the systemwide message bus
(installed on many systems as the "messagebus" service) and the
per-user-login-session message bus (started each time a user logs in).
The <option>--system</option> and <option>--session</option> options direct
<command>dbus-send</command> to send messages to the system or session buses respectively.
If neither is specified, <command>dbus-send</command> sends to the session bus.</para>
<para>Nearly all uses of <command>dbus-send</command> must provide the <option>--dest</option> argument
which is the name of a connection on the bus to send the message to. If
<option>--dest</option> is omitted, no destination is set.</para>
<para>The object path and the name of the message to send must always be
specified. Following arguments, if any, are the message contents
(message arguments). These are given as type-specified values and
may include containers (arrays, dicts, and variants) as described below.</para>
<literallayout remap='.nf'>
<contents> ::= <item> | <container> [ <item> | <container>...]
<item> ::= <type>:<value>
<container> ::= <array> | <dict> | <variant>
<array> ::= array:<type>:<value>[,<value>...]
<dict> ::= dict:<type>:<type>:<key>,<value>[,<key>,<value>...]
<variant> ::= variant:<type>:<value>
<type> ::= string | int16 | uint16 | int32 | uint32 | int64 | uint64 | double | byte | boolean | objpath
</literallayout> <!-- .fi -->
<para>D-Bus supports more types than these, but <command>dbus-send</command> currently
does not. Also, <command>dbus-send</command> does not permit empty containers
or nested containers (e.g. arrays of variants).</para>
<para>Here is an example invocation:</para>
<literallayout remap='.nf'>
dbus-send --dest=org.freedesktop.ExampleName \
/org/freedesktop/sample/object/name \
org.freedesktop.ExampleInterface.ExampleMethod \
int32:47 string:'hello world' double:65.32 \
array:string:"1st item","next item","last item" \
dict:string:int32:"one",1,"two",2,"three",3 \
variant:int32:-8 \
objpath:/org/freedesktop/sample/object/name
</literallayout> <!-- .fi -->
<para>Note that the interface is separated from a method or signal
name by a dot, though in the actual protocol the interface
and the interface member are separate fields.</para>
</refsect1>
<refsect1 id='options'><title>OPTIONS</title>
<para>The following options are supported:</para>
<variablelist remap='TP'>
<varlistentry>
<term><option>--dest=</option><replaceable>NAME</replaceable></term>
<listitem>
<para>Specify the name of the connection to receive the message.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><option>--print-reply</option></term>
<listitem>
<para>Block for a reply to the message sent, and print any reply received
in a human-readable form. It also means the message type (<option>--type=</option>) is <emphasis remap='B'>method_call</emphasis>.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><option>--print-reply=literal</option></term>
<listitem>
<para>Block for a reply to the message sent, and print the body of the
reply. If the reply is an object path or a string, it is printed
literally, with no punctuation, escape characters etc.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><option>--reply-timeout=</option><replaceable>MSEC</replaceable></term>
<listitem>
<para>Wait for a reply for up to <emphasis remap='I'>MSEC</emphasis> milliseconds.
The default is implementation‐defined, typically 25 seconds.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><option>--system</option></term>
<listitem>
<para>Send to the system message bus.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><option>--session</option></term>
<listitem>
<para>Send to the session message bus. (This is the default.)</para>
</listitem>
</varlistentry>
<varlistentry>
<term><option>--bus=</option><replaceable>ADDRESS</replaceable></term>
<listitem>
<para>Register on a message bus at <replaceable>ADDRESS</replaceable>, typically a <command>dbus-daemon</command>.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><option>--peer=</option><replaceable>ADDRESS</replaceable></term>
<listitem>
<para>Send to a non-message-bus D-Bus server at <replaceable>ADDRESS</replaceable>. In this case <command>dbus-send</command> will not call the <literal>Hello</literal> method.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><option>--sender=</option><replaceable>NAME</replaceable></term>
<listitem>
<para>Request ownership of name <replaceable>NAME</replaceable> before sending the message. The name will be released when <command>dbus-send</command> exits.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><option>--type=</option><replaceable>TYPE</replaceable></term>
<listitem>
<para>Specify <emphasis remap='B'>method_call</emphasis> or <emphasis remap='B'>signal</emphasis> (defaults to "<emphasis remap='B'>signal</emphasis>").</para>
</listitem>
</varlistentry>
</variablelist>
</refsect1>
<refsect1 id='exit-status'><title>EXIT STATUS</title>
<para>Exit status 0 indicates success. A non-zero exit status indicates any failure, including invalid parameters, failure to connect to the --bus or --peer, failure to obtain the --sender name, a timeout while waiting for a reply to a method call, or receiving an error as the reply to a method call.
</para>
</refsect1>
<refsect1 id='author'><title>AUTHOR</title>
<para>dbus-send was written by Philip Blundell.</para>
</refsect1>
<refsect1 id='bugs'><title>BUGS</title>
<para>Please send bug reports to the D-Bus mailing list or bug tracker,
see <ulink url='https://www.freedesktop.org/wiki/Software/dbus/'>https://www.freedesktop.org/wiki/Software/dbus/</ulink></para>
</refsect1>
</refentry>
|