Потрібно розробити Telegram-бота для мого бізнесу / моїх послуг.
Мета бота:
щоб люди могли самі писати в бота, я міг отримувати їхні повідомлення, відповідати їм, зберігати контакти в базі, а потім робити розсилки нагадувань і повідомлень про свої послуги тим користувачам, які вже почали діалог із ботом.
Основний функціонал
1. Прийом вхідних повідомлень
Користувач заходить у бота і натискає Start.
Після цього може написати повідомлення.
Усі повідомлення користувача мають зберігатися.
Бот має фіксувати нового користувача в базі.
2. Збереження контактів
Потрібно зберігати:
Telegram user ID
username
ім’я / first name
last name, якщо є
дата першого звернення
дата останньої активності
текст першого звернення
статус підписки на розсилку
статус відписки
теги / нотатки по клієнту
історію листування
3. Передача звернень адміну
Коли користувач пише в бота, я маю отримувати це повідомлення в адмін-чат / адміну в Telegram.
Потрібно, щоб я бачив, хто саме написав.
Бажано, щоб можна було швидко відповісти користувачу через бота.
4. Відповідь користувачам
Потрібна можливість:
відповідати конкретному користувачу через адмін-команди або адмін-режим у боті
бачити, кому саме відправляється відповідь
зберігати вихідні повідомлення в історію
5. Підписка на розсилку
При першому контакті або після Start бот має запропонувати користувачу дати згоду на отримання:
нагадувань
корисних повідомлень
інформації про мої послуги
Потрібні кнопки:
“Так, можна”
“Ні”
“Відписатися”
У базі має зберігатися статус:
subscried
unsubscribed
not confirmed
6. Масова розсилка
Потрібно реалізувати функціонал розсилки повідомлень:
по всіх підписаних користувачах
тільки по окремих тегах / сегментах
тільки тим, хто не відписався
з паузами між повідомленнями, щоб уникати перевищення лімітів
Бажано:
підтримка тексту
підтримка фото + тексту
кнопка в повідомленні типу “Написати” / “Замовити” / “Детальніше”
7. Сегментація
Потрібно мати можливість присвоювати користувачам теги, наприклад:
новий
теплий лід
консультація
цікавився зіною
клієнт
повторний клієнт
І робити розсилки по окремих тегах.
8. Кнопка відписки
У кожній розсилці або в меню бота має бути можливість відписатися.
Після відписки користувач не повинен потрапляти в наступні розсилки.
Адмін-функції
Потрібен зручний спосіб адміністрування.
Можливі варіанти:
або через самого Telegram-бота в адмін-режимі
або через просту веб-адмінку
Мінімально потрібно:
список користувачів
пошук по username / ID / імені
перегляд картки користувача
перегляд історії листування
додавання / видалення тегів
ручна відповідь користувачу
запуск розсилки
статистика по кількості користувачів:
всього
підписані
відписані
Технічні вимоги
Бажано реалізувати на:
Python (aiogram)
або запропонувати свій стек, якщо він кращий для задачі.
База даних:
на старті можна SQLite, якщо цього достатньо
або PostgreSQL, якщо одразу краще робити нормально під масштабування
Бажано:
чиста структура коду
можливість подальшого доопрацювання
інструкція по запуску
допомога з деплоєм на сервер
.env для токенів і налаштувань
логування помилок
Важливі умови
Бот повинен працювати тільки з тими користувачами, які самі почали діалог із ботом.
Потрібно передбачити безпечну логіку розсилок: тільки по підписаних користувачах.
Не потрібні “сірі” або ризикові схеми масових спам-розсилок.
Рішення має бути стабільне і придатне для реального використання.
Результат роботи
На виході хочу отримати:
готового Telegram-бота
підключену базу даних
адмін-функціонал
функцію відповідей користувачам
функцію розсилки по підписаних
інструкцію по користуванню
інструкцію по запуску / переносу на сервер