scanner: detect OF devices in Nearby state #50
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Breaking change to allow detection of 'nearby' devices that are not broadcasting full FindMy keys. These can be useful to detect whether a device is currently nearby.
Proposed API
OfflineFindingDevice
is now eitherNearbyOfflineFindingDevice
orSeparatedOfflineFindingDevice
.Both device types will have the following fields:
mac_address
status
discovered_at
additional_data
NearbyOfflineFindingDevice
s will have no additional unique fields.SeparatedOfflineFindingDevice
s will have the following unique fields:hint
HasPublicKey
fields (adv_key_bytes
,hashed_adv_key_bytes
, etc.)Comparing devices against keys
Both subclasses will get an
is_from
method (name TBD) which will allow comparisons against keys and AirTag devices. The method will probably accept anyHasPublicKey
subclass (KeyPair
,SeparatedOfflineFindingDevice
) as well as anyRollingKeyPairSource
(FindMyAccessory
). For this last one, the detection timestamp must be saved.Resolves #46