module Xtend::TelegramAdapter
Public Instance Methods
run()
click to toggle source
# File lib/xtend/telegram_adapter.rb, line 5 def run client.listen do |message| user = Lita::User.find_by_id(message.from.id) user = Lita::User.create(message.from.id, name: message.from.username) unless user chat = Lita::Room.new(message.chat.id) source = Lita::Source.new(user: user, room: chat) message.text ||= '' msg = Lita::Message.new(robot, message.text, source) robot.receive(msg) end end
send_messages(target, messages)
click to toggle source
# File lib/xtend/telegram_adapter.rb, line 22 def send_messages(target, messages) messages.each do |message| typing(target) if message.is_a?(String) client.api.sendMessage(chat_id: target.room.to_i, text: message) elsif message.is_a?(Hash) client.api.sendMessage(chat_id: target.room.to_i, **message) else next end robot.trigger(:message_sended, message: message, target: target) end end
typing(target)
click to toggle source
# File lib/xtend/telegram_adapter.rb, line 36 def typing(target) client.api.sendChatAction(chat_id: target.room.to_i, action: 'typing') end