]> nmode's Git Repositories - signal-cli/blobdiff - man/signal-cli.1.adoc
implement Dbus setExpirationTimer (#735)
[signal-cli] / man / signal-cli.1.adoc
index af298b2708bd46cbf398624240c75ce839aaae3b..573ade7c432e01d4f7b98aa94284209c78dff09e 100644 (file)
@@ -58,6 +58,13 @@ Make request via system dbus.
 *-o* OUTPUT-MODE, *--output* OUTPUT-MODE::
 Specify if you want commands to output in either "plain-text" mode or in "json". Defaults to "plain-text"
 
+*--trust-new-identities* TRUST-MODE::
+Choose when to trust new identities:
+- `on-first-use` (default): Trust the first seen identity key from new users,
+  changed keys must be verified manually
+- `always`: Trust any new identity key without verification
+- `never`: Don't trust any unknown identity key, every key must be verified manually
+
 == Commands
 
 === register
@@ -103,6 +110,9 @@ CAUTION: Only delete your account if you won't use this number again!
 Update the account attributes on the signal server.
 Can fix problems with receiving messages.
 
+*-n* NAME, *--device-name* NAME::
+Set a new device name for the main or linked device
+
 === setPin
 
 Set a registration lock pin, to prevent others from registering this number.
@@ -135,14 +145,14 @@ You will need the full uri enclosed in quotation marks, such as "tsdevice:/?uuid
 
 === listDevices
 
-Show a list of connected devices.
+Show a list of linked devices.
 
 === removeDevice
 
-Remove a connected device.
+Remove a linked device.
 Only works, if this is the master device.
 
-*-d* DEVICEID, *--deviceId* DEVICEID::
+*-d* DEVICE_ID, *--device-id* DEVICE_ID::
 Specify the device you want to remove.
 Use listDevices to see the deviceIds.
 
@@ -162,7 +172,7 @@ Send a message to another user or group.
 RECIPIENT::
 Specify the recipients’ phone number.
 
-*-g* GROUP, *--group* GROUP::
+*-g* GROUP, *--group-id* GROUP::
 Specify the recipient group ID in base64 encoding.
 
 *-m* MESSAGE, *--message* MESSAGE::
@@ -174,7 +184,7 @@ Add one or more files as attachment.
 *--note-to-self*::
 Send the message to self without notification.
 
-*-e*, *--endsession*::
+*-e*, *--end-session*::
 Clear session state and send end session message.
 
 === sendReaction
@@ -184,7 +194,7 @@ Send reaction to a previously received or sent message.
 RECIPIENT::
 Specify the recipients’ phone number.
 
-*-g* GROUP, *--group* GROUP::
+*-g* GROUP, *--group-id* GROUP::
 Specify the recipient group ID in base64 encoding.
 
 *-e* EMOJI, *--emoji* EMOJI::
@@ -199,6 +209,33 @@ Specify the timestamp of the message to which to react.
 *-r*, *--remove*::
 Remove a reaction.
 
+=== sendReceipt
+
+Send a read or viewed receipt to a previously received message.
+
+RECIPIENT::
+Specify the sender’s phone number.
+
+*-t* TIMESTAMP, *--target-timestamp* TIMESTAMP::
+Specify the timestamp of the message to which to react.
+
+*--type* TYPE::
+Specify the receipt type, either `read` (the default) or `viewed`.
+
+=== sendTyping
+
+Send typing message to trigger a typing indicator for the recipient.
+Indicator will be shown for 15seconds unless a typing STOP message is sent first.
+
+RECIPIENT::
+Specify the recipients’ phone number.
+
+*-g* GROUP, *--group-id* GROUP::
+Specify the recipient group ID in base64 encoding.
+
+*-s*, *--stop*::
+Send a typing STOP message.
+
 === remoteDelete
 
 Remotely delete a previously sent message.
@@ -206,7 +243,7 @@ Remotely delete a previously sent message.
 RECIPIENT::
 Specify the recipients’ phone number.
 
-*-g* GROUP, *--group* GROUP::
+*-g* GROUP, *--group-id* GROUP::
 Specify the recipient group ID in base64 encoding.
 
 *-t* TIMESTAMP, *--target-timestamp* TIMESTAMP::
@@ -236,27 +273,62 @@ The invitation link URI (starts with `https://signal.group/#`)
 Create or update a group.
 If the user is a pending member, this command will accept the group invitation.
 
-*-g* GROUP, *--group* GROUP::
+*-g* GROUP, *--group-id* 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.
 
+*-d* DESCRIPTION, *--description* DESCRIPTION::
+Specify the new group description.
+
 *-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.
 
+*-r* [MEMBER [MEMBER ...]], *--remove-member* [MEMBER [MEMBER ...]]::
+Specify one or more members to remove from the group
+
+*--admin* [MEMBER [MEMBER ...]]::
+Specify one or more members to make a group admin
+
+*--remove-admin* [MEMBER [MEMBER ...]]::
+Specify one or more members to remove group admin privileges
+
+*--reset-link*::
+Reset group link and create new link password
+
+*--link* LINK_STATE::
+Set group link state: `enabled`, `enabled-with-approval`, `disabled`
+
+*--set-permission-add-member* PERMISSION::
+Set permission to add new group members: `every-member`, `only-admins`
+
+*--set-permission-edit-details* PERMISSION::
+Set permission to edit group details: `every-member`, `only-admins`
+
+*--set-permission-send-messages* PERMISSION::
+Set permission to send messages in group: `every-member`, `only-admins`
+Groups where only admins can send messages are also called announcement groups
+
+*-e* EXPIRATION_SECONDS, *--expiration* EXPIRATION_SECONDS::
+Set expiration time of messages (seconds).
+To disable expiration set expiration time to 0.
+
 === quitGroup
 
 Send a quit group message to all group members and remove self from member list.
 If the user is a pending member, this command will decline the group invitation.
 
-*-g* GROUP, *--group* GROUP::
+*-g* GROUP, *--group-id* GROUP::
 Specify the recipient group ID in base64 encoding.
 
+*--delete*::
+Delete local group data completely after quitting group.
+
 === listGroups
 
 Show a list of known groups and related information.
@@ -265,6 +337,10 @@ In json mode this is outputted as an list of objects and is always in detailed m
 *-d*, *--detailed*::
 Include the list of members of each group and the group invite link.
 
+=== listContacts
+
+Show a list of known contacts with names.
+
 === listIdentities
 
 List all known identity keys and their trust status, fingerprint and safety number.
@@ -286,21 +362,33 @@ Trust all known keys of this user, only use this for testing.
 
 *-v* VERIFIED_SAFETY_NUMBER, *--verified-safety-number* VERIFIED_SAFETY_NUMBER::
 Specify the safety number of the key, only use this option if you have verified the safety number.
+Can be either the plain text numbers shown in the app or the bytes from the QR-code,
+encoded as base64.
 
 === updateProfile
 
-Update the name and avatar image visible by message recipients for the current users.
+Update the profile information shown to message recipients.
 The profile is stored encrypted on the Signal servers.
-The decryption key is sent with every outgoing messages to contacts.
+The decryption key is sent with every outgoing messages to contacts and included
+in every group.
 
-*--name*::
-New name visible by message recipients.
+*--given-name* NAME, *--name* NAME::
+New (given) name.
 
-*--avatar*::
-Path to the new avatar visible by message recipients.
+*--family-name* FAMILY_NAME::
+New family name.
+
+*--about* ABOUT_TEXT::
+New profile status text.
+
+*--about-emoji* EMOJI::
+New profile status emoji.
+
+*--avatar* AVATAR_FILE::
+Path to the new avatar image file.
 
 *--remove-avatar*::
-Remove the avatar visible by message recipients.
+Remove the avatar
 
 === updateContact
 
@@ -314,7 +402,7 @@ Specify the contact phone number.
 *-n*, *--name*::
 Specify the new name for this contact.
 
-*-e*, *--expiration*::
+*-e*, *--expiration* EXPIRATION_SECONDS::
 Set expiration time of messages (seconds).
 To disable expiration set expiration time to 0.
 
@@ -326,7 +414,7 @@ This change is only local but can be synchronized to other devices by using `sen
 [CONTACT [CONTACT ...]]::
 Specify the phone numbers of contacts that should be blocked.
 
-*-g* [GROUP [GROUP ...]], *--group* [GROUP [GROUP ...]]::
+*-g* [GROUP [GROUP ...]], *--group-id* [GROUP [GROUP ...]]::
 Specify the group IDs that should be blocked in base64 encoding.
 
 === unblock
@@ -337,7 +425,7 @@ This change is only local but can be synchronized to other devices by using `sen
 [CONTACT [CONTACT ...]]::
 Specify the phone numbers of contacts that should be unblocked.
 
-*-g* [GROUP [GROUP ...]], *--group* [GROUP [GROUP ...]]::
+*-g* [GROUP [GROUP ...]], *--group-id* [GROUP [GROUP ...]]::
 Specify the group IDs that should be unblocked in base64 encoding.
 
 === sendContacts
@@ -345,9 +433,21 @@ Specify the group IDs that should be unblocked in base64 encoding.
 Send a synchronization message with the local contacts list to all linked devices.
 This command should only be used if this is the master device.
 
+=== sendSyncRequest
+
+Send a synchronization request message to the master device (for group, contacts, ...).
+The master device will respond with synchronization messages with full contact and
+group lists.
+
 === uploadStickerPack
 
-Upload a new sticker pack, consisting of a manifest file and the stickers in WebP format (maximum size for a sticker file is 100KiB).
+Upload a new sticker pack, consisting of a manifest file and the sticker images.
+Images must conform to the following specification: (see https://support.signal.org/hc/en-us/articles/360031836512-Stickers#sticker_reqs )
+- Static stickers in PNG or WebP format
+- Animated stickers in APNG format,
+- Maximum file size for a sticker file is 300KiB
+- Image resolution of 512 x 512 px
+
 The required manifest.json has the following format:
 
 [source,json]
@@ -356,12 +456,14 @@ The required manifest.json has the following format:
   "title": "<STICKER_PACK_TITLE>",
   "author": "<STICKER_PACK_AUTHOR>",
   "cover": { // Optional cover, by default the first sticker is used as cover
-    "file": "<name of webp file, mandatory>",
+    "file": "<name of image file, mandatory>",
+    "contentType": "<optional>",
     "emoji": "<optional>"
   },
   "stickers": [
     {
-      "file": "<name of webp file, mandatory>",
+      "file": "<name of image file, mandatory>",
+      "contentType": "<optional>",
       "emoji": "<optional>"
     }
     ...
@@ -403,6 +505,9 @@ 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"
 
+Accept a group invitation::
+signal-cli -u USERNAME updateGroup -g GROUP_ID
+
 Leave a group::
 signal-cli -u USERNAME quitGroup -g GROUP_ID
 
@@ -427,12 +532,6 @@ The password and cryptographic keys are created when registering and stored in t
 
 `$XDG_DATA_HOME/signal-cli/` (`$HOME/.local/share/signal-cli/`)
 
-For legacy users, the old config directories are used as a fallback:
-
-    $HOME/.config/signal/
-
-    $HOME/.config/textsecure/
-
 == Authors
 
 Maintained by AsamK <asamk@gmx.de>, who is assisted by other open source contributors.