simontelephonics / transcribe-with-azure

Transcribe FreePBX voicemail using MS Azure Cognitive Services/Speech Service
MIT License
4 stars 2 forks source link
freepbx transcription voicemail

transcribe-with-azure

Use Azure Cognitive Services - Speech Service to add a transcript to your voicemail-to-e-mail delivery.

Sign up for Azure Speech Service

Go to the Azure Portal, add a new Speech Service, and choose a pricing tier. The free tier gives you 5 hours of audio transcription per month--enough for testing, home use, or perhaps a small business.


Once the speech service resource has been created, go to the Keys tab and copy one of the keys to the clipboard. This key is entered in the $apiKey variable in the PHP script.


Configure FreePBX

Script

Put transcribe.php in /usr/local/bin and make it readable and executable by the asterisk user.

Change the $apiKey variable at the top of the file to the key you copied earlier.

If your Speech Service resource is not in the eastus region (make note of this on the API Keys screen shown above), adjust the $msSpeechUrl variable to reflect the correct region.

FreePBX voicemail config

Go to Voicemail Admin and edit the e-mail body block. Add (TRANSCRIPTION) somewhere in the block. This token will be replaced by the transcription.

On the same screen, change the Mail Command to point to the script, e.g. /usr/local/bin/transcribe.php

NOTE: Voicemail attachments must be in "wav" format.

Example e-mail with transcript