I got a PR out of the blue with pretty much no explanation of why or what changed with the only description being: Many updates, cleanups. Happy to discuss
. I did a quick check to make sure nothing broke and merged them in.. I actually thought the PR was coming from someone at Hubitat who had DM'd me the day before about wanting to integrate this app into the core Hubitat codebase.
I did have some questions about the code and probably should have done a deeper dive but was too busy with other things and there were so many reformatting changes it was hard to review. Later in the day I realized the PR changed how often the device polls the Life360 servers in a pretty drastic way. Notably by default it'll poll for changes every 5 minutes.
From the beginning, I've tried pretty hard to keep the original "Life360 with States" driver in line with how it originally worked and not break anything - including supporting other dashboards, not just the dashboard that I wrote/use.
The initial driver polled every 30 seconds. After doing lots of testing (mostly watching the logs while my kids were out and about), I added logic to try and speed up the polling when the devices were on the move. When no movement is detected, the polling will slow back down again to 30 seconds. Like I mentioned above I didn't want to do anything that would break how existing users used the Life360 driver, so I added an option to select how often you want the driver to poll Life360's servers. I explained the changes in a post with the option to select "30 seconds" so things worked exactly as before.
So, to have someone modify my logic to 5 minutes without any kind of explanation or reasoning seemed pretty crappy to me. Just add an option for "5 minutes" and select that - problem solved.
There's a few things in the PR that made sense to me. I'm open to adding these in. There's also plenty I'm not a fan of but that's just my KISS coding style (I'm not a groovy developer but have been writing mobile apps for 20+ years so I have a pretty good idea of what looks good/clean and what doesn't).
Long story short -- this app has been running great for me since I updated it. I'm able to watch my dashboard as my kids move about. Updates aren't as frequent as the native Life360 app but not terrible either. Certainly a 5 minute interval wouldn't work for this purpose.
And yes it is possible the Life360 will change it's server to block access to everything except it's own app. The more users use it, the more they're likely to pay attention. If you're at all concerned, you can change the polling rate in the driver. But, Hubitat isn't the only one using the same logic (home assistant and it's naive to think Life360 doesn't know about it either. Maybe they're considering offering a real API and charging for it? Maybe they're afraid shutting off access will alienate paying Life360 users who can switch to something else? I don't know..
But, in the meantime I'm happy to help others get it running as well as get feedback on what can be improved and try and improve it. I didn't take over this app to dictate how it works but at the same time don't want to be dictated what to do either.