Automations01

A mountain cabinthat ran itself for two years.

The guest remote control: gate toggle, cabin door lock and floor heating

Brand site · guest web app · automation · 2022–2025

MoodySun was my own rental cabin, live for two years with real guests. Bookings and payments came through Lodgify; from there to the invoice, every stay ran without me.

Client
My own rental cabin, two years with real guests
My part
Everything built around the bookings
Stack
React, Next.js, MUI, NestJS, MySQL, Lodgify API, Twilio, SmartBill

What it replaced

Every booking meant a message to the cleaner, a code for the door, the heating set by hand, a welcome in the guest’s language and an invoice at the end, for two rentals at once. The brand site’s own booking widget stayed a prototype: bookings and payments went through Lodgify, and everything after the booking was automated.

The chain

A typical stay at MoodySun

Rebuilt from its rules, times are examples

Booking day

  1. 11:02Booking synced from LodgifyLodgify
  2. 11:02Cleaning task and caretaker payout createdStaff app
  3. 11:03Welcome message in Romanian, language detected by AIWhatsApp

Arrival day

  1. 14:00Keypad code valid for this stay onlyTTLock
  2. 14:00Boiler heated for two guestsAriston
  3. 15:12Guest checks in, the door unlocksTTLock
  4. 16:40Needs attention: Tuya cloud not answering: gate, lights and floor heating shown as unknown; lock and boiler unaffectedTuya
  5. 17:05Tuya answering again, every state restoredTuya
  6. 19:48After local sunset, parking lights onTuya

Checkout day

  1. 09:30Checkout moved to 12:00, access extendedStaff app
  2. 13:00Code deleted, heating down to 5 °C, air conditioning off3 systems
  3. 13:00Invoice issuedSmartBill

Nothing above needed me.

Your chain will differ (orders, quotes, onboarding), but the pattern holds: one event starts the work in every other tool.

The systems connected

Four clouds, one remote

  • TTLockAnsweringDoor lock and keypad codes
  • TuyaNeeds attention: Not answeringGates, lights, floor heating
  • LG ThinQAnsweringAir conditioning
  • AristonAnsweringBoiler
Each vendor has its own login. The guest sees one remote, and when one cloud stops answering, only its devices show as unknown.

When something fails

  • Nothing happens twice

    Each reservation records what already ran, so a retry never sends a second invoice, and a late checkout gives the guest their access back.

  • One dead cloud is not a dead remote

    The four vendors are asked in parallel; one that fails shows its devices as unknown and leaves the rest working.

  • Hardware gets time to move

    The gate button waits out its twelve seconds of travel, and the heating and the air conditioning never run against each other.

What I stopped doing

  • Messaging guests

    Welcome and check-in messages went out on WhatsApp in the guest’s language, detected by AI.

  • Handing out keys

    A keypad code valid only for the stay, created and deleted on schedule.

  • Invoicing

    A card payment turned into a legal invoice on its own, and a refund issued the reversal.

Open the guest app

Contact

Tell me what you want automated.

A task you do by hand, the tools it touches, and how often it happens. I reply within a day, usually sooner.

About 20 hours a week, more in a launch week, remote, on European hours. I can start within a few weeks.

LinkedIn

All fields are required.

If it fits: a short call, then a written quote, invoiced by my Romanian company (SRL); for EU businesses outside Romania, with VAT reverse charge. How your message is handled