]> nmode's Git Repositories - signal-cli/blobdiff - src/main/java/org/asamk/signal/dbus/DbusSignalImpl.java
implement DBus submitRateLimitChallenge method (#763)
[signal-cli] / src / main / java / org / asamk / signal / dbus / DbusSignalImpl.java
index ab9c89b2ee6afd3f087356d7bfcbece2a5b60bd5..698ce7c1d2c227d3aad1a8eb39d50d3e1ce70422 100644 (file)
@@ -1,7 +1,9 @@
 package org.asamk.signal.dbus;
 
 import org.asamk.Signal;
+import org.asamk.Signal.Error;
 import org.asamk.signal.BaseConfig;
+import org.asamk.signal.commands.exceptions.IOErrorException;
 import org.asamk.signal.manager.AttachmentInvalidException;
 import org.asamk.signal.manager.Manager;
 import org.asamk.signal.manager.NotMasterDeviceException;
@@ -81,6 +83,18 @@ public class DbusSignalImpl implements Signal {
         return m.getSelfNumber();
     }
 
+    @Override
+    public void submitRateLimitChallenge(String challenge, String captchaString) throws IOErrorException {
+        final var captcha = captchaString == null ? null : captchaString.replace("signalcaptcha://", "");
+
+        try {
+            m.submitRateLimitRecaptchaChallenge(challenge, captcha);
+        } catch (IOException e) {
+            throw new IOErrorException("Submit challenge error: " + e.getMessage(), e);
+        }
+
+    }
+
     @Override
     public void addDevice(String uri) {
         try {