Merge pull request #1975 from engAmirEng/feature/async-func-filter

bring back the async func message_filter
This commit is contained in:
_run 2023-05-02 20:43:48 +04:00 committed by GitHub
commit ea3c159044
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 3 additions and 1 deletions

View File

@ -16,7 +16,7 @@ import telebot.types
from telebot.asyncio_storage import StateMemoryStorage, StatePickleStorage, StateStorageBase
from telebot.asyncio_handler_backends import BaseMiddleware, CancelUpdate, SkipHandler, State, ContinueHandling
from inspect import signature
from inspect import signature, iscoroutinefunction
from telebot import util, types, asyncio_helper
import asyncio
@ -836,6 +836,8 @@ class AsyncTeleBot:
elif message_filter == 'chat_types':
return message.chat.type in filter_value
elif message_filter == 'func':
if iscoroutinefunction(filter_value):
return await filter_value(message)
return filter_value(message)
elif self.custom_filters and message_filter in self.custom_filters:
return await self._check_filter(message_filter,filter_value,message)