## Inspiration
At Flo Smart Properties we build Flo, a content management system that care and supported-housing providers use to manage Alexa Smart Properties Echo devices in residents' rooms, schedule announcements, upload content and more. Our customers kept asking the same question: how do we know someone's OK without watching a camera? Ring tells you when something happens. In an older person's home, the thing you want to know is often the opposite. It's gone ten and nobody's been in the kitchen, or the front door opened at 2am.
Flo is already live in extra care, supported living and sheltered housing with councils and care providers, so the people in this demo are composites of residents we build for every day rather than a guess at a user.
## What it does FloRing turns the Ring devices already in a home into care routines, and tells the right person when one fires.
- No-activity routines fire when nobody is seen in a room during a time window, e.g. "if there's no sign of anyone in the kitchen between 7 and 11, tell Sarah and Jo".
- On-event routines fire when something happens at the wrong time, e.g. the front door opening between 10pm and 6am.
- Only people count. Ring classifies motion as human, vehicle or other, and only human motion counts, so the cat doesn't count as Mum being up.
- Quiet hours per contact. A 2am alert goes to the on-call carer instead of waking a relative, unless they've asked to be woken for emergencies.
- Alerts go out by text and email, with a camera snapshot, and can ring a Ring chime.
- Flo (optional). If the home already uses Flo, the same routine can do a spoken check-in on the Echo in the room. FloRing works fully on its own without it.
The Home page answers one question: is she OK? Families and care providers also get Activity, Alerts, Routines, Devices and Contacts pages, all designed for a phone first.
## How we built it FloRing is a private Ring app on the Ring Partner API. The backend is ASP.NET Core on .NET 10 with SQLite, and the front end is React and TypeScript.
- Account linking: one-way private-app linking, with token exchange and HMAC-signed nonces.
- Webhooks: signed v1.1 webhooks checked against the app's HMAC key and de-duplicated by
request_id. We reply within Ring's 5 seconds and do the real work on a background queue. - Routine engine: on-event routines are matched as events arrive. A sweep checks no-activity windows, including overnight ones.
- One clock: everything reads time from a single clock, so we can replay a morning at speed and get the same result as a real one.
- Actions: each is a provider (Twilio for SMS, SendGrid for email, Ring snapshots and chime). The Flo provider is only registered when Flo is connected.
## Challenges we ran into
We're in the UK, and a UK Ring account can't link to any Ring app yet. The Ring Appstore is US-only, staging only accepts US devices, and starting the link from our side returns a 403. We built and unit-tested the full linking flow anyway. For the demo we wrote a simulator that sends properly signed Ring webhooks into the real receiver, so signature checks, dedupe, routines, quiet hours and delivery all run for real. The texts, emails and Echo announcements in the video are real.
## Accomplishments that we're proud of
- Routines that react to something not happening, which Ring's event model doesn't do on its own.
- A Home page a worried relative can read in a second.
- Quiet hours that route night alerts to whoever's on call.
- 90 automated tests covering the routine engine, time windows and webhook signing.
## What we learned In care, the absence of an event is often the most important signal. Getting the time handling right (overnight windows, quiet hours, one clock for everything) mattered more than any single feature. We also learned to read the platform's regional limits before choosing an app type.
## What's next
- Link real UK homes as soon as Ring opens linking outside the US.
- Add Ring Alarm sensors when they reach the Partner API, and contact sensors once they leave Early Access.
- Roll FloRing out to the care providers who already use Flo.
Log in or sign up for Devpost to join the conversation.