The lifecycle of an appointment is split into option proposal and final confirmation. It prevents double-booking and maximizes calendar availability by instantly recycling abandoned or unconfirmed temporary slots back into the general scheduling pool.
Proposal and Multi-Slot Booking Behaviors
The system handles slot inventory allocations differently depending on the stage and type of booking request being executed:
-
First Date Calls: The engine automatically reserves the first identified slot matching the selection logic. If the system parameter Additional time slots number to be proposed as first date is configured to return multiple alternatives, those additional options are not booked or held unless the override parameter Block availability for additional time slots to the first slot is set to
True. -
Further Date Calls: Similarly, calls for a subsequent date will immediately lock the primary slot identified by the selection logic. If the system is configured to return multiple alternative slots, those extra options are left unbooked unless the parameter Block additional slots availability in Agenda System Settings is explicitly set to
True.
If a user modifies or shifts an appointment that is currently in a TEMPORARY status, the previous slot reservation is immediately cleared from the database to return capacity to the public pool.
State Confirmation Overrides
When an external system issues a final confirmation command, the transaction is processed according to the source call type and configuration rules:
Case A: User confirms the primary slot proposed by a First Date call
-
The system updates the appointment status record directly without altering or recalculating the current slot capacity.
Case B: User selects an alternative (additional) slot proposed by a First Date call
-
If Block Availability is False: The system attempts to reserve the newly selected slot. If successful, it locks the new slot and clears the previous reservation. If the new slot has become saturated and cannot be booked, the original slot reservation is maintained.
-
If Block Availability is True: The system confirms the chosen alternative and immediately flushes all other held reservation locks.
Case C: User confirms the primary slot proposed by a Further Date call
-
The system clears the previously booked slot and applies the new appointment confirmation to the target slot without further modifications. If the original appointment held a temporary status, it is deleted; if it held a confirmed status, it is marked as cancelled.
Case D: User selects an alternative (additional) slot proposed by a Further Date call
-
If Block Availability is False: The engine attempts to secure the new slot and cancel the previous reservation. If the target slot contains no remaining availability, the previous reservation is preserved.
-
If Block Availability is True: The system logs the confirmed choice and immediately clears all other reserved alternative slots from the transaction.