Розробка Telegram-бота, який буде відслідковувати терміни закінчення підписок користувачів

Опис проєкту

Розробка Telegram-бота, який буде відслідковувати терміни закінчення підписок користувачів, надсилати сповіщення про наближення закінчення терміну, а також здійснювати перевірку оплати за допомогою криптовалюти. Бот надасть можливість користувачам підтверджувати свої платежі через хеш транзакції.

Функціонал:

1. Додавання користувачів
Реалізувати функцію для ручного додавання нових користувачів у базу даних.
Термін виконання: 8 годин, з урахуванням початкового налаштування бота.
2. Надсилання повідомлень
Розробити механізм для планування та надсилання повідомлень:
Визначити три дні до закінчення підписки (редагується адміністратором бота).
Надіслати повідомлення з інформацією про закінчення підписки, висвітлюючи кнопки для оплати.
Термін виконання: 2 години.
3. Кнопки для оплати
Додати дві кнопки у повідомленні:
"Я хочу оплатити"
"Я вже оплатив"
Термін виконання: 1 година.
4. Обробка оплати
Для кнопки "Я вже оплатив":
Збирати хеш-транзакції та перевіряти їх в блокчейні
Термін продовження підписки визначається автоматично порівнюючи надіслану суму та доступні терміни в телеграм-боті
Для кнопки "Я хочу оплатити":
Надати адреси та мережі для оплати.
5. Перевірка транзакцій
Інтегрувати API для перевірки статусу транзакцій.
Термін виконання: 5 годин, разом з обробкою оплати.
6. Регулярна перевірка статусу підписок
Налаштувати регулярні перевірки, щоб автоматично оновлювати статус підписок.
Термін виконання: 2 години.
7. Реалізувати вибір тарифів:
Створити інтерфейс, що дозволяє користувачам обирати один з трьох тарифних планів. Кожен тариф має мати свої суми та терміни підписки, які необхідно чітко відобразити у виборі.
Термін виконання: 4 години
8. Обробка платежів у TRC20 USDT:
Налаштувати бота таким чином, щоб він приймав тільки TRC20 USDT. Всі інші платіжні методи повинні бути виключені. Важливо забезпечити гнучкість у повідомленнях про оплату для користувачів.
Термін виконання: 3 години
9. Сповіщення про оплату для адміністраторів:
Додати механізм сповіщення для адміністраторів, який буде інформувати їх про успішні оплати. Сповіщення мають містити інформацію про користувача, який здійснив оплату, разом із деталями транзакції.
Термін виконання: 2 години

Функціонал для адміністратора бота

1. Управління користувачами
Перегляд списку користувачів: Адміністратор може переглядати всіх зареєстрованих користувачів, їхні статуси підписок та інші деталі.
Пошук користувача: Швидкий пошук за ID або ім'ям користувача.
Можливість ручного додавання нових користувачів до бота.
2. Управління підписками
Перегляд всіх підписок: Можливість бачити активні, прострочені та заплановані підписки.
Редагування підписок: Зміна деталей підписки (ціна, тривалість, статус тощо).
Скасування підписок: Можливість скасувати будь-яку підписку.
Відображення інформації про всі доступні тарифи, включаючи суму, термін підписки та інші деталі.
3. Сповіщення та повідомлення
Сповіщення про оплату: Автоматичний моніторинг та відправка повідомлень про нові платежі, прострочені оплати тощо.
4. Налаштування повідомлень
Можливість редагувати текст повідомлень, які отримують користувачі при виборі тарифу та оплаті.
Термін виконання: 2 години.

Функціонал для користувача

1. Отримання сповіщень
Сповіщення про завершення підписки: Автоматичні нагадування про підписки, які наближаються до закінчення.
2. Підтвердження оплат
Підтвердження транзакцій: Можливість надсилати підтвердження про оплату через бота.
3. Вибір тарифів:
Меню вибору тарифних планів з описом кожного тарифу: сума підписки, термін дії, переваги.
Кнопка для підтвердження вибору тарифу.
Термін виконання: 6 годин.

Тестування

Перевірка всіх функцій бота:
Надсилання сповіщень.
Підтвердження та перевірка оплат.

Критерії, за якими буде перевірятися проєкт та що має бути готово

Функціональність бота:
Бот має здійснювати трекінг закінчення підписок користувачів.
Бот повинен надсилати за два-три дні сповіщення до закінчення підписки (визначається адміном цього бота).
Бот повинен видаляти користувачів з чату Telegram після закінчення підписки.
Бот повинен мати можливість підтвердити оплату за допомогою перевірки хешу транзакції, доступні мережі: Polygon, BSC, TRC20 (при умові, що буде доступна одна мережа).
При отриманні хеш-транзакції він має перевіряти її наявність у мережі та адресу отримувача.

Список запитань для оцінки проєкту перед виконанням

1. Які можливі ризики були виявлені під час аналізу вимог?
Існує ризик затримок у обробці оплат через необхідність належного тестування системи, що може вплинути на графік проекту. Крім того, створення гаманців для різних мереж може зайняти більше часу через технічні складнощі, що також може призвести до зриву термінів реалізації.
2. Як планується їхнє управління та мінімізація?
Провести попередній аналіз усіх мереж для налаштування гаманців, виявляючи потенційні складнощі. Визначити ресурси, які можуть бути залучені для швидкого вирішення технічних питань.
Загальний термін виконання проєкту ~ 38 годин.
Want to print your doc?
This is not the way.
Try clicking the ⋯ next to your doc name or using a keyboard shortcut (
CtrlP
) instead.