1
0
mirror of https://github.com/eternnoir/pyTelegramBotAPI.git synced 2023-08-10 21:12:57 +03:00

argument of 'func' parameter in handlers can be async function

This commit is contained in:
abdullaev388 2022-03-01 14:39:00 +05:00
parent 5ca92ff637
commit c84896391e

View File

@ -5,6 +5,7 @@ import logging
import re import re
import time import time
import traceback import traceback
import inspect
from typing import Any, List, Optional, Union from typing import Any, List, Optional, Union
# this imports are used to avoid circular import error # this imports are used to avoid circular import error
@ -593,6 +594,8 @@ class AsyncTeleBot:
elif message_filter == 'chat_types': elif message_filter == 'chat_types':
return message.chat.type in filter_value return message.chat.type in filter_value
elif message_filter == 'func': elif message_filter == 'func':
if inspect.iscoroutinefunction(filter_value):
return await filter_value(message)
return filter_value(message) return filter_value(message)
elif self.custom_filters and message_filter in self.custom_filters: elif self.custom_filters and message_filter in self.custom_filters:
return await self._check_filter(message_filter,filter_value,message) return await self._check_filter(message_filter,filter_value,message)