+ signal-cli -u USERNAME send -m "This is a message" -g GROUP_ID
+
+* Linking other devices (Provisioning)
+
+ * Connect to another device
+
+ signal-cli link -n "optional device name"
+
+ This shows a "tsdevice:/…" link, if you want to connect to another signal-cli instance, you can just use this link. If you want to link to and Android device, create a QR code with the link (e.g. with [qrencode](https://fukuchi.org/works/qrencode/)) and scan that in the Signal Android app.
+
+ * Add another device
+
+ signal-cli -u USERNAME addDevice --uri "tsdevice:/…"
+
+ The "tsdevice:/…" link is the one shown by the new signal-cli instance or contained in the QR code shown in Signal-Desktop or similar apps.
+ Only the master device (that was registered directly, not linked) can add new devices.
+
+ * Manage linked devices
+
+ signal-cli -u USERNAME listDevices
+
+ signal-cli -u USERNAME removeDevice -d DEVICE_ID
+
+* Manage trusted keys
+
+ * View all known keys
+
+ signal-cli -u USERNAME listIdentities
+
+ * View known keys of one number
+
+ signal-cli -u USERNAME listIdentities -n NUMBER
+
+ * Trust new key, after having verified it
+
+ signal-cli -u USERNAME trust -v FINGER_PRINT NUMBER
+
+ * Trust new key, without having verified it. Only use this if you don't care about security
+
+ signal-cli -u USERNAME trust -a NUMBER
+
+* Set configuration directory
+
+ signal-cli --config=/home/other_user/.config/signal
+
+ This is particularily useful in the case, when you would like to run the signal-cli tool as a different user as the one, that was used to register the account. You should make sure, that the caller has full read/write access to the given directory.
+
+## DBus service
+
+signal-cli can run in daemon mode and provides an experimental dbus interface.
+For dbus support you need jni/unix-java.so installed on your system (Debian: libunixsocket-java ArchLinux: libmatthew-unix-java (AUR)).
+
+* Run in daemon mode (dbus session bus)
+
+ signal-cli -u USERNAME daemon
+
+* Send a message via dbus
+
+ signal-cli --dbus send -m "Message" [RECIPIENT [RECIPIENT ...]] [-a [ATTACHMENT [ATTACHMENT ...]]]
+
+### System bus
+
+To run on the system bus you need to take some additional steps.
+It’s advisable to run signal-cli as a separate unix user, the following steps assume you created a user named *signal-cli*.
+These steps, executed as root, should work on all distributions using systemd.
+
+Mind the fact that signal.service executes the signal-cli with "--config /var/lib/signal-cli".
+If you registered with user signal-cli, remove the config option.
+
+```bash
+cp data/org.asamk.Signal.conf /etc/dbus-1/system.d/
+cp data/org.asamk.Signal.service /usr/share/dbus-1/system-services/
+cp data/signal.service /etc/systemd/system/
+sed -i -e "s|%dir%|<INSERT_INSTALL_PATH>|" -e "s|%number%|<INSERT_YOUR_NUMBER>|" /etc/systemd/system/signal.service
+systemctl daemon-reload
+systemctl enable signal.service
+systemctl reload dbus.service
+```
+
+Make sure to use "--dbus-system" with the send command, the service will be autostarted by dbus the first time it is requested.