From: AsamK Date: Fri, 18 Nov 2016 20:49:41 +0000 (+0100) Subject: Add man page X-Git-Tag: v0.5.1~1 X-Git-Url: https://git.nmode.ca/signal-cli/commitdiff_plain/6aefa38ee871f76355a8e0ff18d4e3309142db1c Add man page --- diff --git a/man/Makefile b/man/Makefile new file mode 100644 index 00000000..47ccd35f --- /dev/null +++ b/man/Makefile @@ -0,0 +1,10 @@ +A2X = a2x + +MANPAGESRC = signal-cli.1 + +.PHONY: all +all: $(MANPAGESRC) + +%: %.txt + @echo "Generating manpage for $@" + $(A2X) --no-xmllint --doctype manpage --format manpage "$^" diff --git a/man/signal-cli.1.txt b/man/signal-cli.1.txt new file mode 100644 index 00000000..52d56f68 --- /dev/null +++ b/man/signal-cli.1.txt @@ -0,0 +1,234 @@ +///// +vim:set ts=4 sw=4 tw=82 noet: +///// +:quotes.~: + +signal-cli (1) +============ + +Name +---- +signal-cli - A commandline and dbus interface for the Signal messenger + +Synopsis +-------- +*signal-cli* [--config CONFIG] [-h | -v | -u USERNAME | --dbus | --dbus-system] command [command-options] + +Description +----------- + +signal-cli is a commandline interface for libsignal-service-java. It supports +registering, verifying, sending and receiving messages. For registering you need a +phone number where you can receive SMS or incoming calls. +signal-cli was primarily developed to be used on servers to notify admins of +important events. For this use-case, it has a dbus interface, that can be used to +send messages from any programming language that has dbus bindings. + +Options +------- + +*-h*, *--help*:: + Show help message and quit. + +*-v*, *--version*:: + Print the version and quit. + +*--config* CONFIG:: + Set the path, where to store the config. + (Default: $HOME/.config/signal) + +*-u* USERNAME, *--username* USERNAME:: + Specify your phone number, that will be your identifier. + +*--dbus*:: + Make request via user dbus. + +*--dbus-system*:: + Make request via system dbus. + +Commands +-------- + +register +~~~~~~~~ +Register a phone number with SMS or voice verification. Use the verify command to +complete the verification. + +*-v*, *--voice*:: + The verification should be done over voice, not SMS. + +verify +~~~~~~ +Verify the number using the code received via SMS or voice. + +VERIFICATIONCODE:: + The verification code. + +link +~~~~ +Link to an existing device, instead of registering a new number. This shows a +"tsdevice:/…" URI. If you want to connect to another signal-cli instance, you can +just use this URI. If you want to link to an Android/iOS device, create a QR code +with the URI (e.g. with qrencode) and scan that in the Signal app. + +*-n* NAME, *--name* NAME:: + Optionally specify a name to describe this new device. By default "cli" will + be used. + +addDevice +~~~~~~~~~ +Link another device to this device. Only works, if this is the master device. + +*--uri* URI:: + Specify the uri contained in the QR code shown by the new device. + +listDevices +~~~~~~~~~~~ +Show a list of connected devices. + +removeDevice +~~~~~~~~~~~~ +Remove a connected device. Only works, if this is the master device. + +*-d* DEVICEID, *--deviceId* DEVICEID:: + Specify the device you want to remove. Use listDevices to see the deviceIds. + +send +~~~~ +Send a message to another user or group. + +RECIPIENT:: + Specify the recipients’ phone number. + +*-g* GROUP, *--group* GROUP:: + Specify the recipient group ID in base64 encoding. + +*-m* MESSAGE, *--message* MESSAGE:: + Specify the message, if missing, standard input is used. + +*-a* [ATTACHMENT [ATTACHMENT ...]], *--attachment* [ATTACHMENT [ATTACHMENT ...]]:: + Add one or more files as attachment. + +*-e*, *--endsession*:: + Clear session state and send end session message. + +receive +~~~~~~~ +Query the server for new messages. New messages are printed on standardoutput and +attachments are downloaded to the config directory. + +*-t* TIMEOUT, *--timeout* TIMEOUT:: + Number of seconds to wait for new messages (negative values disable timeout). + Default is 5 seconds. + +updateGroup +~~~~~~~~~~~ +Create or update a group. + +*-g* GROUP, *--group* GROUP:: + Specify the recipient group ID in base64 encoding. If not specified, a new + group with a new random ID is generated. + +*-n* NAME, *--name* NAME:: + Specify the new group name. + +*-a* AVATAR, *--avatar* AVATAR:: + Specify a new group avatar image file. + +*-m* [MEMBER [MEMBER ...]], *--member* [MEMBER [MEMBER ...]]:: + Specify one or more members to add to the group. + +quitGroup +~~~~~~~~~ +Send a quit group message to all group members and remove self from member list. + +*-g* GROUP, *--group* GROUP:: + Specify the recipient group ID in base64 encoding. + + +listIdentities +~~~~~~~~~~~~~~ +List all known identity keys and their trust status, fingerprint and safety +number. + +*-n* NUMBER, *--number* NUMBER:: + Only show identity keys for the given phone number. + +trust +~~~~~ +Set the trust level of a given number. The first time a key for a number is seen, +it is trusted by default (TOFU). If the key changes, the new key must be trusted +manually. + +number:: + Specify the phone number, for which to set the trust. + +*-a*, *--trust-all-known-keys*:: + Trust all known keys of this user, only use this for testing. + +*-v* VERIFIED_FINGERPRINT, *--verified-fingerprint* VERIFIED_FINGERPRINT:: + Specify the safety number or fingerprint of the key, only use this option if you have verified + the fingerprint. + + +daemon +~~~~~~ +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)). + +*--system*:: + Use DBus system bus instead of user bus. + + +Examples +-------- + +Register a number (with SMS verification):: + signal-cli -u USERNAME register + +Verify the number using the code received via SMS or voice:: + signal-cli -u USERNAME verify CODE + +Send a message to one or more recipients:: + signal-cli -u USERNAME send -m "This is a message" [RECIPIENT [RECIPIENT ...]] [-a [ATTACHMENT [ATTACHMENT ...]]] + +Pipe the message content from another process:: + uname -a | signal-cli -u USERNAME send [RECIPIENT [RECIPIENT ...]] + +Create a group:: + signal-cli -u USERNAME updateGroup -n "Group name" -m [MEMBER [MEMBER ...]] + +Add member to a group:: + signal-cli -u USERNAME updateGroup -g GROUP_ID -m "NEW_MEMBER" + +Leave a group:: + signal-cli -u USERNAME quitGroup -g GROUP_ID + +Send a message to a group:: + signal-cli -u USERNAME send -m "This is a message" -g GROUP_ID + +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 + +Files +----- +The password and cryptographic keys are created when registering and stored in the +current users home directory, the directory can be changed with *--config*: + + $HOME/.config/signal/ + +For legacy users, the old config directory is used as a fallback: + + $HOME/.config/textsecure/ + + +Authors +------- + +Maintained by AsamK , who is assisted by other open +source contributors. For more information about signal-cli development, see +.