signal-cli was primarily developed to be used on servers to notify admins of important events.
For this use-case, it has a dbus and a JSON-RPC interface, that can be used to send messages from other programs.
+Originally the Signal protocol only allowed sending messages to other phone numbers.
+Now with the introduction of phone number privacy, the phone number of a recipient is not always known.
+Only the recipient's ServiceId, ACI/PNI (a special UUID) is known.
+This special identifier can be used instead of the phone number in signal-cli's interface.
+
For some functionality the Signal protocol requires that all messages have been received from the server.
The `receive` command should be regularly executed.
In daemon mode messages are by default continuously received.
Shows if they are registered on the Signal Servers or not.
In json mode this is outputted as a list of objects.
-[NUMBER [NUMBER ...]]::
+[RECIPIENT [RECIPIENT ...]]::
One or more numbers to check.
[--username [USERNAME ...]]::
*--mention*::
Mention another group member (syntax: start:length:recipientNumber) In the apps the mention replaces part of the message text, which is specified by the start and length values.
+The units of start and length should be UTF-16 code units, NOT Unicode code points.
+For more information, see https://github.com/AsamK/signal-cli/wiki/FAQ#string-indexing-units
e.g.: `-m "Hi X!" --mention "3:1:+123456789"`
*--text-style*::
Style parts of the message text (syntax: start:length:STYLE).
+Like `--mention`, the units are UTF-16 code units.
Where STYLE is one of: BOLD, ITALIC, SPOILER, STRIKETHROUGH, MONOSPACE
e.g.: `-m "Something BIG!" --text-style "10:3:BOLD"` or for a mixed text style `-m "Something BIG!" --text-style "0:9:ITALIC" "10:3:BOLD"`
*--name*::
Find contacts with the given contact or profile name.
+*--detailed*::
+List the contacts with more details.
+If output=json, then this is always set
+
+*--internal*::
+Include internal information that's normally not user visible
+
=== listIdentities
List all known identity keys and their trust status, fingerprint and safety number.