Class: Telegram::BotManager::Message

Inherits:
Object
  • Object
show all
Defined in:
lib/telegram/bot_manager/message.rb

Instance Method Summary collapse

Constructor Details

#initialize(bot, text) ⇒ Message



7
8
9
10
11
12
# File 'lib/telegram/bot_manager/message.rb', line 7

def initialize(bot, text)
  @bot = bot
  @text = text

  raise 'Telegram Message is blank' unless text.present?
end

Instance Method Details

#edit(message_id:, chat_id:, **params) ⇒ Object



14
15
16
17
18
19
20
# File 'lib/telegram/bot_manager/message.rb', line 14

def edit(message_id:, chat_id:, **params)
  @bot.public_send "edit_message_text", params.merge({
    text: @text,
    message_id: message_id,
    chat_id: chat_id
  })
end

#edit_inline(inline_message_id:, **params) ⇒ Object



22
23
24
25
26
27
# File 'lib/telegram/bot_manager/message.rb', line 22

def edit_inline(inline_message_id:, **params)
  @bot.public_send "edit_message_text", params.merge({
    text: @text,
    inline_message_id: message_id
  })
end

#reply(to_message_id:, chat_id:, **params) ⇒ Object



29
30
31
32
33
34
35
# File 'lib/telegram/bot_manager/message.rb', line 29

def reply(to_message_id:, chat_id:, **params)
  @bot.public_send "send_message", params.merge({
    text: @text,
    reply_to_message_id: to_message_id,
    chat_id: chat_id
  })
end

#send_to_app_owner(**params) ⇒ Object



44
45
46
47
48
49
50
51
52
53
# File 'lib/telegram/bot_manager/message.rb', line 44

def send_to_app_owner(**params)
  unless BotManager.configuration.telegram_app_owner_id
    raise 'Telegram app owner id not defined. Check bot manager config'
  end

  @bot.send_message params.merge({
    chat_id: BotManager.configuration.telegram_app_owner_id,
    text: "[#{@bot.username}] " + @text
  })
end

#send_to_chat(chat_id, **params) ⇒ Object



37
38
39
40
41
42
# File 'lib/telegram/bot_manager/message.rb', line 37

def send_to_chat(chat_id, **params)
  @bot.send_message params.merge({
    chat_id: chat_id,
    text: @text
  })
end