/voicemail-trans

Voip.ms Voicemail Transcriber

Primary LanguageTypeScript

Voip.ms Voicemail Transcriber

This is an archived personal project I wrote to download and transcribe voicemails on my VOIP service Voip.ms using "serverless" AWS services including AWS Lambda. Voip.ms now has a built-in transcription feature, so this project is obsolete.

I used this project to test a few things:

  • The Voip.ms API (pretty rough)
  • AWS CodeStar (worked OK for a personal project like this; I wouldn't want to use it for professional work)
  • AWS Transcribe (worked adequately, but the new built-in Voip.MS transcriptions feature is more accurate)
  • The strategy of breaking down work into small, single-purpose Lambda functions (more overhead for a small project like this, but easier to monitor and much more robust for a production project)
  • AWS CloudWatch Embedded Metrics Format (will be using this everywhere from now on!)
  • AWS SAM second try (I wanted to like this but I couldn't - I'll be using AWS CDK for future projects)

I tried to make this as secure as possible, within the limitations of the Voip.ms API.

  • Voicemail audio is downloaded from voip.ms via HTTPS instead of delivered by Voip.ms via email
  • Transcripts are emailed via PGP-encrypted emails
  • If this project had been taken further, voip.ms credentials could have been stored in AWS Secrets Manager or encrypted with KMS if cost were an issue.

Being a personal project, not all "todos" were ever finished and not all best practices were applied, but it did successfully transcribe all my voicemails for about two years.

Design Diagram