Разработка сервиса универсальных уведомлений
Цель проекта
Создать централизованный сервис (шину уведомлений), который принимает запросы через единый REST API эндпоинт и маршрутизирует сообщения в указанные каналы доставки.
Ключевые требования
API эндпоинт
- Реализовать REST API эндпоинт
/notify (метод POST). - Эндпоинт должен принимать в теле запроса параметры: тип сообщения и целевой канал доставки.
Поддерживаемые каналы интеграции
- Telegram: Интеграция с Telegram-ботом для отправки сообщений в чаты или каналы.
- Email (SMTP): Отправка электронных писем через внешний SMTP-сервер.
- Внешний вебхук: Отправка данных (POST-запрос) на произвольный внешний URL, указанный в запросе.
Функциональность
- Сервис должен анализировать входящий запрос и перенаправлять его в соответствующую интеграцию.
- Необходима обработка ошибок (например, недоступность канала) и возврат понятных статусов ответа API.
- Архитектура должна позволять в будущем добавлять новые каналы уведомлений.
Ожидаемый результат
Готовый, работающий сервис с документацией по использованию API. Код должен быть чистым, модульным и готовым к развертыванию.