Попробуйте открытую программу для распознавания речи Воск
Распознавать речь можно прямо на устройстве, не понадобится дополнительное соединение с сетью. Также можно пересылать данные на сервер для распознавания с большей точностью. Для доступа к записи звонка в реальном времени, к сожалению, придётся написать свою звонилку. Можно взять SIP клиент вроде Zoiper и звонить через него.
Микрофон нужно держать всегда включённым, иначе как распознавать ключевое слово. Пример потокового распознавания с микрофона с воском можно найти здесь:
собрать по инструкции. Логика с проигрыванием файла реализуется в 3 строчки в диалплане:
[internal]
exten = 1,1,Answer
same = n,Wait(1)
same = n,SpeechCreate
same = n,SpeechBackground(hello)
same = n,GotoIf($["${SPEECH_TEXT(0)}}" = "привет мир"]? true : false)
same => n(true),Playback(phrase)
same => n(false),Hangup()