Jeremy Neely Text Jeremy

Automation & Integration · Beta

AME Meeting Transcript Agent

Delivers each Teams meeting transcript to every invited person's OneDrive.

Built for: Every internal Microsoft 365 user at The AME Group

How one transcript is delivered to each invitee's OneDrive (sample data).
How one transcript is delivered to each invitee's OneDrive (sample data).

The problem

Teams saves meeting recordings to the organizer's OneDrive automatically, but not transcripts. Anyone who missed a meeting had to ask the organizer to dig the transcript out by hand.

What I built

I built a Windows service that polls Microsoft Graph for finished Teams transcripts across The AME Group's tenant. It works out who was invited and drops a copy into each internal invitee's OneDrive, exactly once.

How it works

  1. Run preflight checks on the certificate and permissions.
  2. Every 10 minutes, ask Graph for new transcripts.
  3. Work out the internal invitees, expanding groups to people.
  4. Download each transcript once and upload a copy to each OneDrive.
  5. Record every delivery so a crash resumes where it stopped.
How AME Meeting Transcript Agent is wiredRuns as a Windows service with certificate auth. Only internal invitees receive a copy, exactly once.
Comes inInside AME Meeting Transcript AgentGoes out Microsoft Graph new Teams transcripts Calendar invite who was invited Poll every 10 minutes Resolve invitees groups expanded to people Download once per transcript Upload copies to each OneDrive Transcript file in each invitee's OneDrive Delivery record SQLite, resumes after crash

Built with

  • Python 3.11
  • Microsoft Graph API
  • MSAL
  • SQLite (WAL)
  • Windows DPAPI
  • NSSM Windows service
Text Jeremy about this Next: Email SLA Monitor All 38 tools Texting opens your Messages app with a note already written. He replies himself.

More of Jeremy's work

All 38 tools, by category