Ошибка с проверкой подписки TeleBot
Код:
@bot.message_handler(commands=['start'])
def start_command(message):
channel_member = bot.get_chat_member(chat_id='-1001974463696', user_id=message.from_user.id)
if channel_member.status == 'member' or channel_member.status == 'creator':
bot.reply_to(message, 'Ты в главном меню')
else:
markup = types.InlineKeyboardMarkup()
channel1 = types.InlineKeyboardButton('Подписаться', url='ссылка')
check_sub = types.InlineKeyboardButton(text='Проверить подписку', callback_data='check_subscribe')
markup.add(channel1, check_sub)
bot.reply_to(message, 'Подпишись!\n'
'После подписки на все каналы, нажмите кнопку проверки подписки.',
reply_markup=markup)
@bot.callback_query_handler(func=lambda call: True)
def callback(call):
if call.data == 'check_subscribe':
bot.delete_message(chat_id=call.message.chat.id, message_id=call.message.id)
start_command(message=call.message)
После нажатия 'Проверить подписку' выдает ошибку, в чем может быть ошибка?
Ошибки:
*2023-07-16 12:19:49,936 (__init__.py:1083 MainThread) ERROR - TeleBot: "Threaded polling exception: A request to the Telegram API was unsuccessful. Error code: 400. Description: Bad Request: replied message not found"
2023-07-16 12:19:49,937 (__init__.py:1085 MainThread) ERROR - TeleBot: "Exception traceback:
Traceback (most recent call last):
File "C:\Users\User\Desktop\Новая папка\Python\Lib\site-packages\telebot\__init__.py", line 1074, in __threaded_polling
self.worker_pool.raise_exceptions()
File "C:\Users\User\Desktop\Новая папка\Python\Lib\site-packages\telebot\util.py", line 147, in raise_exceptions
raise self.exception_info
File "C:\Users\User\Desktop\Новая папка\Python\Lib\site-packages\telebot\util.py", line 90, in run
task(*args, **kwargs)
File "C:\Users\User\Desktop\Новая папка\Python\Lib\site-packages\telebot\__init__.py", line 6770, in _run_middlewares_and_handler
result = handler['function'](message)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "E:\KIRI\Python\bot_rassilka\main.py", line 29, in callback
start_command(message=call.message)
File "E:\KIRI\Python\bot_rassilka\main.py", line 21, in start_command
bot.reply_to(message, 'Подпишись!\n'
File "C:\Users\User\Desktop\Новая папка\Python\Lib\site-packages\telebot\__init__.py", line 4515, in reply_to
return self.send_message(message.chat.id, text, reply_to_message_id=message.message_id, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\User\Desktop\Новая папка\Python\Lib\site-packages\telebot\__init__.py", line 1549, in send_message
apihelper.send_message(
File "C:\Users\User\Desktop\Новая папка\Python\Lib\site-packages\telebot\apihelper.py", line 264, in send_message
return _make_request(token, method_url, params=payload, method='post')
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\User\Desktop\Новая папка\Python\Lib\site-packages\telebot\apihelper.py", line 162, in _make_request
json_result = _check_result(method_name, result)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\User\Desktop\Новая папка\Python\Lib\site-packages\telebot\apihelper.py", line 189, in _check_result
raise ApiTelegramException(method_name, result, result_json)
telebot.apihelper.ApiTelegramException: A request to the Telegram API was unsuccessful. Error code: 400. Description: Bad Request: replied message not found*
Источник: Stack Overflow на русском