]> nmode's Git Repositories - signal-cli/blobdiff - lib/src/main/java/org/asamk/signal/manager/RegistrationManagerImpl.java
Better logging for registration failure
[signal-cli] / lib / src / main / java / org / asamk / signal / manager / RegistrationManagerImpl.java
index 2951f1a7d085aa97c7f4c2077d1494f365a62fb1..0e3c9af003178730fbe2d8f96340117f374fe431 100644 (file)
@@ -39,6 +39,7 @@ import org.whispersystems.signalservice.api.push.ACI;
 import org.whispersystems.signalservice.api.push.PNI;
 import org.whispersystems.signalservice.api.push.SignalServiceAddress;
 import org.whispersystems.signalservice.api.push.exceptions.AlreadyVerifiedException;
+import org.whispersystems.signalservice.api.push.exceptions.DeprecatedVersionException;
 import org.whispersystems.signalservice.internal.push.VerifyAccountResponse;
 import org.whispersystems.signalservice.internal.util.DynamicCredentialsProvider;
 
@@ -114,16 +115,21 @@ class RegistrationManagerImpl implements RegistrationManager {
             throw new IOException("Account is registered in another environment: " + account.getServiceEnvironment());
         }
 
-        if (account.getAci() != null && attemptReactivateAccount()) {
-            return;
-        }
+        try {
+            if (account.getAci() != null && attemptReactivateAccount()) {
+                return;
+            }
 
-        String sessionId = NumberVerificationUtils.handleVerificationSession(accountManager,
-                account.getSessionId(account.getNumber()),
-                id -> account.setSessionId(account.getNumber(), id),
-                voiceVerification,
-                captcha);
-        NumberVerificationUtils.requestVerificationCode(accountManager, sessionId, voiceVerification);
+            String sessionId = NumberVerificationUtils.handleVerificationSession(accountManager,
+                    account.getSessionId(account.getNumber()),
+                    id -> account.setSessionId(account.getNumber(), id),
+                    voiceVerification,
+                    captcha);
+            NumberVerificationUtils.requestVerificationCode(accountManager, sessionId, voiceVerification);
+        } catch (DeprecatedVersionException e) {
+            logger.debug("Signal-Server returned deprecated version exception", e);
+            throw e;
+        }
     }
 
     @Override