Background()
WaitExten()
Read()
Playback()
Asterisk + ODBC
База данных любая, с которой может работать odbc.
По приходу звонка идёт воспроизведение приветствия через Background. При нажатии кнопки переход на соответствующий экстеншин, оттуда в другой контекст. Там приглашение ввести идентификатор (Baсkground, WaitExten), после ввода определённого количества цифр - переход на экстеншин вида _XXXXXXX, (X - по количеству цифр в идентификаторе). Затем запрос к базе через ODBC_, формирование списка аудиофайлов для ответа, воспроизведение через Playback.