Skip to content

Commit 9025be0

Browse files
committed
Add handlers.
1 parent a8e60b2 commit 9025be0

File tree

1 file changed

+32
-0
lines changed

1 file changed

+32
-0
lines changed

telebot/__init__.py

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -74,6 +74,8 @@ def __init__(self, token, threaded=True, skip_pending=False, num_threads=2):
7474
self.inline_handlers = []
7575
self.chosen_inline_handlers = []
7676
self.callback_query_handlers = []
77+
self.shipping_query_handlers = []
78+
self.pre_checkout_query_handlers = []
7779

7880
self.threaded = threaded
7981
if self.threaded:
@@ -146,6 +148,9 @@ def process_new_updates(self, updates):
146148
new_inline_querys = []
147149
new_chosen_inline_results = []
148150
new_callback_querys = []
151+
new_shipping_query = []
152+
new_pre_checkout_query= []
153+
149154
for update in updates:
150155
if update.update_id > self.last_update_id:
151156
self.last_update_id = update.update_id
@@ -163,6 +168,11 @@ def process_new_updates(self, updates):
163168
new_chosen_inline_results.append(update.chosen_inline_result)
164169
if update.callback_query:
165170
new_callback_querys.append(update.callback_query)
171+
if update.shipping_query:
172+
new_shipping_query.append(update.shipping_query)
173+
if update.pre_checkout_query:
174+
new_pre_checkout_query.append(update.pre_checkout_query)
175+
166176
logger.debug('Received {0} new updates'.format(len(updates)))
167177
if len(new_messages) > 0:
168178
self.process_new_messages(new_messages)
@@ -885,6 +895,28 @@ def decorator(handler):
885895
def add_callback_query_handler(self, handler_dict):
886896
self.callback_query_handlers.append(handler_dict)
887897

898+
def shipping_query_handler(self, func, **kwargs):
899+
def decorator(handler):
900+
handler_dict = self._build_handler_dict(handler, func=func, **kwargs)
901+
self.add_shipping_query_handler(handler_dict)
902+
return handler
903+
904+
return decorator
905+
906+
def add_shipping_query_handler(self, handler_dict):
907+
self.shipping_query_handlers.append(handler_dict)
908+
909+
def pre_checkout_query_handler(self, func, **kwargs):
910+
def decorator(handler):
911+
handler_dict = self._build_handler_dict(handler, func=func, **kwargs)
912+
self.add_pre_checkout_queryhandler(handler_dict)
913+
return handler
914+
915+
return decorator
916+
917+
def add_pre_checkout_queryhandler(self, handler_dict):
918+
self.pre_checkout_query_handlers.append(handler_dict)
919+
888920
def _test_message_handler(self, message_handler, message):
889921
for filter, filter_value in six.iteritems(message_handler['filters']):
890922
if filter_value is None:

0 commit comments

Comments
 (0)