Skip to content

Commit

Permalink
1.6.01
Browse files Browse the repository at this point in the history
Update moving to Secure Remote Password for all logins.
Using SRP library == 1.0.21
Move to API > 3.4 to manage requirements processing as have not included library  (older versions will need to manually pip install srp==1.0.21)
Non significant code change.
Will need re-authenication with all 2FA codes once and then should keep going..
Any issues Delete plugin account (from Plugin Config) and try again.
Remove some logging, fix for exception messaging when should be passed if not fmip exists

1.5.10
Fix for 2fa trigger

1.5.9
Fix for myDevices in triggering being empty.

1.5.8
Check for empty data before using

1.5.6
Argh - more deletion of endpoints from apple
This is a quick 'monkey-fix' to get up and going after Apple deletes all the Friends endpoints.
Working in my brief testing - will check more when able/time.
Essentially this removes support for friend devices as end point is gone.
(as before big fix change devices to Family sharing type)

1.5.5
Add address city, suburb, country, house number, road - state to Family devices to construct own address string.
address = summary string, which is quite long

1.5.3
Use OSM to generate address data from lat/Long as no longer supplied by apple device
Update WazeRouteCaculator

1.5.2
Update Waze Router Calculator
Add labels to family devices

1.5.1

Apple has big server changes which this is a response to.

Remove support for 'Friends'.  Bugger.

What does this mean?
It means we can no longer access Friend data in any fashion.
We can access Family and Own Device data (every family device, and every personal device)

What does this mean?
Well I suspect most usage is within Families, so I would go into current iFriendDevice and edit it to iFriend Family device.
Save and restart Plugin - hopefully everything now continues

non-2FA accounts have largely been depreciated given back end issues.
  • Loading branch information
Ghawken committed Oct 24, 2024
1 parent 1cff7c0 commit 04f8312
Show file tree
Hide file tree
Showing 2 changed files with 7 additions and 7 deletions.
2 changes: 1 addition & 1 deletion iFindFriendsMini.indigoPlugin/Contents/Info.plist
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
<plist version="1.0">
<dict>
<key>PluginVersion</key>
<string>1.6.0</string>
<string>1.6.01</string>
<key>ServerApiVersion</key>
<string>3.4</string>
<key>CFBundleDisplayName</key>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -128,7 +128,7 @@ def request(self, method, url, **kwargs): # pylint: disable=arguments-differ
and fmip_url in url
):
# Handle re-authentication for Find My iPhone
LOGGER.error(f"\n\n\nRe-authenticating Find My iPhone service\n{fmip_url=}{url=}\n{response.ok=}\n{content_type=}\n{response.status_code=}")
LOGGER.debug(f"\n\n\nRe-authenticating Find My iPhone service\n{fmip_url=}{url=}\n{response.ok=}\n{content_type=}\n{response.status_code=}")
try:
# If 450, authentication requires a full sign in to the account
service = None if response.status_code == 450 else "find"
Expand All @@ -139,7 +139,7 @@ def request(self, method, url, **kwargs): # pylint: disable=arguments-differ
kwargs["retried"] = True
return self.request(method, url, **kwargs)
except Exception:
LOGGER.exception("Was Passed.")
LOGGER.debug("Exception Was Passed.", exc_info=True)

LOGGER.debug(f"Headers: {response.headers}, Reason {response.reason}, Response {response.text}")

Expand Down Expand Up @@ -806,7 +806,7 @@ def _bypass_Repair2FA(self, response):

def _authenticate_with_token(self):
"""Authenticate using session token."""
LOGGER.error(f"{self.session_data}")
#LOGGER.debug(f"{self.session_data}")
data = {
"accountCountryCode": self.session_data.get("account_country"),
"dsWebAuthToken": self.session_data.get("session_token"),
Expand Down Expand Up @@ -958,11 +958,11 @@ def validate_2fa_code(self, code):
except PyiCloudAPIResponseException as error:
if error.code == -21669:
# Wrong verification code
LOGGER.error("Code verification failed.")
LOGGER.info("*** Code verification failed. ***")
return False
raise

LOGGER.debug("Code verification successful.")
LOGGER.info("Code verification successful.")

self.trust_session()
return not self.requires_2sa
Expand All @@ -989,7 +989,7 @@ def trust_session(self):
self._authenticate_with_token()
return True
except PyiCloudAPIResponseException:
LOGGER.error("Session trust failed. Appears to be incorrect Code.")
LOGGER.info("Session trust failed. Appears to be incorrect Code.")
return False

def _get_webservice_url(self, ws_key):
Expand Down

0 comments on commit 04f8312

Please sign in to comment.