The problem

The customer runs a four-studio Airbnb building. Every booking comes with a long tail of small operational tasks: generating an access code, sharing it with the guest, getting it onto the door lock, welcoming the guest into the right studio, setting the heating and lights appropriately, and handling guest networking so that things like Chromecast actually work without putting random devices on the building’s own network.

Done by hand, that adds up to enough friction that owners either under-do it (guests get a basic experience and the energy bill is higher than it needs to be) or over-do it (staff hours per booking that destroy the unit economics). The goal here was a building that handles its own end-to-end booking lifecycle: code in, code out, lights adjusted, heat adjusted, WiFi up, welcome screen ready, all on its own.

What I did

I built the orchestration on Home Assistant for the device layer, Node-RED for the booking-lifecycle flows, and a handful of custom integrations to fill in the gaps. Bookings come in through a property management system (PMS), which gives a clean, normalised feed regardless of which platform the actual reservation came from.

For each booking, the system:

  • Generates a unique access code for that stay, pushes it to the studio’s door lock, and revokes it automatically when the booking ends.
  • Renders a personalised welcome screen on a wall-mounted tablet inside the studio with the guest’s name, check-in info, and house basics.
  • Spins up a guest-specific WiFi network for the duration of the stay, isolated from the building’s own network, so guests can cast to the in-studio Chromecast without anything reaching back into the house side.
  • Pre-heats the boiler ahead of check-in and falls back to a low setpoint when nobody’s there. Same idea for the lights: present when needed, off when not.

Everything keys off the booking-lifecycle events from the PMS, so there’s no manual touch between a booking landing and the studio being ready. The owner doesn’t see any of this. Guests don’t see any of this either. They just see a working studio with their name on the screen and the right code waiting for them.

The outcome

The building runs itself. Per-booking operational time dropped to roughly zero. Energy costs went down because the heating and lighting now know whether the studios are occupied. Guests get a noticeably better experience: their name is on the screen, the Chromecast just works, the place is warm when they walk in.

Notes

The interesting thing about this kind of automation isn’t any one integration. It’s that the whole flow is glued together in one place, with one mental model. The boiler doesn’t know about bookings, the door lock doesn’t know about WiFi, but the orchestration layer knows about all of them and can act on the same events. That’s the difference between a smart home (a collection of remote-controlled devices) and a building that actually runs itself.

Tools

Home Assistant · Node-RED · Python · MQTT