Техническое задание: Интеграция API мониторинга сессий в Laravel
Требуется разработать и интегрировать модуль для отслеживания активности пользователей в веб-приложении на фреймворке Laravel.
Основная цель
Создание механизма, который автоматически отправляет уведомления (коллбэки) на заданные внешние endpoints при двух ключевых событиях в жизненном цикле сессии пользователя.
Ключевые события для отслеживания
- Авторизация (Login): Момент успешного входа пользователя в систему.
- Выход (Logout): Момент завершения сессии пользователя (явный выход или истечение сессии).
Технические требования и архитектура
Структура проекта
- Приложение имеет двухзвенную архитектуру (отдельно фронтенд и бэкенд).
- Бэкенд-часть реализована на PHP с использованием фреймворка Laravel.
Функциональные требования
- Реализовать гибкую систему конфигурации URL для коллбэков (возможно, через файл окружения .env).
- Обеспечить надежную отправку HTTP-запросов (POST/GET по согласованию) на внешние API при наступлении событий.
- В передаваемых данных (теле запроса) должны присутствовать как минимум идентификатор пользователя и тип события (login/logout).
- Реализовать обработку ошибок при отправке коллбэков (логирование, повторные попытки при необходимости).
- Интеграция должна быть выполнена ненавязчиво, без нарушения существующей бизнес-логики авторизации.
Ожидаемый результат
- Рабочий модуль, интегрированный в Laravel-приложение.
- Четкая документация по настройке и использованию.
- Код должен быть чистым, сопровождаемым и соответствовать стандартам Laravel.