When a driver crashes, they face hold music, a shaken memory, and a form that wants details they can barely speak. ClaimVoice replaces that queue with Ivy — a real-time voice agent on AssemblyAI that files the First Notice of Loss while they are still on the line. Ivy opens by checking they are safe. Before she says anything about a policy, she verifies who is calling: policy number plus the last four digits of the phone on file. Failures never confirm whether a policy exists. Four misses lock the number out of the phone channel. Once verified, she greets them by name and asks about their actual car — "is the Camry still driveable?" — then files the claim the moment she has the incident, the location, and drivability. AssemblyAI posts those tools to a Django backend. The webhook scores risk with a readable rule set, decides whether a tow rolls, and writes a spoken reply Ivy reads back with the claim reference. Repeat filings are idempotent so two tool calls never become two trucks. A required drivability enum includes "not_asked", so the model cannot invent an answer and send a wrecker from a guess. One Django app is the whole product: a browser voice client, a dispatcher board with live claims and stereo call recordings (caller left, Ivy right), an insights page that shows where the agent retries, a policy directory, and a settings screen that publishes Ivy's prompt and voice to AssemblyAI without a redeploy. The same agent answers a Twilio number over SIP. Insurers and roadside dispatchers are the users. Drivers never fill a form. Judges can press Start call in the browser or run the simulator, which synthesises a full conversation and fails if no claim lands in the database.
Category tags: