@Skromnaga

PyTelegramBotApi не могу найти ошибку?

Проверяю подписку на канал, в терминале появляется сообщение о том подписан человек или нет. А кнопки, при условии, что пользователь подписан не появляются, что не так? ПОМОГИТЕ ПОЖАЛУЙСТА!!!

@bot.message_handler(func=lambda message: True)
def handle_message(message):
user_id = message.from_user.id
print(f"User ID: {user_id}")

def check_subscription(user_id, channel_id):
try:
member = bot.get_chat_member(channel_id, user_id)
if member.status == 'member' or member.status == 'creator' or member.status == 'administrator':
return True
else:
return False
except Exception as e:
print(e)
return False

# Пример использования
user_ids = user_id # Замените на фактический user_id
channel_id = "-1002213149182" # Замените на фактический идентификатор канала

is_subscribed = check_subscription(user_id, channel_id)
if is_subscribed:
podpisan = print("Пользователь подписан на канал")
bot.send_message(message.chat.id, text="Пользователь подписан на канал")
else:
ne_podpisan = print("Пользователь не подписан на канал")

@bot.message_handler(commands=['start'])
def start(message):
if (message.text == "Пользователь подписан на канал"):
#bot.delete_message(chat_id=message.chat.id, message_id=message.message_id - 3)
bot.delete_message(message.chat.id, message.message_id - 2)
markup = types.ReplyKeyboardMarkup(resize_keyboard=True)
btn1 = types.KeyboardButton(text="Партнёрство")
btn2 = types.KeyboardButton(text="Выбери что хочешь посмотреть!")
markup.add(btn1, btn2)
bot.send_message(message.chat.id, text="Смотри на здоровье!", reply_markup=markup)
  • Вопрос задан
  • 27 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы