RaabtaHQ

Front desk & inbox

The 3am reschedule

Moved, confirmed, and nobody was awake

A reschedule is four actions that all have to happen or none of them should: find the booking, check what is free, release the old slot, take the new one. Getting three of the four done is worse than doing nothing.

  • Four actions in one exchange, at any hour
  • The old slot is released so somebody else can have it
  • A crash mid-way never leaves a double booking
  • The diary is the same one your staff are looking at

Today

A voicemail at 3am, a callback at 10am, a slot sitting empty in between, and a patient who already booked elsewhere.

With this running

The appointment is moved before anyone opens their eyes, and the released slot is available to the next person who asks.

RaabtaHQ — Agent run · reschedule
Machine B — picked it upresumed
checked the diary
released 14:00
booked 16:30written down the moment it happened
worker killed — out of memorymid-turn, with the reply still unsent
Restarted on another machine

Reading what the interrupted turn already did…

book 16:30 — already done, skippedthe first attempt's result is returned instead
told Ayesha her appointment moved to 16:30

One booking. Not two.

A restart that repeats itself is worse than one that never happens — the customer sees the mistake.

Step by step

What actually happens

  1. Customer

    Something's come up, can I move Thursday to next week?

  2. Assistant

    Finds the patient, reads their upcoming appointments, and checks what is free with the same practitioner.

  3. Assistant

    “Of course — I have Tuesday 14:00 or Wednesday 16:30 with Dr Amara. Which suits?”

  4. Customer

    Wednesday

  5. Assistant

    Releases Thursday, books Wednesday 16:30, confirms both in one message.

01 / 02

The half that is easy, and the half that is not

Reading a diary and offering times is the easy half. The hard half is that a reschedule is a sequence: release, then book. If the process handling it dies between those two — a deploy, a timeout, a machine going away — a naive system either loses the new booking or, far worse, makes it twice when it retries. This one records each action as it happens, so a restart continues rather than repeating.

02 / 02

Cancelling can need a person; booking usually does not

Most clinics are happy for an assistant to fill a free slot and want a human eye on anything that empties one. That is a switch, not a rewrite: mark the cancelling action as needing approval and it stops, tells the patient it is checking, and puts the request in front of whoever is on. Nothing is cancelled on a silence.

How this is put together

The same building blocks every assistant is made of. Nothing here is bespoke to this scenario.

What starts it

A customer messageA patient messages about an existing appointment

Where it runs

WhatsAppPersonal WhatsApp

What it can do

  • Checked the time
  • Looked up a contact by number
  • Looked through the appointments
  • Checked what times are free
  • Cancelled an appointment— needs your approval
  • Booked an appointment
  • Replied

What it uses

Approval gatesYour instructions libraryInstant hand-off

Needs

An account running the matching industry module — the tools above come with it. See the modules

Every action above is a real capability, and every run keeps a record of which ones it used. How the engine holds this together →

More like this

Other things it does

Browse the whole library

Would this work for how you actually operate?

Tell us the scenario you have in mind. If it needs a building block we do not have, we would rather say so than sell you a demo.