I built this system for a locksmith company that needed a better way to handle incoming emergency calls and assign jobs to technicians automatically.
Here’s what the system does:
• AI answers incoming calls
• Collects customer details (name, address, issue, phone number)
• Creates a job record in the database
• Sends the job to technicians one by one
• Includes Accept / Reject buttons inside the email
• Waits for a response
• If ignored → automatically escalates to the next technician
• Stops immediately once someone accepts
The main challenge was building the loop logic in n8n so it doesn’t notify everyone at once, and making sure the workflow instantly stops once the job status changes to “accepted.”
Result: Replaces manual dispatching, prevents double assignments, reduces missed calls, and ensures technicians are assigned faster without a human coordinating everything.
I recorded a Loom walkthrough showing:
– A live AI call test
– The n8n workflow logic
– How accept/reject works
– How the escalation system is structured
If anyone’s curious about the backend setup, here’s the full breakdown:
Would love to hear how you’d improve the routing or escalation logic.