Handle Poll update

This commit is contained in:
Alexander Tkachev
2020-03-09 17:25:54 +07:00
parent 12547efa08
commit d2f9c51a5a
2 changed files with 50 additions and 5 deletions

View File

@@ -103,6 +103,7 @@ class Update(JsonDeserializable):
callback_query = None
shipping_query = None
pre_checkout_query = None
poll = None
if 'message' in obj:
message = Message.de_json(obj['message'])
if 'edited_message' in obj:
@@ -121,11 +122,13 @@ class Update(JsonDeserializable):
shipping_query = ShippingQuery.de_json(obj['shipping_query'])
if 'pre_checkout_query' in obj:
pre_checkout_query = PreCheckoutQuery.de_json(obj['pre_checkout_query'])
if 'poll' in obj:
poll = Poll.de_json(obj['poll'])
return cls(update_id, message, edited_message, channel_post, edited_channel_post, inline_query,
chosen_inline_result, callback_query, shipping_query, pre_checkout_query)
chosen_inline_result, callback_query, shipping_query, pre_checkout_query, poll)
def __init__(self, update_id, message, edited_message, channel_post, edited_channel_post, inline_query,
chosen_inline_result, callback_query, shipping_query, pre_checkout_query):
chosen_inline_result, callback_query, shipping_query, pre_checkout_query, poll):
self.update_id = update_id
self.message = message
self.edited_message = edited_message
@@ -136,6 +139,7 @@ class Update(JsonDeserializable):
self.callback_query = callback_query
self.shipping_query = shipping_query
self.pre_checkout_query = pre_checkout_query
self.poll = poll
class WebhookInfo(JsonDeserializable):
@@ -2240,12 +2244,22 @@ class Poll(JsonDeserializable):
options = []
for opt in obj['options']:
options.append(PollOption.de_json(opt))
poll.options = options
total_voter_count = obj['total_voter_count']
is_closed = obj['is_closed']
poll.id = poll_id
poll.is_closed = is_closed
is_anonymous = obj['is_anonymous']
poll_type = obj['type']
allows_multiple_answers = obj['allows_multiple_answers']
correct_option_id = None
if 'correct_option_id' in obj:
correct_option_id = obj['correct_option_id']
poll.id = poll_id
poll.options = options
poll.total_voter_count = total_voter_count
poll.is_closed = is_closed
poll.is_anonymous = is_anonymous
poll.type = poll_type
poll.allows_multiple_answers = allows_multiple_answers
poll.correct_option_id = correct_option_id
return poll
def __init__(self, question):