Перед запуском обновите переменные в .env
либо руками, либо скриптом upd_env.sh
. Нужно указать хостовой IP для корректной работы астериска за NAT'ом докера и учетки ARI и редиса
Номер ARI-приложения 1000
Username 200
Password f5af3cd52e205ebb15b8a073d05c2dc9
0. Докер-компоуз:
Написать докер-компоуз файл, содержащий:
- астериск
- редис
- ари-приложение на языке программирования.
1. астериск
- Поднять астериск
- Завести сип-аккаунт.
- Реализовать план набора.
- Из звуковых файлов астериска выбрать 3 файла.
2. Редис:
При запуске контейнера с редисом, скриптом на выбранном ЯП записывать туда значения в виде списка звуковых файлов (3 штуки).
3. ARI-приложение на выбранном ЯП:
- получить из редиса случайное имя файла.
- удалить запись из редиса.
- вернуться в план набора.
4. Логика работы:
- при звонке на номер, описанный в плане набора, провалиться в ARI-приложение.
- вернуться в план набора и проиграть звуковое сообщение.
- имя проигрываемого сообщения получить из переменной канала.
- сброс.
При перезвоне проделать аналогичную операцию из оставшихся файлов.
При отсутствии в редисе данных - сбрасывать звонок через Busy(3).
Ожидаемое поведение:
Клиент (софт-фон) регистрируется на астериске.
Производит звонок на номер из плана набора (dialplan).
Слышит воспроизводимую аудиозапись.
5. Выгрузить в гит компоуз-файл и исходники скриптов.