11 ms·
Query Apple's FindMy network with Python
- Galanwe 2y agoFore those not familiar with the Apple ecosystem, what does "Find My" do? locate apple devices ?
- deleted 2y ago[deleted]
- simonw 2y agoA bunch of stuff: - Find your Apple Watch, AirPods, laptop etc - Find family member devices if they've granted you access to do that - Find AirTags - Show you the location of friends who have granted you access
- kabirgoel 2y agoCorrect. You can also share your location with friends. A lot of friend groups (at least my age) use Find My as a kind of social network.
- gomoboo 2y agoHow does that work woth your friends? Always on access or just occasionally?
- toomuchtodo 2y agoAlways on. You can see where your friends are at both in Find My and under their contact photo in your iMessages chat.
- johnisgood 2y agoPersonally I do not find the idea comforting that someone (anyone) may know where I am at all times. I would not even trust Apple either.
- rvnx 2y agoIt's a virtual leash for couples.
- toomuchtodo 2y agoBlame the emotionally dysfunctional, not the tool. It’s only a problem if it changes how you would live your life or pressured or coerced (in which case, say no).
- proteal 2y agoThis is actually one of the big differences between generations. It’s not just the norm for young people to share locations, but rather almost expected, with real social consequences for not. Yes it’s probably a little weird to have someone’s precise location 100% of the time, but since you’re sharing it with me there’s a good deal of trust implied (though this is not always the case as it has become more normalized). However, if we stop sharing locations, that usually implies a divorce of the relationship. People will shut you out of their life if you stop sharing your location with them, no matter the reason. From that lens, the choice is simple. You’ve gotta share your location, even if it’s a bit icky from a privacy perspective or you risk losing an entire cohort of friends. I will admit, there is a strange level of intimacy for having done it. In a world increasingly dominated by the pixels on this 4x8 screen, it is a nice reminder that the text bubbles on my phone actually come from real people that I can show you on a map. (Obviously you can find friends who don’t care for it and you can live a normal life and be just fine. I’m privacy conscious but I still share my location with a handful of friends for the above reasons.)
- aniviacat 2y ago> People will shut you out of their life if you stop sharing your location with them Is the implication of this that such people just don't interact with Android users? That seems like a significant self-imposed limitation. Or are Android phones just extremely unpopular in your area?
- 2y ago
- deleted 2y ago[deleted]
- haliskerbas 2y agoAlways on, works as a great way to check in on close friends or have them check in on you (like someone going on a first date)
- GeekyBear 2y ago> Always on access or just occasionally? You have quite a few granular choices. > You can share your current location once, temporarily share your location while you're on the way to an expected destination, or share your ongoing Live Location... for an hour, until the end of the day, or indefinitely. In Messages, you can use Check In to share your location... Your location is shared only if there's an unexpected delay during your trip or activity and you're unresponsive. https://support.apple.com/en-us/105104 https://support.apple.com/en-us/105104
- Nextgrid 2y agoDoes it have any battery impact? I've never tried these always-on location tracking things partly due to (unfounded?) concerns about battery use.
- msh 2y agoits not always on in that way. It will report your location when requested, and optionally just before shutting down.
- latexr 2y agohttps://en.wikipedia.org/wiki/Find_My https://en.wikipedia.org/wiki/Find_My > Find My is an asset tracking service made by Apple Inc. that enables users to track the location of iOS, iPadOS, macOS, watchOS, visionOS, tvOS devices, AirPods, AirTags, and a number of supported third-party accessories through a connected iCloud account. Users can also show their primary device's geographic location to others, and can view the location of others who choose to share their location. Find My was released alongside iOS 13 on September 19, 2019, merging the functions of the former Find My iPhone (known on Mac computers as Find My Mac) and Find My Friends into a single app. On watchOS, Find My is separated into three different applications: Find Devices, Find People and Find Items.
- cube2222 2y agoImportantly, it works in a peer-to-peer kind of way. Apple devices act as kind of beacons and nearby iPhones can notify Apple servers of any nearby devices they detect (in a way not decryptable by Apple, only by the owner of the devices). So AirTags, MacBooks, and turned-off iPhones are findable via passing-by turned-on iPhones.
- lopkeny12ko 2y agoIs it not a glaring privacy and security hole that turned-off devices can still be located? Maybe it's just me, but if I own an internet-connected device and I turn it off, I expect it to be off. That an iPhone's definition of "off" means "you can't use it but other random people's iPhones in the vicinity can still connect to and ping it" rubs me the wrong way.
- jen20 2y agoIt is not. If you don’t want your device to participate, you ca elect not to enable Find My during setup. The vast majority of people would rather a their couldn’t just turn off a stolen phone and render it unlocatable.
- rainsford 2y agoAlso the location is only accessible to you, the owner of the device. Not Apple or "random other people's iPhones". The engineering and thought that went into the whole thing to be useful but also privacy protecting is actually pretty impressive, and exactly the kind of thing we should be encouraging companies to do if we care about privacy. Especially since as you point out, you can still easily turn it off at any point if you want.
- anderiv 2y agoThe off-but-still-on functionality can be turned off, and the OS does disclose that by default the device is still findable on the power off screen.
- FaggotBait 2y ago
- vasco 2y agoWith the Apple and the Google ecosystems!
- incanus77 2y agoI don’t use the person tracking very often except on group vacations, but I track a vehicle with an AirTag after a car theft for a little peace of mind (along with other preventative measures). Every now and then it’s handy for my own devices, too, including alerting me when I’ve accidentally left one behind at a non-routine location.
- TekMol 2y ago[flagged]
- deleted 2y ago[deleted]
- vachina 2y agohttps://webwormhole.io/ https://webwormhole.io/
- TekMol 2y agoThat looks like an interesting approach. Does it really need to be a giant application made from "Go, JavaScript, TypeScript and Python"? What does all that code do? Wouldn't a single PHP file that acts as the connection between the two devices be enough?
- vachina 2y agoWebwormhole needs those to setup a direct p2p connection. Php you need intermediaries.
- briandear 2y agoDropbox.
- TekMol 2y agoIs that a "Sign up and install our binaries on your devices" service? I prefer to not install additional software from 3rd parties on my devices.
- sdfasdf234dfsg 2y agoYou'll have to ask the apple overlords to make and install by default the app you want then.
- 2y ago
- delijati 2y agoCan i add xiaomi "airtag" with it?
- malmeloo 2y agoI'm not familiar with these tags, do they implement the FindMy protocol? If it's a proper 3rd party AirTag ("Works with FindMy") then it should be supported, see the AirTag example in the repository for more info.
- deleted 2y ago[deleted]
- oulipo 2y agoI'm also interested by the Haystack project to have an ESP32-based object identify as an AirTag and be able to follow it Does anyone knows if their approach is "sustainable", or if Apple can easily "block out" such hacks from their network?
- numberless 2y agoIf it functions exactly as an AirTag does then it would be hard as they would not want to block all previously sold AirTags
- crazygringo 2y agoIs there something it can do to whitelist legitimate AirTag serial numbers?
- bhy 2y agoI don't think AirTag work that way. AirTag protocol is specifically designed so Apple or other parties will not be able to track users by serial numbers.
- gjsman-1000 2y agoWhere there's a will, there's a way. Apple is very clear law enforcement can approach them with any AirTag and they will immediately be able to tie it to a user.
- kolinko 2y agoOne doesn’t exclude the other - a physical airtag may have an ID available, but not broadcast it anywhere. Also, “when there’s a will…” doesn’t really apply to cruptography
- bolognafairy 2y agoThat is not the same thing.
- mikeweiss 2y agoAs someone who lives in an Android family but would still like to use air tags since it's the biggest network in the U.S. I'd love a way to add and use air tags without needing to have an iPhone!
- Schiendelman 2y agoThe whole point of services like this is to get you into the ecosystem. This is a value add for iPhone users.
- mikeweiss 2y agoYes.. obviously.. I meant 3rd party like the original link posted for querying the network.
- zikduruqe 2y agoYou used to be able to query this data locally from your MacBook, but Apple decided to encrypt it. It was fun to put an AirTag on your cat, then use GPS Visualizer to plot your cat's activities overnight. https://github.com/icepick3000/AirtagAlex https://github.com/icepick3000/AirtagAlex https://www.gpsvisualizer.com https://www.gpsvisualizer.com
- qup 2y agoWhile we're here, I have an ask (of anyone). I want the same exact thing you said, except for an outdoor dog on a large property. I would like a tag that just records its own GPS coordinates locally on-device, every so often, and then when my dog comes home, I can check where she's been. Does this exist?
- Raed667 2y agoAny cheap Garmin watch should do the trick
- 1986 2y agoAnd if you want to spend more, Garmin even makes a range of dog tracking equipment: https://www.garmin.com/en-US/p/965617 https://www.garmin.com/en-US/p/965617
- cdurth 2y agoYou could definitely use meshtastic devices to do this
- zikduruqe 2y agoYou know honestly? I have thought of using a XOSS cycling computer (https://www.amazon.com/XOSS-Speedometer-Accessories-Waterproof-Protective/dp/B09Y8VJ58J https://www.amazon.com/XOSS-Speedometer-Accessories-Waterpro...). I have used them before on various bikes and they work just fine. Battery life is about 25 hours, it is weather resistant, and then you can sync them after you record an activity. And at less than $30, if it gets lost, it isn't the worst thing in the world.
- Havoc 2y agoWhat are the chance that this keeps working long term? Sounds awesome & makes airtags more appealing, but if apple is just going to shut it down next week then less so
- stonegray 2y agoChanging the underlying find my network to break this would be challenging if not impossible while keeping the privacy protections in place. Apple can’t identify devices sending data to find my, and doesn’t log requests. Short of changes that would break compatibility with older devices it should be relatively stable. OpenHaystack has been doing this for a few years now and Apple has made no efforts to restrict it.
- gjsman-1000 2y ago> Apple can’t identify devices sending data to find my, and doesn’t log requests. So what you're saying is that a decent firewall could still inspect the traffic, or the patterns thereof. Also, this doesn't make any sense, as if Apple doesn't know which AirTag belongs to who, Find My would be very useless; and law enforcement would be furious.
- stonegray 2y agoAirtags are associated with your apple ID for safety, but when you make a request for the location from Find My it doesn’t include any information about which airtag you’re asking about; just a CSPRNG-incremented public key that changes every 15 minutes. The location data itself is not available to Apple. Here is Apple’s docs on how they prevent themselves from inspecting traffic on Fmi: https://support.apple.com/guide/security/find-my-security-sec6cbc80fd0/web https://support.apple.com/guide/security/find-my-security-se...
- wutwutwat 2y agoSo Apple has no way to see anything even when developing the platform itself? They must have a way to decrypt payloads or otherwise get into the system they built and control. The fact that they let law enforcement know when someone is stalking someone with an AirTag shows that the data is available to them. It’s silly to think otherwise, paper or not.
- roger_ 2y agoHope someone integrates this with Home Assistant soon!
- malmeloo 2y agohttps://github.com/malmeloo/hass-FindMy https://github.com/malmeloo/hass-FindMy It still has some rough edges, but I've been running it for a few months now for myself and some family members without any major issues :-)
- pixelmonkey 2y agoThis looks great. If this Python implementation of the FindMy API actually works, it would be a major technology quality-of-life improvement for me. I hope Apple lets it stay alive. Everyone who shares location with me does so over Find My, and my family insists on using AirTags. As a 100% desktop Linux and mobile Android user, it is one of the few things that I always need to remote in to my Mac Mini to access because there are no x-platform FindMy apps and the FindMy iCloud web app does not have feature parity to the macOS and iOS apps. One of a long list of offenses where Apple refuses to make things easy for x-platform friend groups and families. Very annoying.
- BeefySwain 2y agoWhat does "x-platform" mean in this context?
- deleted 2y ago[deleted]
- sshh12 2y agoCross platform (something that works well outside of Apple apps/devices)
- t00 2y agoCross platform -> † platform -> t platform might be a better choice
- deleted 2y ago[deleted]
- pixelmonkey 2y agoCross-platform. There are 3 major desktop operating systems (Windows, Linux, and Mac) and 2 major mobile operating systems (iPhone and Android). Every single OS has a huge marketshare worldwide (including Linux, if you count servers). A truly x-platform app is one that works well on all 5 of these platforms, e.g. Signal. A moderately x-platform app is one that works well on the two mobile operating systems and on web as an alternative to desktop, e.g. WhatsApp. A single-platform app, like Apple FindMy, only works properly on e.g. Mac + iPhone. Apple tends to be the only major industry player that produces these sorts of apps, e.g. iMessage, FaceTime, Final Cut Pro, Keynote. Although with Keynote you can often get by with the iCloud web version, which has a useful 80%-or-so of the desktop app's features. Even apps like Meet, Zoom, and Teams -- run by rival companies -- are more x-platform than major Apple apps.
- owenthejumper 2y agoUsing this as soon as Play sound is integrated!
- coolius 2y agosame, i would use it to build a thing that makes my phone ring at the push of a button.
- pravosleva 2y ago[flagged]
- pravosleva 2y ago[flagged]
- leobg 2y agoCan I use this, if I have an iPhone, to trigger actions on a server based on my location? For example, “When I come home, fetch the latest electricity prices and notify me if I should plug in my Tesla”. I tried that using Shortcuts, but they won’t run location based without confirmation. (There are some workarounds, but they, too, don’t work reliably in my experience.)
- cruffle_duffle 2y agoStupid question but couldn’t you just always plug it in and then automate the bit where it actually energizes the outlet?
- malmeloo 2y agoTechnically, yes! I have an experimental Home Assistant integration here, if you're into that stuff: https://github.com/malmeloo/hass-FindMy https://github.com/malmeloo/hass-FindMy However, do note that AirTags put themselves into "nearby" mode when they're near an owner device, at which point they become untraceable to the FindMy network (the system where other iPhones are finding your AirTag and uploading its location). That also makes it invisible to this library. It is however still possible to detect it using the BLE signal it is broadcasting in nearby state, which is supported by the library but not yet by the HA integration.
- enlightens 2y agoIf you literally mean when you return home, I’ve been running Shortcut automations triggered by leaving home and arriving home, using the built in “My Home” triggers. They don’t require confirmation and as best as I can tell have been completely reliable.
- daft_pink 2y agoIt’s interesting, because it could allow you to log location over time. Generally, I can only see peoples location when I open the app, but this would allow me to ping every 30 minutes and create a very long log that I could technically create manually, but would be quite a bit of work.
- stavros 2y agoYou don't need to do that, the API will happily return the last N days of location pings.
- malmeloo 2y agoThis, indeed. Quick addition: Apple only stores locations for up to 7 days, so I would recommend running it once per day or so if you don't need live data. If you do, be careful not to request too often (sub-30 mins) if you value your account dearly.
- cruffle_duffle 2y agoI remember there was a time when “web services” were the new hotness and everybody was gonna offer some API to whatever they had online. What happened to this? We’ve even got the authentication part nailed down now thanks to OAuth! There is even API gateways that you can park in front of your stack that manage all the hard parts like granting client secrets to API consumers and showing registration screens to developers. There is really nothing stopping you from opening up parts of your stack to developers and tinkerers so they can do cool shit. It even gets people to lock into your product that much more because now they’ve integrated some part of their workflow into your system in a way that might not be possible without your service! So yeah. You already have these API’s exposed for your front end apps to use. Why not just slam a developer portal on top and let people access some of it? Who knows what cool things they’ll cook up!
- trees101 2y agoDoes this require you to run a virtualized apple OS in order to keep track of your tags?
- malmeloo 2y agoHey everyone! I'm the author of FindMy.py. I'd like to use this moment to give a shout-out to some other people that deserve way more credit than me, as the project definitely would not have existed without them. If this stuff interests you then please do check them out, there is a dedicated section in the project's README (https://github.com/malmeloo/FindMy.py?tab=readme-ov-file#credits https://github.com/malmeloo/FindMy.py?tab=readme-ov-file#cre...). If you have any questions, feel free to ask :-)
- sneak 2y agoCould you please include some usage examples in the README?
- malmeloo 2y agoThere is an examples directory that covers basic usage: https://github.com/malmeloo/FindMy.py/tree/main/examples https://github.com/malmeloo/FindMy.py/tree/main/examples Official docs: https://docs.mikealmel.ooo/FindMy.py/ https://docs.mikealmel.ooo/FindMy.py/ I realize that the docs are rather empty right now; it takes a lot of time to turn my thoughts into text, which I do not really have at the moment. Contributions are welcome, of course ;-)
- josephernest 2y agoCongrats ! I don't have an iPhone or Mac. Can I buy an AirTag, initialize it with the help of a friend who has an iPhone, and then locate the AirTag or ring it from my PC with this Python lib?
- trashcan 2y agoIt's not clear to me how to actually get the required plist file to make this library work. Neither of the scripts in this issue seem to work: https://github.com/malmeloo/FindMy.py/issues/31 https://github.com/malmeloo/FindMy.py/issues/31 Is the syntax to run them just `swift <filename.swift>`? Swift/ErrorType.swift:253: Fatal error: Error raised at top level: main.MyError.noPassword
- malmeloo 2y agoWhich version of MacOS are you using? I believe Apple has made changes to the keychain in the latest version which prevents the scripts from working properly. The only Apple "device" I have regular access to is a hackintosh, so this stuff is frustratingly hard to debug. So far I've been relying on efforts from the community, but the scripts appear to be somewhat flaky and don't always work for everyone unfortunately.
- trashcan 2y agoI am on Sequoia 15.3. If I can do anything to help, let me know.
- josephernest 2y agoI don't have an iPhone or Mac. Can I buy an AirTag, initialize it with the help of a friend who has an iPhone, and then locate the AirTag or ring it from my PC with this Python lib? It would be awesome.
- malmeloo 2y agoTheoretically yes, once the AirTag is deployed the keys should be static and you should be ready to go. Apple should also not be able to "ban" the tag at some later point in time. I would suggest signing into a separate Apple account that's under your control to pair the AirTag, however. Not due to the risk of being banned, but because I have the suspicion that removing an AirTag from your (friend's) account may prompt the device to instruct the AirTag to reset. But if you sign into another account, pair it using an iDevice and then log out, that shouldn't be an issue.
- tamjai 2y agoTile Tracker already has that. I wouldn't relying on Apple being merciful.
- philsnow 2y agoNote that, locating airtags and making them play sound requires them to be near some other iDevice (the battery is a standard CR2032), so if you live in a remote ranch or something and nobody around you has an iphone, they might not be very useful.
- lolinder 2y agoIt wouldn't even need to be a remote ranch—everything I'm seeing suggests they have a range of between 30-100 feet depending on walls and whatnot, which means even in a typical suburb you've got pretty high odds that none of your neighbors have a device within range at the moment you need it.
- bolognafairy 2y agoMy experience is that this is rarely true in reality. I live in a freestanding house in a suburban area (not in the US, let alone SF). I’ve moved a couple of times since I’ve started using AirTags. Even when none of my own devices have been around, I still manage to get quite frequent location updates.
- upbeat_general 2y agoFor the longest time I’ve wanted a way to record my location history in a durable way, without resorting to google maps history (which is great but has…obvious downsides), or some hacky short-term custom solution. I wonder if someone could integrate this into a more coherent long-term platform.
- joshmarinacci 2y agoThere are , or at least were, commercial services that did this. What do you want to do with this data? What form do you need it in?
- upbeat_general 2y agoI think it’s just super handy to know where you’ve been. Great to be able to find places (“Oh I loved this Thai place I went to 4 years ago in X city”) Also to be able to find photos in specific locations (if you integrate it with geotagged photos like google does). It’s one of those things I don’t actively care a ton about in the short term but is useful data to have in the long term if it can persist without a lot of effort. Edit: I think form is “irrelevant” as long as it’s well supported and can be useable in different services later on. Same thing with notes imo (and why I use markdown). Has enough features but importantly is and will be well supported.
- 1659447091 2y agoIf you mostly walk or bike places, Strava[0] is a great way to record where you have been. I use it mostly for recording my travel (and hikes) since I walk more when visiting other places, not so much at home. Have it start recording in the morning and off in the evening. Pause if I take a bus or train and then can edit to clean it up later. Photos with geo tags can be uploaded and when you look at the map the photos will be at the location you took them. Also has a fun feature where you can replay your walk/hike/etc. It's been awhile since I downloaded my data but it was easy and everything you could want is there. The free tier is everything you need for something like the above [0] https://www.strava.com/ https://www.strava.com/ [added] been using it since ~2012
- re 2y agoFrom a quick skim of the repository, it looks like this is only for accessories/devices that you own. I hope that this is the case, and that it doesn't work for the "Find My Friends" functionality. I'm okay sharing my location with trusted people so that they can occasionally manually check where I currently am. I don't like the idea of them theoretically being able to automatically record my location and build a complete history of my movements over time.
- lolinder 2y agoYou should probably just assume that the recording is possible and not share your location with people you don't trust to not do that. Find my Friends isn't Snapchat—there's nothing in the pitch about ephemerality, so you shouldn't assume they engineered it in as a design constraint.
- malmeloo 2y agoYou're right, locating friends is not currently supported. I would assume that this feature is implemented by simply sharing your device's (already recorded) latest location ping with your friends, in which case this is also currently out of scope for the project - the library only intends to interact with the "other-devices-find-my-device" network in order to be account-agnostic. On a separate thought, if Apple has not taken concerns such as the one you portrayed into account when designing Find My Friends then I would suggest not using the system altogether. At that point it's only a matter of time before someone figures out how to extract the data. But that's an entirely different story and a personal consideration you'll have to make.
- jjtech 2y agoYeah, uh... you might do well to assume that they can. The Find My Friends API is really really simple, I have a script somewhere that can pull the locations of everyone who has shared their locations with me and record it. (I'm also the one who wrote the original code that was refactored a couple times until it became this project... https://github.com/JJTech0130/pypush/blob/async/examples/openhaystack.py https://github.com/JJTech0130/pypush/blob/async/examples/ope...)
- wkjagt 2y agoThis is awesome. Now I's starting to hope a similar thing is possible to manage Screen Time.