class BotAPI
Public Class Methods
parse(method, result)
click to toggle source
# File lib/telegram_bot_builder/bot_api.rb, line 8 def self.parse(method, result) data = JSON.parse(result) case method when 'getMe' object = BotUser.new object.id = data['result']['id'] object.first_name = data['result']['first_name'] object.username = data['result']['username'] return object when 'sendMessage' from = BotUser.new from.id = data['result']['from']['id'] from.first_name = data['result']['from']['first_name'] from.last_name = data['result']['from']['last_name'] chat = BotUser.new chat.id = data['result']['chat']['id'] chat.first_name = data['result']['chat']['first_name'] chat.last_name = data['result']['chat']['last_name'] chat.type = data['result']['chat']['type'] message = BotMessage.new message.message_id = data['result']['message_id'] message.from = from message.chat = chat message.date = data['result']['date'] message.text = data['result']['text'] return message when 'getUpdates' result = [] data['result'].each do |item| from = BotUser.new from.id = item['message']['from']['id'] from.first_name = item['message']['from']['first_name'] from.last_name = item['message']['from']['last_name'] chat = BotUser.new chat.id = item['message']['chat']['id'] chat.first_name = item['message']['chat']['first_name'] chat.last_name = item['message']['chat']['last_name'] chat.type = item['message']['chat']['type'] message = BotMessage.new message.message_id = item['message']['message_id'] message.from = from message.chat = chat message.date = item['message']['date'] message.text = item['message']['text'] object = BotUpdate.new object.update_id = item['update_id'] object.message = message result << object end return result when 'getWebhookInfo' result = { url: data['result']['url'], has_custom_certificate: data['result']['has_custom_certificate'], pending_update_count: data['result']['pending_update_count'], last_error_date: data['result']['last_error_date'], last_error_message: data['result']['last_error_message'], } return result end end