Доопрацювати функціонал веб-сервісу
Дано:
Сервіс на Laravel (адмін панель Orchid), що дозволяє розсилати сповіщення через телеграм/вайбер бот користувачам
Завдання:
Реалізувати на основі існуючої логіки функціонал відправки "редирект посилань" з опцією отримання результату по вебхуку:
1. В адмін панелі сервісу необхідно додати сутність "Редирект посилання" з можливостями налаштування:
- Назва посилання
- Посилання для редиректу (на сторонній сервіс, який по факту виконання умов користувачем на своїй стороні відправить вебхук на наш сервіс з результатом)
- Час життя посилання (по закінченню часу посилання стає недійсним)
- Час життя зворотного відповіді (по закінченню часу відправлене повідомлення позначається як провалене)
2. В адмін панелі сервісу необхідно додати сутність "Результат редиректу" з можливостями налаштування:
- Посилання на редирект
- Статус редиректу (успішно/провалено)
- Дані редиректу (поле для зберігання даних, які прийшли по вебхуку)
3. Розширити поточний функціонал відправки повідомлень логікою відправки посилань (унікальних для кожного користувача) з можливістю отримання результату по вебхуку:
- При відправці повідомлення користувачу на телеграм/вайбер додається кнопка "Перейти за посиланням" (або з текстом, зазначеним при створенні посилання)
- При натисканні на кнопку користувач переходить за редирект посиланням (редирект відбувається на стороні нашого сервісу)
- Факт редиректу зберігається в базі в сутності "Результат редиректу"
- Після переходу за посиланням на сторонньому сервісі виконується умова і відправляється вебхук на наш сервіс з результатом
- Результат зберігається в базі даних в сутності "Результат редиректу"
4. По факту успішного результату редиректу користувачу нараховуються бонуси (логіка нарахування бонусів вже реалізована в сервісі)
Умови:
- Вся нова логіка повинна бути покрита юніт тестами
- Усі зміни вносяться через git
- Усі дії повинні супроводжуватися логами на стороні сервісу