Требуется разработать stateless API сервис по управлению потоками видео вещания. Задача сервиса предоставлять API для управления запуском, остановкой и персонализацией вещания с помощью текстовых или голосовых команд. Микросервис должен поддерживать постоянный канал с пользователем, производить двусторонний обмен данными и контролировать статус пользователя через websocket соединение.
Подзадачи
генерация структуры проекта
выбор и подключение библиотек для доступ к БД Postgresql, Redis, ClickHouse;
валидации входных данных (например, по моделям);
c. журналирования;
d. работа с временем и датой;
3. сборка и запуск в тестовом режиме пустого проекта;
Основные требования к сервису
● Принимать http rest api запросы и websocket подключения
● Содержать базовую файловую структуру: конфигурационных модулей, роутов
api, контроллеров и сервисов
● Структура контроллеров и сервисов должна быть отделена от транспорта, с
помощью которого происходит общение между клиентом и сервером. Т.е. одни и те же контроллеры и сервисы должны быть применимы для работы и с http api и с websocket.
● Иметь настройки для подключений к БД (postgresql, redis, clickhouse), настраиваемые через переменные окружения.