home-assistant / core

:house_with_garden: Open source home automation that puts local control and privacy first.
https://www.home-assistant.io
Apache License 2.0
71.13k stars 29.81k forks source link

Life360 Integration Errr #36743

Closed karldonteljames closed 4 years ago

karldonteljames commented 4 years ago

The problem

Unable to pull tracker information from Life 360 - Error 400

Environment

arch | x86_64 dev | false docker | true hassio | false installation_type | Home Assistant Container os_name | Linux os_version | 4.19.107-Unraid python_version | 3.7.7 timezone | GB version | 0.111.1 virtualenv | false

Problem-relevant configuration.yaml

Traceback/Error logs

Additional information

In the logs I can see the following:

2020-06-13 00:49:41 DEBUG (SyncWorker_34) [homeassistant.components.life360.device_tracker] Family Circle: will be included, id=MyRandomLife360ID 2020-06-13 00:49:41 DEBUG (SyncWorker_34) [homeassistant.components.life360.device_tracker] Circle's Places:

Above GPS Coordinates have been randomly changed for anonimity.

probot-home-assistant[bot] commented 4 years ago

Hey there @pnbruckner, mind taking a look at this issue as its been labeled with a integration (life360) you are listed as a codeowner for? Thanks! (message by CodeOwnersMention)

karldonteljames commented 4 years ago

I removed the life360 settings from my configuration.yaml file, commented out the known devices (from life360) and reconfigured life360 via the UI, I'm still getting the same error message.

Logger: homeassistant.components.life360.device_tracker
Source: components/life360/device_tracker.py:93
Integration: Life360 (documentation, issues)
First occurred: 10:48:31 (1 occurrences)
Last logged: 10:48:31

get_circle_members "Family": CommError: 400 Client Error: Bad Request for url: https://api.life360.com/v3/circles/MyRandomLife360ID/members

Logger: homeassistant.components.life360.device_tracker
Source: components/life360/device_tracker.py:419
Integration: Life360 (documentation, issues)
First occurred: 10:48:44 (1 occurrences)
Last logged: 10:48:44

Suppressing further errors until OK: get_circle_members "Family": CommError: 400 Client Error: Bad Request for url: https://api.life360.com/v3/circles/MyRandomLife360ID/members
pnbruckner commented 4 years ago

@karldonteljames I haven't seen this too often. One situation was discussed on the community forum in this topic, but I don't know that the root cause was ever determined.

And here is another similar situation discussed on the forum, but again, never got to the root cause.

Please read through those to see if there is any similarity to your situation or if there are any ideas there that you might also try.

I'm not sure what to tell you or otherwise suggest. I'm pretty sure this integration is used successfully by probably hundreds (thousands???) of people successfully every day. It's not terribly uncommon to see communication errors sometimes, but it usually works again in fairly short order.

It's clearly talking to the server, otherwise you wouldn't be getting that type of error. Does it ever work, or does it never get past that error?

karldonteljames commented 4 years ago

It worked fine until i upgraded last week to 0.111. I tried a downgrade a day or so later when i noticed it wasn’t updating but that gave the same error.

Nope doesn’t get past the error, I’ve tried doing multiple restarts, i tried to remove the integration from my configuration.yaml and then re-add it via the UI, but every time I get the same error. It’s been about 6 days i think since this integration last worked, and every time it is the same error. I’ll take a look at those posts and see if there is anything i can see that might revolve the problem.

karldonteljames commented 4 years ago

This seems to be down to the same issue described in the first thread, My son got a new phone and wasn’t able to enable location services, I’ve just reset and restored his new phone, enabled location services and now it’s working as expected. That seems like really strange behaviour, that if one device is offline it throws a 400 error.

pnbruckner commented 4 years ago

Yes, that is weird. And I'm pretty sure I tried this myself (by temporarily disabling location services on one of our phones) when this theory first came up but I couldn't reproduce it.

Well, unfortunately, this is using an unsupported and undocumented API from Life360, so there's not much I can do about it.

If it's working ok now would you agree to close this issue? Again, not sure what can be done about it.

karldonteljames commented 4 years ago

I’m happy to close the issue now, it seems like until the device goes offline for a day or so the error cannot be reproduced. Be great if there was a way this could be handled, but it is working again now, so that’s something.