python telebot не работает проверика подписки на каналы

Пишу телеграмм бота на python telebot, написал код который должен проверять подписку на канал у человека, бот является владельцем канала и у него есть все права, пользователи для проверки уже были подписаны на канал. Но почему при нажатии проверить ничего не работает

    markups = types.InlineKeyboardMarkup(row_width=True)
    link_keyboard1 = types.InlineKeyboardButton(text='1 канал?', url='ссылка на канал')
    link_keyboard2 = types.InlineKeyboardButton(text='2 канал?', url='ссылка')
    markups.row(link_keyboard1, link_keyboard2)
    check_keyboard = types.InlineKeyboardButton(text='Проверить✅', callback_data='check')
    markups.row(check_keyboard)
    return markups


@bot.message_handler(commands=['start'])
def start(message):
   chat_id = message.chat.id
   first_name = message.chat.first_name
   bot.send_message(chat_id, f"Привет, {first_name}\nдля пользования ботом подпишитесь на каналы!", reply_markup= start_markup())

def check(call):
    status = ['creator, administrator, member']
    for i in status:
        if i == bot.get_chat_member(chat_id=id, user_id=call.message.chat.id).status:
            check2(call)
            break
    else:
        bot.send_message(call.message.id, 'Подпишитесь на каналы!', reply_markup=start_markup())
def check2(call):
    status = ['creator, administrator, member']
    for i in status:
        if i == bot.get_chat_member(chat_id=id, user_id=call.message.chat.id).status:
            bot.send_message(call.message.id, 'Спасибо, что подписались')
            break
    else:
        bot.send_message(call.message.id, 'Подпишитесь на каналы!', reply_markup=start_markup())

@bot.callback_query_handler(func= lambda call: True)
def callback(call):
    if call.data == 'check':
        #bot.send_message(call.message.id, 'Спасибо, что подписались')
        bot.delete_message(chat_id=call.message.chat.id, message_id=call.message.id)
        check(call)


bot.polling(none_stop=True)```

адреса написаны в программе, так и id просто в посту решил скрыть. 

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

Автор решения: LUX
def check_subscription(user_id):
    try:
        chat_member_1 = bot.get_chat_member(channel_id, user_id)
        #chat_member_2 = bot.get_chat_member(channel_id_2, user_id)
        if chat_member_1.status in ['member', 'administrator', 'creator']:
            return True
    except Exception as e:
        print(f'Ошибка проверки подпиÑки: {e}')
    return False

можно попробовать использовать такую функцию проверки , вроде как работает нормально

→ Ссылка