Commit Graph

89 Commits

Author SHA1 Message Date
pajowu
ed098cc8ce Add option to align FindMyAccessories key generation
Sometimes the key generation diverges for example if the accessory has no power. FindMy solves this be re-aligning the key generation if a btle connection is established. FindMy.app stores there alignment records in the `KeyAlignmentRecord` directory.

This PR extends the FindMyAccessory class to read those records during `from_plist`-generation and re-sync the key generation by this
2025-04-15 15:23:36 +02:00
Mike Almeloo
0d58abafee Merge branch 'main' into migrate-uv 2025-04-08 13:41:37 +02:00
Mike Almeloo
515c3dfd53 Merge pull request #105 from malmeloo/multi-accessory-fetching
feat: Support fetching of multiple accessories at once
2025-04-08 13:39:56 +02:00
Mike A.
ed4ff77003 chore: make ruff / pre-commit happy 2025-02-27 22:34:30 +01:00
pre-commit-ci-lite[bot]
f40bd49ab7 [pre-commit.ci lite] apply automatic fixes 2025-02-27 21:06:51 +00:00
Mike A.
10aee19e93 feat: Support fetching of multiple accessories at once 2025-01-23 16:27:28 +01:00
Mike A.
c6dc4a0def fix: Auto-retry requests to remote anisette server 2025-01-23 14:22:51 +01:00
pre-commit-ci-lite[bot]
010ff02ebf [pre-commit.ci lite] apply automatic fixes 2025-01-10 07:38:46 +00:00
Cambridge Yang
cc758bfdbe add time margin when matching against nearby device 2025-01-10 07:36:40 +00:00
Mike A.
8fb2338914 fix: Manually filter fetched reports to adhere to date ranges
Fixes #83
2024-12-23 17:36:24 +01:00
Mike Almeloo
b17175567c Merge pull request #91 from malmeloo/fix/nearby-device-discovery
Add key generation margin when comparing against detected device
2024-12-23 16:36:31 +01:00
Cambridge Yang
f8694bae03 reset device_fut when timeout is reached 2024-12-06 10:35:28 -05:00
Mike A.
bf49c69c39 Add key generation margin when comparing against detected device 2024-12-05 22:54:40 +01:00
Mike A.
78d472ba0d Nitpicking 2024-11-20 21:15:37 +01:00
Philip Magyar
263cd5bd16 fix commit errors 2024-11-20 09:12:19 +01:00
pre-commit-ci-lite[bot]
a4b753287e [pre-commit.ci lite] apply automatic fixes 2024-11-20 08:06:31 +00:00
Philip Magyar
f45b9723f7 fix confidance/horizontal acc, add mac address 2024-11-20 09:04:05 +01:00
Mike A.
8a096230a2 keys: Add name getter/setter to accessories and keypairs 2024-09-18 16:38:59 +02:00
Mike A.
d25a7292a5 accessory: Add more properties to retrieve values 2024-09-18 00:01:06 +02:00
Mike A.
42aba78609 chore: Fix linter 2024-09-17 23:49:18 +02:00
Mimoja
8ef5774cda real_airtag: read identifier and model from plist for later resolving
Signed-off-by: Mimoja <git@mimoja.de>
2024-09-17 01:46:52 -06:00
Steffen Siebert
72039669a8 Implement the change as actually requested 2024-09-07 22:13:18 +02:00
Steffen Siebert
a6ba9ef25a Implement requested change 2024-09-07 22:09:15 +02:00
Steffen Siebert
501f875c63 Fix crash in http.py on Python 3.9 2024-09-07 15:07:29 +02:00
Mike A.
470fb667bd fix: Pass pre-commit checks 2024-09-03 18:19:02 +02:00
Mike A.
1c185195b0 chore: Reformat files 2024-09-03 17:46:12 +02:00
Mike A.
11cb2acf30 fix: Pass pre-commit check 2024-09-03 17:20:00 +02:00
Mike A.
cb9b9dd0cc fix: Union type alias in Python 3.9 2024-09-02 23:51:05 +02:00
Mike A.
99f2ee6f82 fix: Import ParamSpec from typing_extensions
Fixes python 3.9 errors
2024-09-02 23:36:47 +02:00
Mike A.
fa83b5760b fix: Import Concatenate from typing_extensions
Fixes python 3.9 errors
2024-09-02 23:35:13 +02:00
Steffen Siebert
261979b196 Password encryption now also supports s2k_fo protocol 2024-08-24 13:15:38 +02:00
Mike A.
62900f96de reports: Fix equality check between LocationReports 2024-08-04 17:41:51 +02:00
Mike A.
b7ba97f30c fix: Create new event loop for cleanup if current one is not running 2024-08-02 13:12:16 +02:00
Tero Saaristo
7ab95f4847 reports: refresh remote anisette headers
At time of commit, the headers seem to be good for bit over a minute.
2024-07-30 11:19:42 +03:00
Mike Almeloo
c15d8abec8 Merge pull request #51 from malmeloo/feat/fetch-encrypted-reports
reports: Support fetching encrypted reports
2024-07-21 21:25:14 +02:00
Mike A.
9fb517b32f reports: Add LocationReport.key property for decrypted reports 2024-07-21 21:22:30 +02:00
Mike A.
03f00ee4a0 reports: Support fetching non-decryptable reports 2024-07-21 21:16:21 +02:00
Mike A.
47ee3c6201 scanner: support checking for device - key correspondence 2024-07-16 22:29:23 +02:00
Mike A.
a5f1ccdd68 scanner: abstract status byte into OfflineFindingDevice 2024-07-15 17:20:23 +02:00
Mike A.
c12fffe98e scanner: fix pyright failing 2024-07-15 17:03:05 +02:00
Mike A.
88bd5194bb scanner: detect OF devices in Nearby state 2024-07-15 16:53:44 +02:00
Mike A.
af2ba3383c reports: Improve error handling 2024-07-11 21:09:16 +02:00
Mike A.
740bbf059c reports: attempt to reauthenticate on 401 2024-07-11 21:02:34 +02:00
Mike A.
b631d0b8bd reports: update decode error message 2024-07-11 20:09:10 +02:00
robertsmd
e44c72f83d fix report decryption for MacOS 14+ 2024-07-02 16:59:26 -04:00
Mike A
8d7cb827fa reports: skip undecodable payloads rather than raising 2024-04-26 20:33:11 +02:00
Mike A
fe534931cf accessory: Integrate .plist reading into library 2024-04-25 19:37:01 +02:00
Mike A
184c5b822b accessory: Do not return keys for invalid timestamps or indices 2024-04-25 19:27:43 +02:00
Mike A
83f7077c12 reports: Allow passing FindMyAccessory directly into BaseAppleAccount.fetch_reports 2024-04-24 15:42:51 +02:00
Mike A
52952bc189 keys: add FindMyAccessory.keys_between 2024-04-24 14:56:52 +02:00