Life360  

Developer: Ryan Buckner's Plugins     Like this plugin? Show your appreciation!
Category: Location and Presence
Assistance: Get help!    Check the online documentation
Plugin ID: com.ryanbuckner.indigoplugin.life360
Latest release: v2023.1.3 released on Dec. 27, 2023
Requires: Indigo v2022.1.0 or higher
(Check the Releases tab below for older releases that may have different requirements)
  Download latest release

Life360

License Platform Language Requirements Releases

life360-indigo-plugin

This Indigo Plugin provides a way to connect Indigo to your Life360.com family tracking information. This plugin is only supported for Indigo Domotics Software

What is Life360?

Life360 is a mobile application referred to as a "family-oriented private social network". The app is a social network for families and differentiates itself in this way as it is not based around peer groups or professional networks such as Find My Friends and LinkedIn. It allows users to share locations, group messages, and call for roadside assistance. It has four main features: location sharing, circles, places, and premium.

Location sharing

The main feature of the app is location sharing. Users can open the app and see where other members are instantly. Users can choose to share or not their location with any particular circle at any particular time.

Circles

Circles allows users to create separate groups within the app, e.g. "caregivers," "extended family," and "John's baseball team." Users' location is only visible to those who are also in the circle, and members in "caregivers" cannot see the location of users in "extended family," unless they are also in that circle.

Places

Places are a great way to know when your loved ones are leaving work or just arrived at school. Places are areas you can define so you are alerted when a Circle member enters or leaves a location. Some Places you might want to set up are work, home, and school. Free plans can set up two Places. To set up more Places, upgrade to a Premium plan.

Premium

Life360 operates as a freemium app, and users can pay for extra features. These extra features include: stolen phone insurance, access to a live advisor 24/7, unlimited creation of "Places," and emergency roadside assistance (known as 'Driver Protect').

More information can be found about Life360 here

The Life360 Plugin

The plugin is my first attempt at an Indigo plugin, based on a script I wrote to update variables in Indigo. The Life360 api example was leveraged from the work done by harperreed

This version has not been testedby any other users but myself. It is my first plugin so I look forward to the community adding more features and error handling before it's place in the Indigodomo Plugin Store. More informaton will be listed on the GitHub Wiki

This plugin is not endorsed or associated with Life360

The plugin currently supports:
  1. Support for only 1 Circle. This must be the first Circle in your account
  2. Multiple devices that each represent users in your Circle
  3. Custom device states
    • Unique Member ID
    • First Name
    • Last Name
    • Phone Number
    • Email Address
    • Avatar (http address)
    • Battery %
    • Battery is charging or not
    • Latitude
    • Longitude
    • Current Geofence
    • Closest known address
    • Wifi connected or not
    • Is Driving (boolean determined by speed)
    • Speed (raw Life360 speed * 2.2)
    • Location Since Timestamp
    • Last API update

Installation

Download the Life360.indigoPlugin file and double click it

Plugin Config
  • configure the Plugin by entering:
    • Username: your life360 username (email address). Any account holder in the Circle can use their account. If you don't have a username or password, you can initiate a password change in the app
    • Password: your life360 password
    • Authentication Token: Leave this value alone
    • Refresh Rate: This is the time (in seonds) between API calls to refresh device states. It's recommended to keep this rate at 15 seconds or more

The Plugin Config Dialog should not close unless your username and password are authenticated. Check the Event Log for any errors.

Device Config
  • create a new device of Type life360
    • model should be life360 Circle Member
    • Name your device anything you want. It's preferred to use something indicating the name of the person your device represents
    • Press Edit Device Settings...
    • Choose the member that this device will represent from the dropdown list. If there is nothing in the dropdown, there maybe a problem with your username and password. Check the event log

Cautions:

I am not an expert on Life360. I have not yet had the Indigo community test this plugin.

As this is the first version of my first plugin, so usage is at your own risk ! By using this version you are joining the testing team, thanks for the help. I would love to hear your feedback and thoughts.

Troubleshooting:

  • If someone changes their name in Life360, you will have to go into their device and reselect them from the dropdown if you make any other changes to the device.
  • member_is_driving is now a derived boolean based on the Life360 speed for that member. The raw isDriving status is always returned as 0, so it's ignored
  • The Life360 raw speed is a number that appears to be the actual speed in MPH divided by 2.2. This plugin attempts to correct that, but it's an estimate. -1 or 0 means not moving fast enough to register
Release details
Released on: Dec. 27, 2023
Requires: Indigo v2022.1.0+
Changes in this release

I have published a new Life360 Plugin release to GitHib to fix the latest issue with the Life360 API

What's the Issue?

Life360's latest configuration of Cloudflare created an issue where API users are being blocked because they look like attacks on the website. Please note that the Life360 API is un supported and therefore may continue to make unannounced changes.

What should I do to fix it?

I have a fix out that appears to be working for me. You can find it here: https://github.com/ryanbuckner/life360-plugin/releases

Please test and provide feedback here:

Once Indigo users have confirmed that the fix is working I'll move it to the Plugin Store.

Please note: A few things to try if this does not immediately work for you:

1) Verify your phone number in your Life360 App 2) Change you password through the Life360 website 3) Change your password in the plugin*

Release details
Released on: Aug. 1, 2023
Requires: Indigo v2022.1.0+
Changes in this release

Updated for changes to Life360 API Auth for cloudflare

Requirements

Install and go

Release details
Released on: July 5, 2022
Requires: Indigo v2022.1.0+
Changes in this release

Added a new custom state that represents the member's speed in KPH

Release details
Released on: May 31, 2022
Requires: Indigo v2022.1.0+
Changes in this release

Changed the indigo.kStateImageSel.None image selector to indigo.kStateImageSel.NoImage (None is now a reserved word in Python 3).

Release details
Released on: May 10, 2022
Requires: Indigo v2022.1.0+
Changes in this release

Compatibility with Indigo 2022.1 and Python 3

Requirements

Indigo v2022.1.0+

Release details
Released on: Jan. 14, 2022
Requires: Indigo v7.0.2 thru v2022.2
Changes in this release

Defaults added for preferences prior to user filling out Config

Release details
Released on: Jan. 14, 2022
Requires: Indigo v7.0.2 thru v2022.2
Changes in this release

Added exception handling where some users have reported preferences not loading

Release details
Released on: Dec. 16, 2021
Requires: Indigo v7.0.2 thru v2022.2
Changes in this release

Life 360 member devices will now show up with a battery level creating compatibility with the Cynical Behaviors Plugin Battery Meter monitor

Release details
Released on: Oct. 27, 2021
Requires: Indigo v7.0.2 thru v2022.2
Changes in this release
  • Will no longer update a device if the member is not sharing location
  • Fixed bug where plugin crashes when location data is not available
  • The raw Life360 data contains 90% of the value of the information in the location fields. Without this data there is no need to update the device
Release details
Released on: Oct. 12, 2021
Requires: Indigo v7.0.2 thru v2022.2
Changes in this release
  • member_is_driving is now a derived boolean based on the Life360 speed for that member. The raw isDriving status is always returned as 0, so it's ignored
  • The Life360 raw speed is a number that appears to be the actual speed in MPH divided by 2.2. This plugin attempts to correct that, but it's an estimate. -1 or 0 means not moving fast enough to register
  • Refresh rate in the Config is now in seconds, allowing as frequent as 15 seconds
Release details
Released on: Oct. 9, 2021
Requires: Indigo v7.0.2 thru v2022.2
Changes in this release

Updated the plugin to match device to Life360 person (member) using the member's GUID, rather than the name. Since users can change their name using the app, this could cause the plugin to stop updating information for that member's device.

If you change the name of the member, updates to the device will still occur. If you open the device, you'll be required to choose the new member name from the device config drop down.

Release details
Released on: Sept. 26, 2021
Requires: Indigo v7.0.2 thru v2022.2
Changes in this release

This release eliminates the need to install the geopy library. It is now included in the plugin

Release details
Released on: Sept. 26, 2021
Requires: Indigo v7.0.2 thru v2022.2
Changes in this release

Improved error handing for geopy exceptions upgraded logging for deprecated indigo logging Limited refresh rate to 3 minutes or more Fix toggle menu item so it does not require plugin restart

Release details
Released on: Sept. 25, 2021
Requires: Indigo v7.0.2 thru v2022.2
Changes in this release

Everything is new!

Connect to your Life360 account and create a device for each person in your circle. Track their locations, battery levels, geofences, and more!

Requirements

To install this you must install the geopy library with pip install geopy

Indigo 2021.1 tested