ika_bot/lib/discord_handler.rb

29 lines
598 B
Ruby
Raw Normal View History

2025-08-23 14:38:42 -04:00
require_relative './ika'
class DiscordHandler < Ika
attr_reader :bot
def initialize(bot:)
super()
@bot = bot
end
def start!
bot.remove_handler @message_handler if @message_handler
@message_handler = bot.message do |message_event|
handle_message Message::Discord.new(responder(message_event.channel), message_event.message)
end
bot.run # you can run this in the background, idk
end
def stop!
bot.remove_handler @message_handler if @message_handler
end
def responder(channel)
lambda { |response| channel.send_message(response) }
end
end