X-Git-Url: https://git.nmode.ca/signal-cli/blobdiff_plain/30e8e36635733b3e8c75a44e95785ba33cf55e61..c1775913b9c54c84b45154aa841a0ba475c7c9fd:/src/main/java/org/asamk/signal/dbus/DbusSignalImpl.java diff --git a/src/main/java/org/asamk/signal/dbus/DbusSignalImpl.java b/src/main/java/org/asamk/signal/dbus/DbusSignalImpl.java index 80132f09..fae0c0a5 100644 --- a/src/main/java/org/asamk/signal/dbus/DbusSignalImpl.java +++ b/src/main/java/org/asamk/signal/dbus/DbusSignalImpl.java @@ -4,6 +4,7 @@ import org.asamk.Signal; import org.asamk.signal.BaseConfig; import org.asamk.signal.manager.Manager; import org.asamk.signal.manager.api.AttachmentInvalidException; +import org.asamk.signal.manager.api.CaptchaRejectedException; import org.asamk.signal.manager.api.DeviceLinkUrl; import org.asamk.signal.manager.api.GroupId; import org.asamk.signal.manager.api.GroupInviteLinkUrl; @@ -159,8 +160,10 @@ public class DbusSignalImpl implements Signal, AutoCloseable { m.submitRateLimitRecaptchaChallenge(challenge, captcha); } catch (IOException e) { throw new Error.Failure("Submit challenge error: " + e.getMessage()); + } catch (CaptchaRejectedException e) { + throw new Error.Failure( + "Captcha rejected, it may be outdated, already used or solved from a different IP address."); } - } @Override @@ -1102,7 +1105,7 @@ public class DbusSignalImpl implements Signal, AutoCloseable { List.of(new DbusProperty<>("Number", () -> identity.recipient().number().orElse("")), new DbusProperty<>("Uuid", () -> identity.recipient().uuid().map(UUID::toString).orElse("")), - new DbusProperty<>("Fingerprint", identity::getFingerprint), + new DbusProperty<>("Fingerprint", identity::fingerprint), new DbusProperty<>("SafetyNumber", identity::safetyNumber), new DbusProperty<>("ScannableSafetyNumber", identity::scannableSafetyNumber), new DbusProperty<>("TrustLevel", identity::trustLevel), @@ -1177,6 +1180,8 @@ public class DbusSignalImpl implements Signal, AutoCloseable { try { m.removeLinkedDevices(device.id()); updateDevices(); + } catch (NotPrimaryDeviceException e) { + throw new Error.Failure("This command doesn't work on linked devices."); } catch (IOException e) { throw new Error.Failure(e.getMessage()); } @@ -1187,7 +1192,7 @@ public class DbusSignalImpl implements Signal, AutoCloseable { throw new Error.Failure("Only the name of this device can be changed"); } try { - m.updateAccountAttributes(name, null); + m.updateAccountAttributes(name, null, null, null); // update device list updateDevices(); } catch (IOException e) {