Running in production
On the main number since 2026-09-22. We also record what is unproven: the settings screen’s apply path has not yet been exercised on a real change.
The situation
The agency’s main line rang a single person’s desk phone. Calls could not be routed by caller type, and voicemails had no shared place to be worked.
The cost of leaving it alone
A patient or a physician’s office who cannot reach the agency does not leave a second message. They call someone else.
What we built
A cloud phone menu on Microsoft Teams Phone. It plays an emergency notice first, then offers four options (patient, doctor’s office, therapy provider, other) plus an operator, each with its own queue. Hours, after-hours and holidays are handled automatically.
Unanswered and after-hours calls go to a shared, transcribed voicemail that becomes a row on a Phone messages list, a Planner task carrying the transcript, a Teams card and the audio file. Hours, holidays and menu options are editable from SharePoint lists and applied by a script that dry-runs first.
Teams Phone: auto attendant, call queues, calling planExchange shared voicemailPower Automate, SharePoint, PlannerPowerShell
Why AI, or why not
No generative AI. Routing is by key press. The only machine learning is Microsoft’s built-in voicemail transcription, which we never switch off “for privacy” because the transcript is what makes the message a task.
The results
How PHI was protected
- Transcripts and recordings stay inside the tenant: a group mailbox, Planner and Teams.
- No outside AI service is used, and access is limited to the operations group.
- The intake step refuses to copy a message outside the tenant’s accepted domains.
What we would tell you to skip
Every link in a chain can fail silently. Deleting a Microsoft 365 group deleted the Planner board it owned, and tasks quietly stopped for about two days while the phone itself looked fine. Place a real test call after every change.
Reusable for
Small Microsoft 365 agencies without a phone tree or an answering service.