Browse Source

Handle weird challenge success responses

Tulir Asokan 4 years ago
parent
commit
6c82a5a964
2 changed files with 5 additions and 5 deletions
  1. 4 4
      mauigpapi/types/challenge.py
  2. 1 1
      mautrix_instagram/web/provisioning_api.py

+ 4 - 4
mauigpapi/types/challenge.py

@@ -40,11 +40,11 @@ class ChallengeStateData(SerializableAttrs['ChallengeStateData']):
 @dataclass(kw_only=True)
 class ChallengeStateResponse(SerializableAttrs['ChallengeStateResponse']):
     # TODO enum?
-    step_name: str
-    step_data: ChallengeStateData
+    step_name: Optional[str] = None
+    step_data: Optional[ChallengeStateData] = None
     logged_in_user: Optional[LoginResponseUser] = None
-    user_id: int
-    nonce_code: str
+    user_id: Optional[int] = None
+    nonce_code: Optional[str] = None
     # TODO enum?
     action: Optional[str] = None
     status: str

+ 1 - 1
mautrix_instagram/web/provisioning_api.py

@@ -213,7 +213,7 @@ class ProvisioningAPI:
         return web.json_response(data={
             "status": "logged-in",
             "device_displayname": f"{manufacturer} {model}",
-            "user": resp_user.serialize(),
+            "user": resp_user.serialize() if resp_user else None,
         }, status=200, headers=self._acao_headers)
 
     async def logout(self, request: web.Request) -> web.Response: