Задача
Разработать Telegram-бота для агрегации и рекомандации контента. Бот позволяет владельцам каналов добавлять свои каналы (указывая название канала и его тематику) и отправлять в бота посты. Пользователи, которые заходят в бота, указывают интересующие их тематики.
Принцип работы
- Владельцы каналов добавляют каналы с указанием тематики.
- В бота добавляются посты из этих каналов.
- Пользователи выбирают темы, которые им интересны.
- Бот рандомно показывает пользователям посты, подходящие под их интересы.
Механика взаимодействия
Под каждым постом в боте расположены кнопки "Нравится" и "Не нравится". Если пользователь ставит "Нравится", алгоритм подбирает следующий пост из сети каналов со схожей тематикой. Так пользователь получает релевантный контент, переходя от поста к посту.
Требования к реализации
- Рандомизация: показ случайных, но тематических постов из разных каналов.
- CI/выбор пользователя: пост показывается только тем пользователям, которые выбрали пересекающуюся тематику.
- База данных: хранение каналов, тематик, пользователей их интересов и историй реакций.