Как сделать систему подписок для телеграм бота на telebot с sqlite3?

у меня есть оплата через телеграм, мне нужно сперва занести в БД id пользователя и время на какое время он купил подписку, потом проверку имеется ли человек в БД чтобы дать доступ к ветке сообщений, использую библиотеку telebot с БД sqlite3 если подробнее пользователь нажимает старт и выбирает Софт, есть на выбор несколько вариантов, бесплатный и платный, пользователь выбирает платный, но его нет в БД, бот предлагает купить ему подписку на 1д, 1н, 1м пользователь переходит и оплачивает, бот записывает пользователя в БД. по истечению времени удаляет Я не знаю как это сделать, пытался изучить но не была того что мне нужно было


Ответы (1 шт):

Автор решения: sayfdor

Что именно необходимо? Код бота? Код запроса к sqlite3? Постановка вопроса, сказать честна, оставляет желать лучшего. Если нужен код проверки наличия пользователя в бд-шке, то вот:

def search_user(user_id: int) -> bool:
    if list(cursor.execute(f'SELECT EXISTS (SELECT * FROM users WHERE user_id = {user_id})').fetchall()[0])[0] == 1:
        return True
    return False

Проверять, купил ли пользователь подписку, можно при получении сообщения от оного. То есть, пользователь написал -> бот посмотрел, есть ли такой в БД. Если же тебе надо периодическая проверка действия подписки, то пиши соответствующий код.

→ Ссылка