Calling an external program after a voicemail is left

I’d like to call SoX after a voicemail is left to delete silence, touch tones, hang-up clicks etc. from the beginning and end of the voicemail recordings.

I know that I can reference the variable VM_MESSAGEFILE to get the path to the recording left by the caller and that I can call SoX using the System command from the dialplan, but where in the dialplan would I do that?

Do I have dialplan control right after a voicemail is left? I read about the externotify option in voicemail.conf to call an external program, but it doesn’t look like it references the VM_MESSAGEFILE variable.

Any thoughts on how I can call SoX after a voicemail is left?


You may try use the h extension of the context where voicemails are recorded, so when the caller hangs up after leaving a voicemail you can do your processing.