Commit graph

506 commits

Author SHA1 Message Date
AsamK
019efbe22c Show view once, remote delete and mentions info when receiving message 2020-11-21 11:50:40 +01:00
AsamK
b0502f9f82 Update dependencies 2020-11-21 11:49:06 +01:00
AsamK
3cbb8de656 Print addition message info 2020-10-22 18:30:26 +02:00
AsamK
a54fc92c05 Fix behavior for recipients with only UUIDs
Fixes #359
2020-10-11 11:15:34 +02:00
AsamK
ad509e8097 Refactor ProfileStore to handle name/uuid addresses correctly 2020-09-11 16:22:30 +02:00
AsamK
bb24a2aa31 Add workaround to fix crashes if native libzkgroup is not available
Fixes #350
Fixes #349
Fixes #344
2020-09-11 15:35:44 +02:00
AsamK
bb59d1c9c9 Ignore error if downloading profile avatar fails 2020-09-11 09:23:30 +02:00
AsamK
2ccff8f51d Support saving profiles for users without uuids
Fixes #347
2020-09-11 09:16:31 +02:00
AsamK
7334c78450 Prevent corrupting account file, when serialization fails 2020-09-11 09:14:41 +02:00
AsamK
20e253372b Remove deprecated calls 2020-09-10 14:40:52 +02:00
AsamK
b94c1e50e6 Cache profiles for 24h before retrieving them again 2020-09-10 14:20:16 +02:00
AsamK
0f3aa22519 Retrieve avatar profile image 2020-09-10 12:20:04 +02:00
AsamK
6c4d272309 Update libsignal-service 2020-09-10 11:07:30 +02:00
Lars K.W. Gohlke
0dfe4d189b cleanup: removes deprecation 2020-09-06 20:43:23 +02:00
Lars K.W. Gohlke
a747ddbae4 replaces strings to enable compile time checking 2020-09-06 20:43:23 +02:00
AsamK
2c5a70cc47 Improve stderr output 2020-08-14 20:49:54 +02:00
AsamK
2c3d222e84 Remove unnecessary stderr output
Fixes #334
2020-08-14 20:49:54 +02:00
AsamK
e6c1e03e21 Update dependencies
updateProfile can now only update both name and avatar at the same time,
as the upstream API has changed.
2020-08-09 13:00:29 +02:00
AsamK
f96770df3c Move decrypting recipient profile to separate method 2020-08-06 22:35:59 +02:00
AsamK
2f9873c35e Use isEmpty() 2020-07-02 21:34:52 +02:00
AsamK
4177deccf1 Ignore closed channel exception when closing the channel lock 2020-06-05 12:14:04 +02:00
AsamK
a83924238f Print more information for sync requests 2020-06-05 12:13:38 +02:00
AsamK
34caba2a7a Delay auto responses to messages until caught up with old messages
To prevent responding with old state, if the last receive call was a long
time ago.
2020-06-05 12:13:17 +02:00
AsamK
d14b8ac71f Detect when receive has caught up with old messages 2020-06-04 18:44:13 +02:00
AsamK
5829e3f117 Create service config only once 2020-06-04 17:59:05 +02:00
AsamK
22336460cc Update dependencies 2020-06-04 17:07:03 +02:00
AsamK
bfb12b0872 Refactor sendMessage and extract sendSelfMessage method 2020-05-22 12:54:22 +02:00
AsamK
1aba9f370e Extract sending of expiration timer update to separate method 2020-05-22 12:48:39 +02:00
AsamK
e048b1886d Store number/uuid in recipient store after receiving a message
Necessary to find the correct session if the sender send the next message
with only the uuid.

Fixes #309
2020-05-22 12:32:36 +02:00
Matúš Košút
b382a4260b
Contact config - message expiration time (#308)
Co-authored-by: Matus Kosut <matus.kosut@ntnu.no>
2020-05-16 22:55:53 +02:00
AsamK
1e0aa8929d Separate DbusSignal implementation from Manager 2020-05-15 23:11:18 +02:00
AsamK
d08508e6ef Move Exception classes to corresponding package 2020-05-15 20:03:51 +02:00
AsamK
0287272a3b Make fields final for DBusSignal classes 2020-05-14 23:44:24 +02:00
AsamK
d520023fc7 Refactor Manager and SignalAccount to implement Closeable
Should make sure that file lock and web socket connections are closed
reliably.
2020-05-13 23:33:40 +02:00
AsamK
87f65de0c5 Save account state after ending session even if sending the message has failed 2020-05-11 18:31:22 +02:00
AsamK
a02031aa80 Refactor Manager to always have a valid SignalAccount instance
Extract ProvisioningManager to link new devices
2020-05-11 18:07:37 +02:00
AsamK
8163a42d3a Split manager ServiceConfig from BaseConfig 2020-05-11 14:51:55 +02:00
AsamK
916d0e3cf1 Don't send group info request after receiving QUIT for unknown group
The sender has quit the group so he won't respond to the info request anyway
2020-05-07 12:41:49 +02:00
AsamK
26840a2f0f Update dependencies 2020-05-06 20:11:26 +02:00
AsamK
00777a469c Switch to hypfvieh dbus-java
Removes transitive dependency on libmatthew-unix-java

Fixes #285
2020-05-06 09:13:49 +02:00
AsamK
08749fcee0 When sending an end session message clear local session store also if sending message fails 2020-04-21 20:36:28 +02:00
AsamK
19b01ff2e9 Also catch IllegalArgumentException when sending messages during receive
It's necessary to keep receiving messages if a session state is corrupted.
e.g:
Exception in thread "main" java.lang.IllegalArgumentException: Empty key
        at java.base/javax.crypto.spec.SecretKeySpec.<init>(Unknown Source)
        at org.whispersystems.libsignal.ratchet.ChainKey.getBaseMaterial(ChainKey.java:57)
        at org.whispersystems.libsignal.ratchet.ChainKey.getMessageKeys(ChainKey.java:47)
        at org.whispersystems.libsignal.SessionCipher.encrypt(SessionCipher.java:97)
        at org.signal.libsignal.metadata.SealedSessionCipher.encrypt(SealedSessionCipher.java:70)
        at org.whispersystems.signalservice.api.crypto.SignalServiceCipher.encrypt(SignalServiceCipher.java:86)
        at org.whispersystems.signalservice.api.SignalServiceMessageSender.getEncryptedMessage(SignalServiceMessageSender.java:1456)
        at org.whispersystems.signalservice.api.SignalServiceMessageSender.getEncryptedMessages(SignalServiceMessageSender.java:1406)
        at org.whispersystems.signalservice.api.SignalServiceMessageSender.sendMessage(SignalServiceMessageSender.java:1276)
        at org.whispersystems.signalservice.api.SignalServiceMessageSender.sendReceipt(SignalServiceMessageSender.java:206)
        at org.asamk.signal.manager.Manager.sendReceipt(Manager.java:686)
        at org.asamk.signal.manager.Manager.handleMessage(Manager.java:1562)
        at org.asamk.signal.manager.Manager.receiveMessages(Manager.java:1496)
        at org.asamk.signal.commands.ReceiveCommand.handleCommand(ReceiveCommand.java:160)
        at org.asamk.signal.Main.handleCommands(Main.java:137)
        at org.asamk.signal.Main.main(Main.java:60)
2020-04-21 20:33:23 +02:00
AsamK
ae41d0c502 Output json when receiving messages from dbus and --json parameter is given
Fixes #138
2020-04-03 16:22:10 +02:00
AsamK
e04c45766d Rename fingerprint to safety number
Fixes #92
2020-04-03 14:27:18 +02:00
AsamK
f51f0cbbcf Return message timestamp after sucessfully sending a message
Fixes #104
2020-04-03 14:02:18 +02:00
AsamK
320e126eeb Add RecipientStore to resolve all identifiers to SignalServiceAddress
Should fix #290
2020-04-03 13:22:36 +02:00
narodnik
d49d536c32
Add a new sync dbus message which shows messages you sent. Necessary for having synchronized chats where you want your message to appear. Format is similar to receive message dbus except instead of sender, it has sender (source) and receiver (destination). (#289) 2020-04-03 13:16:57 +02:00
AsamK
e684a902bb Update dependencies 2020-03-30 22:00:41 +02:00
signal-stickers
b68575dd16
Use correct sticker pack key length of 32. (#288)
* Use correct sticker pack key length of 32.

* Update dependencies

Co-authored-by: AsamK <asamk@gmx.de>
2020-03-30 21:19:17 +02:00
AsamK
ff18b1bf99 Get untrusted identity from inner exception
Fixes #283
2020-03-29 14:45:11 +02:00