github noiwid/HAFamilyLink v2.0.0-rc1

2 hours ago

First pre-release of 2.0.0. Two things change the nature of the integration: it can now impose the parent's settings on Google (strict mode), and it drives the app's "weekly limits" screen. Nothing changes for an existing installation until the Strict mode option is switched on.

Please read the Strict mode section of the README before enabling it: while it is on, manage Family Link from Home Assistant only, changes made in the app are undone.

Strict mode

There is a gap on Google's side that many children know how to use: from the Family Link app or the Google interface, a supervised child can give themselves a time bonus, unlock a device during bedtime or school time or with no time left, switch bedtime and the daily limit off, or change the bedtime hours and the weekly quotas. With the Strict mode option on, Home Assistant becomes the single point of control: after every refresh it compares Google's state with the parent's settings and reverts the difference. What is changed from Home Assistant stays; what is changed from the Family Link side is put back.

  • Six rules, chosen in the options: time bonuses added from Family Link are cancelled (bonuses given from Home Assistant are kept); locking and unlocking, switching bedtime, the daily limit and school time on and off, the bedtime hours and the weekly quotas are reserved to Home Assistant. Nothing is switched on by force.
  • The option drives a switch.<child>_strict_mode per child; a switch toggle writes the option back.
  • Each corrective action is logged, kept in the switch attributes and fired as a familylink_strict_mode_action event with structured details (child, device, weekday, minutes, value seen on Google's side), so you can word a notification in your language.

Weekly limits entities

  • number.<child>_<weekday>_limit: the screen time quota of each weekday, read and written exactly as the app's weekly screen does (the write was captured on the web app). Today's entity also applies the change at once.
  • time.<child>_<weekday>_bedtime_start and _end: the weekly bedtime slot of each weekday.
  • set_daily_limit gets an optional day field.

Also in this release

  • Everything from 1.2.15 (last release of the 1.x line).
  • The new entities take their prefix from the child's device; existing entities keep their ids.

Feedback wanted

Strict mode has been in daily use on one account for four days. Reports from other accounts, especially those on Google's newer downtime model or with several children, are what will turn this rc into 2.0.0.

Don't miss a new HAFamilyLink release

NewReleases is sending notifications on new releases.