Добрый день, пытаюсь запустить бота, с простой задачей - фильтровать изображения в чате и пересылать в соседний чат/канал. Не могу решить ошибки, прошу подсказать, пока только изучаю эту отрасль.
Пробовал запускать как на локальной машине, так и в облаке (Oracle Cloud, VM Ubuntu)
Ошибки:
2022-02-16 08:01:50,481 [telegram.ext] [ERROR] No error handlers are registered, logging exception.
Traceback (most recent call last):
File "/home/ubuntu/.local/lib/python3.8/site-packages/telegram/ext/dispatcher.py", line 555, in process_update
handler.handle_update(update, self, check, context)
File "/home/ubuntu/.local/lib/python3.8/site-packages/telegram/ext/handler.py", line 198, in handle_update
return self.callback(update, context)
File "/home/ubuntu/bot/functionalities/forwarder.py", line 22, in call
if Filters.photo.filter(update.message):
AttributeError: 'CallbackContext' object has no attribute 'message'
Images in buffer: 0
На всякий случай приложу части когда, на которые ссылаются ошибки:
line 555, in process_update
handler.handle_update(update, self, check, context)
check = handler.check_update(update)
if check is not None and check is not False:
if not context and self.use_context:
context = self.context_types.context.from_update(update, self)
context.refresh_data()
handled = True
sync_modes.append(handler.run_async)
-> handler.handle_update(update, self, check, context)
break
line 198, in handle_update
return self.callback(update, context):
if context:
self.collect_additional_context(context, update, dispatcher, check_result)
if run_async:
return dispatcher.run_async(self.callback, update, context, update=update)
-> return self.callback(update, context)
optional_args = self.collect_optional_args(dispatcher, update, check_result)
if run_async:
return dispatcher.run_async(
self.callback, dispatcher.bot, update, update=update, **optional_args
)
return self.callback(dispatcher.bot, update, **optional_args)
line 22, in call
if Filters.photo.filter(update.message):
def call(self, bot, update: telegram.Update):
if Filters.photo.filter(update.message):
self.share_photo(bot, update)
elif Filters.document.filter(update.message):
self.share_document(bot, update)
elif Filters.entity(telegram.MessageEntity.URL).filter(update.message):
self.share_url(bot, update)
Спасибо за внимание