The automated system for dental clinics integrates with a Medical Information System (MIS) to manage appointment scheduling. When a patient cancels a visit, the MIS sends a webhook to a backend service built with Python 3.10+, FastAPI, and SQLite. The system verifies the cancellation status and checks if the time slot remains available before initiating the rescheduling process.
The backend identifies potential candidates by first checking the clinic's waiting list and then searching for patients with scheduled appointments at a later date. To ensure accuracy, the system performs triple validation of the slot status: upon initial cancellation, immediately before the automated call, and after receiving a patient's confirmation.
The MTC Exolve voice robot handles the outbound calls to patients. It offers to reschedule their appointments to the newly opened slot. If a patient agrees, the system automatically books the visit. If the patient declines or does not answer, the service logs the result and proceeds to the next candidate in the queue.
To maintain data integrity, the system uses idempotency keys and stores context in SQLite, including slot, candidate, and call identifiers. A dedicated component, the reaper, monitors for technical failures to close out calls that did not receive a final status. The service also filters out ineligible candidates who have opted out of notifications or have been contacted recently.






