The original problem
At work we wanted to know if a message been played to a SIP endpoint was been played correctly. These are spoken word "announcments" rather than any music etc. Initially setting up a Voice Mail box to receive the call and then compare the received audio with the source audio was going to be the approach.
I then had the light bulb moment of this is spoken word so we can potentially check it by doing an audio to text conversion and seeing that we get the expected output. 30 minutes later and an article or two on Stack Overflow and I have 6 lines of Python that will do all the heavy lifting. Not only that but gives the option of about 8 different backend APIs to "actually" do the work. I will explain more about why this is particiuarly interesting for a later use case....
Asterisk Voice Mail
Asterisk Voice Recording
Speach to text conversion
modules.conf make makeselect - requirements
Don't use $EXTEN etc (i am !!!!)
https://github.com/asterisk/asterisk/blob/master/funcs/func_periodic_hook.c
hoocks
https://stackoverflow.com/questions/69430498/after-recording-with-mixmonitor-run-the-agi-script-and-post-the-wav-to-another
MixMonitor(filename.extension,[options,[command]])