module Telegram::Utils::KeyboardBuilder

Public Class Methods

inline_keyboard(buttons) click to toggle source
# File lib/telegram/utils/keyboard_builder.rb, line 15
def inline_keyboard buttons
  btnClass = Telegram::Bot::Types::InlineKeyboardButton
  kbClass  = Telegram::Bot::Types::InlineKeyboardMarkup
  build :keyboard, buttons, btnClass, kbClass
end
keyboard(buttons) click to toggle source
# File lib/telegram/utils/keyboard_builder.rb, line 8
def keyboard buttons
  btnClass = Telegram::Bot::Types::KeyboardButton
  kbClass  = Telegram::Bot::Types::ReplyKeyboardMarkup
  build :keyboard, buttons, btnClass, kbClass
end
remove_keyboard() click to toggle source
# File lib/telegram/utils/keyboard_builder.rb, line 22
def remove_keyboard
  Telegram::Bot::Types::ReplyKeyboardRemove.new(remove_keyboard: true)
end

Private Class Methods

build(key, buttons, btnClass, kbClass) click to toggle source
# File lib/telegram/utils/keyboard_builder.rb, line 28
def build key, buttons, btnClass, kbClass
  keyboard = buttons.map do |button|
    btnClass.new button
  end
  kbClass.new({ key => keyboard })
end