From f6524b020799cf1305fdd1c70c2aa512206b4b4a Mon Sep 17 00:00:00 2001 From: Leandro Toledo Date: Sat, 16 Apr 2016 13:10:30 -0300 Subject: [PATCH] Adding InlineQueryResultCachedVoice #232 --- telegram/inlinequeryresultcachedvoice.py | 35 ++++++++++++++++++++++-- 1 file changed, 33 insertions(+), 2 deletions(-) diff --git a/telegram/inlinequeryresultcachedvoice.py b/telegram/inlinequeryresultcachedvoice.py index 8058efca5..7afeda867 100644 --- a/telegram/inlinequeryresultcachedvoice.py +++ b/telegram/inlinequeryresultcachedvoice.py @@ -20,8 +20,39 @@ """This module contains the classes that represent Telegram InlineQueryResultCachedVoice""" -from telegram import InlineQueryResult +from telegram import InlineQueryResult, InlineKeyboardMarkup, \ + InputMessageContent class InlineQueryResultCachedVoice(InlineQueryResult): - pass + def __init__(self, + id, + voice_file_id, + title, + description=None, + reply_markup=None, + input_message_content=None): + # Required + super(InlineQueryResultCachedVoice, self).__init__('voice', id) + self.voice_file_id = voice_file_id + self.title = title + + # Optionals + if description: + self.description = description + if reply_markup: + self.reply_markup = reply_markup + if input_message_content: + self.input_message_content = input_message_content + + @staticmethod + def de_json(data): + data = super(InlineQueryResultCachedVoice, + InlineQueryResultCachedVoice).de_json(data) + + data['reply_markup'] = InlineKeyboardMarkup.de_json( + data.get('reply_markup')) + data['input_message_content'] = InputMessageContent.de_json( + data.get('input_message_content')) + + return InlineQueryResultCachedVoice(**data)